当我尝试通过 PBS 提交作业时,我收到错误 qsub: Bad UID for job performing

当我尝试通过 PBS 提交作业时,我收到错误 qsub: Bad UID for job performing

操作系统版本:CentOS 版本 4.6(最终版)内核 \r 位于 \m 2.6.9-100.ELsmp 上

当我尝试运行一项作业时,它给出了如下错误。

qsub: Bad UID for job execution

我创建了一个新的用户帐户,并且出现了同样的错误,但同一台机器上的其他用户可以毫无问题地运行作业。

我该如何修复此问题?

答案1

说明在这里:http://www.bo.infn.it/alice/introgrd/pbsabout/node18.html建议您以错误的用户身份运行它。

Invalid user in #PBS -u new-user

$ qsub sube.cmd
qsub: Bad UID for job execution

用户列表中定义的用户名未定义或与作业提交者的用户名不同,或者执行节点上的用户 UID 和 GID 与提交节点上的不同。在这种情况下,首先检查 #PBS -u 指令是否指定了有效用户,然后检查用户 ID 是否相同:

$ id whoamiuid=501(myusrname) gid=501(myusrname) groups=501(myusrname) $ grep -e "PBS -u" cpbs.cmd

PBS -u alice001 $ id alice001 uid=10417(alice001) gid=1395(alice) groups=1395(alice)

并根据需要更改#PBS -u。

答案2

添加主机/etc/hosts.equiv解决了我的问题。
但我已经将这些行添加到了qmgr

set server operators += [email protected]
set server acl_users += username
set server managers += [email protected]
set server acl_hosts += servername.local
set server operators += [email protected]

然后我做了一个/etc/init.d/pbs_server restart

您可以重新启动PBS_服务器即使您已经在运行。
您不必将服务器添加到/etc/hosts.equiv如果你在运行PBS_服务器

答案3

我知道这个问题有点老了,但我最近遇到了这个问题并执行了以下步骤:

  • 确保相关用户的 UID 和 GID 在集群内匹配
  • qmgr -c "set server flatuid=true"
  • qmgr -c "set server acl_roots+=username@*"
  • qmgr -c "set server operators+=username@*"

这里 * 是所有主机的通配符。效果很好!可能不是超级安全,但绝对有效!

答案4

两个程序:

  1. 在 /etc/passwd 文件末尾添加“+::::::”

  2. 确保用户提交作业的节点在文件 /etc/hosts.equiv 中正确定义所有其他节点

参考:在 Torque 管理指南 pdf 中搜索作业执行的 Bad UID。

相关内容