AIX 的 Crontab @reboot

Posted

技术标签:

【中文标题】AIX 的 Crontab @reboot【英文标题】:Crontab @reboot for AIX 【发布时间】:2021-05-04 00:19:36 【问题描述】:

我希望在我的AIX machine 上的脚本在服务器重新启动时执行。我在我的 crontab 文件中尝试了以下命令,但收到了错误。

@reboot sleep 300 && /usr/bin/sh /opt/script.sh

crontab 文件的一行: @reboot sleep 300 && /usr/bin/sh /opt/script.sh

包含以下错误: 0481-079 到达了一个意想不到的符号。

【问题讨论】:

Crontab 用于周期性事件。对于系统启动,有一个 SystemV 风格的初始化系统。见 /etc/init.d 【参考方案1】:

要在 AIX 服务器重新启动时执行脚本,您有两个选项,这两个选项都涉及 /etc/inittab file。

选项 #1 是将调用作为 inittab 条目插入脚本,使用 mkitab;例如:

mkitab 'myscript:2:once:/opt/script.sh'

这假设您已使 /opt/script.sh 可执行 (chmod +x /opt/script.sh) 和 put a proper sh-bang line in it。完成后,无需在其前面加上 /usr/bin/sh。


选项 #2 是利用现有的运行级别 2 脚本目录,该目录通过 l2:2:wait:/etc/rc.d/rc 2 条目从 /etc/inittab 调用。只需将您的(正确可执行的)/opt/script.sh 文件放在以 S 开头的 /etc/rc.d/rc2.d 中,以表明它应该在运行级别 2 中启动。例如:

cp /opt/script.sh /etc/rc.d/rc2.d/S90-script.sh

在这里,我为其添加了前缀“S90”,它的前导 S 表示启动,而 90 作为对运行级别 2 中的项目进行排序的粗略方式。此解决方案的警告是init 系统会假设你的脚本支持一个参数——startstop。在启动期间,它将使用“start”参数调用您的脚本。如果您现有的脚本默默地忽略任何参数,那么您很好。否则,您可能需要对其进行修改或编写包装脚本。

【讨论】:

以上是关于AIX 的 Crontab @reboot的主要内容,如果未能解决你的问题,请参考以下文章

AIX 7.1 crontab 中的 Kafka Producer 收到 JAVA 错误:Bad Major Version

无法从 crontab 中对文件进行分类 - 猫:0652-050 ​​- unix AIX

AIX 7.1 crontab中的Kafka Producer收到JAVA错误:错误的主要版本

求助,aix中,能否用shell命令,每次执行的时候,自动将crontab作业前天出错的日志保存到另一个文本中

linux新建定时任务

再谈 Unlix (Linux, AIX, HPUX) 上 Java 的 java.lang.OutOfMemoryError: unable to create new native thread(