scrontab
部分: Slurm 命令 (1)更新: Slurm 命令
索引
名称
scrontab - 管理 Slurm crontab 文件概要
scrontab [-u 用户] 文件scrontab [-u 用户] [ -e | -l | -r ]
描述
scrontab 用于设置、编辑和删除用户的 Slurm 管理的 crontab。 该文件可以定义多个定期批处理作业,以在预定的时间间隔运行。
行必须是以 '#' 开头的注释、空白、有效的 crontab 条目或自定义变量设置。
以 #SCRON 开头的行允许为单个后续 crontab 条目定义选项。选项在每个 crontab 条目之间始终会被重置。选项包括大多数可用于 sbatch 命令的选项;详细信息请参见 sbatch(1) 手册页。
请注意,作业不能保证在首选时间执行。作业将不会比请求的频率更频繁地运行,但通过将 BeginTime 字段设置为下一个有效迭代来进行管理,然后受到排队延迟的影响。确切的行为将取决于本地站点配置。由于这种实现方法,系列中的下一个作业不会在前一个作业完成之前提交。例如,如果您有一个监控作业计划在繁忙系统上每分钟运行,如果计划在 08:20:00 开始的作业无法在 08:20:30 开始,并且它运行 35 秒,则 08:21:00 的作业将被跳过,下一个作业将安排在 08:22:00。
scrontab 使用与 cron 相同的日期和时间说明符语法。 每行有五个字段,其含义如下:
-
字段 允许值
----- --------------
分钟 0-59
小时 0-23
日期 1-31
月份 1-12 (或名称)
星期 0-7 (0 和 7 是星期天,或使用名称)
字段可以包含一个星号 (*),这意味着在给定时间段内的所有允许值都是有效的。允许范围,其中范围是两个数字之间用连字符连接。第二个数字必须大于第一个。允许列表,数字或范围之间用逗号分隔。可以通过输入斜杠 (/) 后跟步长值来指定步长值,使作业在该字段适当的间隔内运行。
可以像在常规 shell 脚本中那样定义自定义变量。`$` 字符引入变量扩展。简单参数扩展是当前唯一接受的扩展变体(即 ${parameter} 或 ${parameter:-word} 不受支持)。变量扩展仅在 scrontab 作业命令中发生。无法在其他类型的行(其他变量定义、注释或 crontab 条目)中扩展变量。扩展将在提交作业之前发生,但变量定义将保留在 scrontab 脚本中。与 crontab 不同,用户环境变量将被忽略。
选项
该命令的第一种形式用于从某个命名文件或标准输入安装新的 crontab,如果给定伪文件名 ``-''。
- -e
- 编辑 crontab。如果 crontab 尚不存在,将在编辑器中提供一个默认示例(没有任何定义的条目)。
-
- -l
- 列出 crontab。 (直接打印到 stdout。)
-
- -r
- 删除 crontab。任何当前运行的 crontab 定义的作业将继续运行,但将不再重复。所有其他 crontab 定义的作业将被取消。
-
- -u <用户>
- 编辑或查看其他用户的 crontab。操作员和管理员可以列出。仅根用户和 SlurmUser 账户可以进行编辑/删除。
-
SCRONTAB 选项
scrontab 允许您使用快捷方式指定一些常见的时间间隔,以便指定的脚本运行。这些包括:
- @yearly | @annually
- 作业将在每年的 00:00 Jan 01 变得可用。
-
- @monthly
- 作业将在每个月的第一天 00:00 变得可用。
-
- @weekly
- 作业将在每周的 00:00 Sunday 变得可用。
-
- @daily | @midnight
- 作业将在每天的 00:00 变得可用。
-
- @hourly
- 作业将在每小时的第一分钟变得可用。
-
- @elevenses
- 作业将在每天的 11:00 变得可用。 (这是一个非标准扩展。)
-
- @fika
- 作业将在每天的 15:00 变得可用。 (这是一个非标准扩展。)
-
- @teatime
- 作业将在每天的 16:00 变得可用。 (这是一个非标准扩展。)
-
环境变量
- VISUAL
- 如果设置,则用作交互式编辑器。
-
- EDITOR
- 如果设置且 VISUAL 未定义,则用作交互式编辑器。
-
- SLURM_CONF
- Slurm 配置文件的位置。
-
- SLURM_DEBUG_FLAGS
- 指定 scrontab 使用的调试标志。有关完整的标志列表,请参见 slurm.conf(5) 手册页。环境变量优先于 slurm.conf 中的设置。
-
注意
scrontab 仅在 slurm.conf 中启用了 ScronParameters=enable 选项时可用。
scrontab 将在由 TMPDIR 环境变量设置的目录中创建一个临时文件。如果未设置该变量,则使用 /tmp。
使用 scrontab 创建的作业分配一个单一的作业 ID。当取消时,所有未来的作业运行也将被取消。作业定义将在用户的 scrontab 文件中被注释掉。
使用 "scontrol requeue <job_id>" 将跳过下一个 cron 作业的运行,并根据 cron 表达式重新安排到下一个可用时间。
示例
要创建一个在每小时开始时运行的作业,使用“high”分区,“sub1”账户,并且壁钟时间为 1 分钟,您需要将以下内容添加到 scrontab:
-
DIR=/home/user1 #SCRON -p high #SCRON -A sub1 #SCRON -t 1:00 @hourly $DIR/date.printer.job
要让作业在每个星期三的工作日的每隔两个小时、每小时的前五分钟以及再在三十分钟标记时运行,您需要将以下内容添加到 scrontab。
-
1-5,30 8-17/2 * * wed $DIR/example.job
限制
Slurm 控制器的时区将用于评估每个 crontab 的重复间隔。不支持用户特定的时区。版权
版权所有 (C) 2020-2022 SchedMD LLC。该文件是 Slurm 的一部分,Slurm 是一个资源管理程序。 有关详细信息,请参见 <https://slurm.schedmd.com/>。
Slurm 是自由软件;您可以根据自由软件基金会发布的 GNU 通用公共许可证的条款重新分发和/或修改它;许可证的第 2 版或(根据您的选择)任何更高版本。
Slurm 的发布希望它会有用,但不提供任何担保;甚至不提供适销性或特定用途适用性的默示担保。有关更多详细信息,请参见 GNU 通用公共许可证。
另请参阅
sbatch(1), squeue(1), slurm.conf(5)
索引
该文档由 man2html 使用手册页创建。
时间: 2025年7月2日 13:21:56 GMT