crontab是什么
crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。
使用crontab每天重启服务器
以Debian9为例,如果陆子方需要在每天凌晨5点重启一次服务器,依次输入以下内容:
crontab -e
00 05 * * * /sbin/reboot
service cron restart
其中,00代表分针,05代表时针,后面的/sbin/reboot代表执行的命令
测试重启成功
crond服务打开错误
子方提示大家,修改crontab文件后,一定要重启服务/系统,否则系统不会自动加载。
在Debian9上运行service crond restart
命令时,子方收到了以下错误提示。
Failed to start crond.service: Unit crond.service not found.
这是因为crondtab的服务名称不是crond
,而是cron
。
所以,重启命令应该使用service cron restart
,当子方运行这一句命令之后,系统就没有报错,crontab任务也能正常使用了。如果不对的话,则需要查询一下/etc/init.d
文件夹里的内容。