现象

执行:

lmp -h

或:

lammps -in in.melt

返回 command not found。这不一定代表 LAMMPS 没安装,也可能只是可执行文件名不同,或者所在目录没有加入 PATH

先找文件

find "$HOME" /opt /usr/local -maxdepth 4 -type f \( -name 'lmp*' -o -name 'lammps*' \) 2>/dev/null

常见名称包括:

  • lmp
  • lmp_mpi
  • lmp_serial
  • lmp_kokkos

如果是包管理器安装,也可以查:

which lmp lmp_mpi lammps 2>/dev/null

再确认 PATH

echo "$PATH" | tr ':' '\n'

如果 LAMMPS 可执行文件在 /opt/lammps/bin/lmp,但这个目录不在 PATH 中,就需要临时或永久加入:

export PATH=/opt/lammps/bin:$PATH

确认:

which lmp
lmp -h | head

登录 shell 和作业脚本可能不同

很多人只在交互终端 .bashrc 里写了 PATH,但 Slurm 作业脚本没有加载对应环境。建议在作业脚本开头显式加载:

source /opt/lammps/env.sh
which lmp
lmp -h | head

不要依赖“我登录进去能运行”来判断批处理作业环境也正确。

验收

命令能被找到只是第一步,还要运行一个最小示例:

mpirun -np 2 lmp -in examples/melt/in.melt

如果这里又出现 libmpi.so、CUDA 或 package 缺失错误,说明已经进入下一层环境问题,需要继续按动态库或编译配置排查。