我对 LSF 平台有疑问,我无法解决问题。
出于脚本原因,我需要使用 perl 脚本检查带有“bjobs”(和其他 b***)的正在运行/待处理的作业。
由于某种原因它没有工作,我能够查看以下错误消息:
lsb_init: Failed in an LSF library call: Unable to open file lsf.conf
Google 和手册中的一些研究并没有给出很好的结果,我做了一个小测试。
我的帐户 (max) 是 LSF 管理员。 Root 也是 LSF 管理员。
所以我切换到 root,并尝试启动 bjobs,但是使用“sudo –u max”是 max。请查看这些命令:
hn[~]=> whoami
max
hn[~]=> bjobs
No unfinished job found
hn[~]=> su
Password:
[root@hn max]# whoami
root
[root@hn max]# sudo -u max whoami
max
[root@hn max]# bjobs
No unfinished job found
[root@hn max]# sudo -u max bjobs
lsb_init: Failed in an LSF library call: Unable to open file lsf.conf
我该如何纠正这个问题?
默认情况下,LSF 将在/etc 中查找 lsf.conf。如果它不存在,那么它将在环境变量 LSF_ENVDIR 中的目录中查找。
sudo 可能正在重置您的环境。试试 sudo -i
或 put
Defaults !env_reset
在你的 sudoers 文件中。
你也可以这样试试
sudo -u max LSF_ENVDIR=$LSF_ENVDIR LSF_SERVERDIR=$LSF_SERVERDIR bjobs
我是一名优秀的程序员,十分优秀!