Lmod环境变量管理工具安装

介绍

Lmod是一个用于管理环境模块的工具,通常用于大型计算机集群或超级计算机上。它能够帮助用户加载、卸载和切换软件包、库和其他环境设置,使得在不同软件版本之间进行切换变得简单。Lmod支持模块缓存、版本控制和自定义模块目录,可以根据用户需求进行灵活配置。它还提供了丰富的命令和选项,方便用户进行环境管理和查询操作。

安装规划

操作系统:Ubuntu2004 aarch64

LMOD版本:8.7.37

软件安装目录:/opt/apps

安装

wget https://sourceforge.net/projects/lmod/files/lua-5.1.4.9.tar.bz2
tar xf lua-5.1.4.9.tar.bz2
cd lua-5.1.4.9
./configure --prefix=/opt/apps/lua/5.1.4.9
make
make install
cd /opt/apps/lua
ln -s 5.1.4.9 lua
mkdir /usr/local/bin
ln -s /opt/apps/lua/lua/bin/lua /usr/local/bin

wget https://github.com/TACC/Lmod/archive/refs/tags/8.7.37.tar.gz
tar -xf 8.7.37.tar.gz
cd Lmod-8.7.37
sudo apt install tcl-dev
./configure --prefix=/opt/apps
make pre-install
make install
rm -rf Lmod-8.7.37* 8.7.37.tar.gz lua-5.1.4.9  lua-5.1.4.9.tar.bz2

ln -s /opt/apps/lmod/lmod/init/profile        /etc/profile.d/z00_lmod.sh
ln -s /opt/apps/lmod/lmod/init/cshrc          /etc/profile.d/z00_lmod.csh

cat << EOF >> /etc/bash.bashrc
## lmod config for bash
if ! shopt -q login_shell; then
  if [ -d /etc/profile.d ]; then
    for i in /etc/profile.d/*.sh; do
      if [ -r \$i ]; then
        . \$i
        echo \$i
      fi
    done
  fi
fi
EOF


cat << EOF >> /etc/csh.cshrc
## lmod config for csh/tclsh
if ( -d /etc/profile.d ) then
  set nonomatch
  foreach i (/etc/profile.d/*.csh)
    source \$i
  end
  unset nonomatch
endif
EOF

cat << EOF >> /etc/zsh/zshenv
## lmod config for zsh
if [ -d /etc/profile.d ]; then
  setopt no_nomatch
  for i in /etc/profile.d/*.sh; do
    if [ -r \$i ]; then
      . \$i
    fi
  done
  setopt nomatch
fi
EOF

配置

重新登陆后可以使用 module av验证是否配置成功

echo $LMOD_MODULEPATH_INIT
# 默认是这个文件/opt/apps/lmod/lmod/init/.modulespath
sudo mkdir -p /opt/admin/modulefiles
echo '/opt/admin/modulefiles/' >> $LMOD_MODULEPATH_INIT
posted @ 2024-04-19 21:46  codesucks  阅读(239)  评论(0)    收藏  举报