引子:
公司发通知说要停电,OA系统备用电源也不能长时间支撑,所以要提前停掉OA服务器,以前做windows的计划任务关机,现在要用crontab实现Freebsd的定时关机。
首先写了一个shutdown.sh的关机脚本
#! /bin/sh shutdown -p now
在虚拟机上直接运行测试,效果还不错,立马关掉。
马上crontab -e加到里面去
*/2 * * * * sh /shell/shutdown.sh
这里我为了测试所以设置隔两分钟运行一次,对自己写的crontab不放心可以验证一下。
验证crontab的在线工具 http://tool.lu/crontab/ http://www.atool.org/crontab.php
crontab设置完了之后不会立即生效,可以用命令重启一下cron
/etc/rc.d/cron restart
过了一会,机器还是运行,并没有关闭,查看cron的日志
tail -f /var/log/cron
日志里面是有运行记录的,我也查资料试了很多方法,都是失败的,最后我在Freebsd一个群里问得到答案。
#! /bin/sh /sbin/init 0 关闭电源 /sbin/init 6 重新启动
至此,定时关机算是实现了。
体会:
有些事情虽然看起来、听别人说起来都是那么简单,但是自己亲自尝试的时候会发现自己的很多不足,事情没有想那么美好,但也并没有那么坏。
原文地址:http://5361806.blog.51cto.com/5351806/1696790