2017-10-15 76 views
0

我集群试图启动任务通过扭矩PBS与命令为什么Torque qsub不会创建输出文件?

qsub -o a.txt a.sh 

文件a.sh包含一个字符串:

hostname 

命令的qsub后,我做qstat命令的,这给接下来的输出:

Job ID     Name    User   Time Use S Queue 
------------------------- ---------------- --------------- -------- - ----- 
302937.voms    a.sh    user   00:00:00 E long 

5秒后命令qstat返回空输出(无队列中的作业)。 命令

qsub --version 

给输出:版本:2.5.13

命令

which qsub 

输出:在/ usr/bin中/的qsub

的问题是,该文件a.txt中(来自命令qsub -o a.txt a.sh)未被创建!在终端只返回作业ID,没有任何错误。命令

qsub a.sh 

具有相同的行为。我如何解决它? qsub日志文件的错误在哪里?

如果我使用命令

qsub -l nodes=node36:ppn=1 -o a.txt a.sh 

然后输出文件,我可以找到文件夹

/var/spool/pbs/undelivered 

在node36(上SSH登录后)。 输出文件包含字符串“node36”,错误文件为空。 为什么我的文件“无法传送”?

回答

1

输出日志和错误日志文件保存在假脱机目录中的执行节点上,并在作业完成后复制回头节点。假脱机目录的位置可能会有所不同。但是您应该从已分配作业的节点列表中的第一个节点上查找 下的 /var/torque/spool

有多种原因可能导致转矩输出文件失败。

  1. 用户提交作业可能不存在于节点上,或者它们的主目录可能不可访问,或者集群节点之间存在用户ID不匹配。
  2. Torque正在使用ssh将文件复制到头节点,但跨群集的用户对SSH进行的无密码公钥验证并未在所有节点上一致地设置。
  3. 节点在作业执行期间失败。

此列表并不完整。 Stack Overflow已经在这里找到了一些处理这种故障的问题。尝试检查以上任何情况是否适用于您的案例。

+0

嗨!谢谢!我编辑我的问题 - 保存在节点上/ var/spool/pbs/undelivered文件夹中的文件。由于ssh键的问题?我如何解决它? – r1d1

+1

@ r1d1如果你有一个集群管理员要与之交谈,你应该确实这样做。所以我认为这不是选项。如果问题归因于ssh密钥,[以下链接](http://www.drugdesign.gr/blog/how-to-setup-passwordless-ssh-access-between-nodes-in-a-cluster)有一个配方,应该让你在那里。 –

相关问题