zsh找不到module命令

welcome to my blog

为什么用module

Environment Modules可以非常方便地管理环境变量, 对于搞深度学习的人来说, 从github下载的项目可能用的是不同版本的tensorflow, 不同版本的tensorflow使用不同版本的CUDA, 问题来了, 怎样方便地切换CUDA版本? 如果机器是自己的, 那么可以随时创建软链接指向特定版本的CUDA, 但是如果多个人用同一个机器呢? 在别人不知情的情况下改动软链接可能会影响别人的实验? 那能不能多个人同时使用不同的CUDA呢? 能, 那就是用Environment Modules

解决方法

今天在服务器上安装了Environment Modules, 但是切换到我自己的账户之后shell找不到module命令, 我用的是zsh, 使用bash是可以找到module命令的, 折腾了半天, 还是官方文档有用, 只需要在~/.zshrc末尾加一句:source /usr/local/Modules/init/zsh
重新登录之后zsh就能找到module命令了

我猜是因为我的登录shell是bash, 所以登录后bash加载了/etc/profile.d中关于module的脚本, module和bash匹配了, 然后bash像往常一样自动地切换成zsh, 此时zsh就找不到module命令, 我感觉把登录shell改成zsh之后就不用在~/.zshrc末尾加source /usr/local/Modules/init/zsh了, module会自动和zsh匹配

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值