ubuntu16.04设置cron自动重启以及记录日志

有个ubuntu的服务器,经常无缘无故服务挂掉,一旦挂掉就要手动重启非常麻烦,查了很多资料,确定用crontab,但网上N多方法根本无法运行,通过一系列实验,以下重启方法是确定100%可以在16.04上跑的

1.确定你服务器上cron是否已经安装,可以用下面的命令确认

sudo apt-get install cron

2.开通并开启cronie后台服务,这一步很重要,不开通根本无法运行服务

sudo systemctl enable cron.service; sudo systemctl start cron.service

3.建立自己的配置文档,虽然/etc/crontab也可以,但自己配一个方便转移

vi /root/mycrontab

4.编辑mycrontab,我放的代码如下,cron的时间配置自己去查资料,网上很多,具体可以参考这篇文章:https://blog.csdn.net/li741350149/article/details/79369077

我下面那2句是在每周日3:58分存当时的时间到/root/cronlog下面,然后在每周日4:00重启,注意重启用这个/sbin/reboot可用,其他的都无法用,我个人经验

58 3 * * 0 date>>cronlog

0 4 * * 0 /sbin/reboot

因为一周执行一次还是可能会死机,再放一个每2天执行一次的语句,如下:

58 3 */2 * * date>>cronlog

0 4 */2 * * /sbin/reboot

下面是每天执行一次的语句:

58 3 * * * date>>cronlog

0 4 * * * /sbin/reboot

5.载入mycrontab计划到cron服务模块中,并查看状态
crontab /root/mycrontab
crontab -l 运行完这句应该可以看到mycrontab里面的内容,每次修改mycrontab都需要重新载入并检查

service cron start

6.设置OK,你可以把那个时间改成未来2分钟试试效果,看重启是否有效以及日志是否成功

7.如果验证OK,再把时间调整成你想设置的时间,然后打开/etc/rc.local,把下面的代码加到 exit(0)前面

service cron start

这样在重启后,系统会调用crontab,继续等待下一个重启周期,完美解决。

下图是这2个月来自己重启的记录,还挺稳定的,一开始是一周重启一次,后来改成2天重启一次

ubuntu16.04设置cron自动重启以及记录日志_第1张图片

你可能感兴趣的:(Ubuntu)