ccancel - 取消作业¶
ccancel 终止队列中正在运行或挂起的作业,或作业内的单个步骤。
您可以通过作业ID取消作业,使用jobid.stepid格式取消单个步骤,或使用过滤条件一次取消多个作业。
命令语法¶
命令行选项¶
作业选择¶
- job_id[.step_id][,job_id[.step_id]...]: 要取消的作业ID或作业步ID(逗号分隔的列表)。
- 作业格式:
<job_id>或<job_id>,<job_id>,<job_id>... - 作业步格式:
<job_id>.<step_id>或<job_id>.<step_id>,<job_id>.<step_id>... - 混合格式:
<job_id>,<job_id>.<step_id>,<job_id>.<step_id>...
过滤选项¶
- -n, --name string: 取消具有指定作业名的作业
- -u, --user string: 取消指定用户提交的作业
- -A, --account string: 取消指定账户下的作业
- -p, --partition string: 取消指定分区中的作业
- -t, --state string: 取消指定状态的作业。有效状态:
PENDING(P)、RUNNING(R)、ALL(不区分大小写) - -w, --nodes strings: 取消在指定节点上运行的作业(逗号分隔的列表)
输出选项¶
- --json: 以 JSON 格式输出
其他选项¶
- -C, --config string: 配置文件路径(默认:
/etc/crane/config.yaml) - -h, --help: 显示帮助信息
- -v, --version: 显示版本号
过滤规则¶
Important
必须提供至少一个条件:作业 ID 或至少一个过滤选项。
使用多个过滤器时,将取消匹配所有指定条件的作业(AND 逻辑)。
使用示例¶
按作业 ID 取消¶
取消单个作业:
运行结果:

取消多个作业:
按作业名取消¶
取消所有名为 "test1" 的作业:
运行结果:

按分区取消¶
取消 GPU 分区中的所有作业:
运行结果:

按节点取消¶
取消在 crane02 上运行的所有作业:

按状态取消¶
取消所有挂起的作业:

取消所有正在运行的作业:
取消所有作业(挂起和运行):
按账户取消¶
取消 PKU 账户下的所有作业:

按用户取消¶
取消用户 ROOT 提交的所有作业:

组合过滤器¶
取消 CPU 分区中所有挂起的作业:
取消用户 alice 在 GPU 分区中的所有作业:
取消特定节点上正在运行的作业:
JSON 输出¶
以 JSON 格式获取取消结果:
使用过滤器和 JSON 输出取消:
示例概览¶

取消作业步骤¶
CraneSched支持使用步骤ID格式jobid.stepid取消作业内的单个步骤。这允许您终止特定步骤,同时保持父作业和其他步骤继续运行。
步骤取消语法¶
取消特定步骤:
取消多个步骤:
取消整个作业(所有步骤):
步骤取消行为¶
取消步骤时:
- 单个步骤取消:取消特定步骤(
jobid.stepid)仅影响该步骤 - 父作业继续运行
- 同一作业中的其他步骤不受影响
-
分配给步骤的资源释放回父作业
-
完全作业取消:取消作业而不指定步骤ID(
jobid)会取消: - 作业内的所有步骤
- 父作业本身
- 所有分配的资源被释放
步骤取消示例¶
仅取消作业100的步骤2:
取消作业100的步骤1和2(步骤3如果存在则继续):
混合取消 - 整个作业100和作业200的步骤3:
取消前查询步骤:
步骤取消权限¶
- 普通用户:只能取消属于自己作业的步骤
- 协调员:可以取消其账户下作业的步骤
- 操作员/管理员:可以取消系统中的任何步骤
取消后的行为¶
作业取消后:
-
进程终止:如果分配的节点上没有该用户的其他作业,作业调度系统将终止这些节点上的所有用户进程
-
撤销 SSH 访问:将撤销用户对分配节点的 SSH 访问权限
-
资源释放:所有分配的资源(CPU、内存、GPU)立即释放,可供其他作业使用
-
作业状态更新:作业状态在作业历史记录中变为
CANCELLED
权限要求¶
- 普通用户:只能取消自己的作业
- 调度员:可以取消其账户内的作业
- 操作员/管理员:可以取消系统中的任何作业
重要说明¶
-
立即生效:作业取消立即生效。默认情况下,运行中的作业会立即终止,没有宽限期
-
多个作业:您可以使用逗号分隔的作业 ID 或过滤条件一次取消多个作业
-
无确认提示:没有确认提示。命令执行后立即取消作业
-
状态过滤:使用
-t针对特定作业状态,以避免意外取消处于非预期状态的作业 -
作业/步骤 ID 格式:ID必须遵循以下格式,不能有空格:
- 作业:
<job_id>或<job_id>,<job_id>,<job_id>... - 步骤:
<job_id>.<step_id>或<job_id>.<step_id>,<job_id>.<step_id>... - 混合:
<job_id>,<job_id>.<step_id>...
错误处理¶
常见错误:
- 无效的作业 ID:如果作业 ID 不存在或您没有取消权限,将返回错误
- 无匹配作业:如果过滤条件不匹配任何作业,返回成功但取消 0 个作业
- 无效状态:状态必须是以下之一:PENDING、RUNNING、ALL(不区分大小写)