【问题标题】:"qsub script.sh" yielding "Unknown queue" error“qsub script.sh”产生“未知队列”错误
【发布时间】:2017-05-24 04:25:37
【问题描述】:

假设我有两个 bash 脚本。 (small.sh & super.sh)

small.sh

#!/bin/bash
cd /current_path/
chmod a+x *.sh
bash super.sh

super.sh

#!/bin/bash
qsub test.sh

当我将我的工作提交给 PBS 系统时。

qsub small.sh

无法执行 super.sh。 这意味着它不会

qsub test.sh

我做错了吗?我怎样才能做到这一点?

【问题讨论】:

  • 您遇到的错误是什么??
  • 你试过bash ./super.sh吗?
  • @NikhilFadnis qsub: Unknown queue 这是我得到的。
  • 我似乎无法从计算机节点排队任何作业。我只能从母节点提交。
  • 是的......这就是我发现的......发布答案以供将来参考。

标签: pbs qsub


【解决方案1】:

如果您的脚本没有#PBS 指令,并且您没有使用qsub -q batch ... 之类的东西提交,那么您似乎a)没有定义默认队列,或者b)提交的队列名称确实不存在(或有错字)。运行这个(以管理员身份)查看默认队列:

qmgr -c 'print server default_queue'

运行这个来查看队列设置:

qmgr -c 'print queue <queue_name>'

如果您没有默认队列,则设置一个,或者确保始终使用 qsub -q <queue_name>... 直接提交到队列(当然要确保队列确实存在,您仍然可以使用 print queue提到了。

【讨论】:

  • 在提交作业时查看确切的错误文本也可能会有所帮助。
【解决方案2】:

这是我从here 发现的:

队列未知

确保使用正确的队列。对于 Pleiades 作业,使用常见的队列名称 normal、long、vlong 和 debug。对于 Endeavor 作业,使用队列名称 e_normal、e_long、e_vlong 和 e_debug。 PBS 服务器 pbspl1 识别 Pleiades 和 Endeavour 的队列名称,并将适当地路由它们。但是,pbspl3 服务器只识别 Endeavor 作业的队列名称,如下所示:

pfe20% qsub - q normal@pbspl3 job_script
qsub: unknown queue

【讨论】:

  • 您能再解释一下吗?在我的示例中,我看不到文件名如何影响队列。
  • 如果您有运行qsub 的权限,您正在触发的脚本将会运行。该错误表明问题不在bash 而是qsub
猜你喜欢
  • 1970-01-01
  • 2015-08-27
  • 2018-09-21
  • 1970-01-01
  • 1970-01-01
  • 2016-12-10
  • 1970-01-01
  • 2019-10-07
  • 2014-01-31
相关资源
最近更新 更多