当前位置:   首页安装配置

Linux CentOS使用crontab设置定时重启的方法

发布日期:2021-11-22 14:42 | 文章来源:源码之家

本篇介绍 crontab 设置定时任务,并且把 crontab 加入到开机自启动中。

1、配置一个每天自动重启的功能:

如果支持crontab 可直接 crontab -l 查看目前已有的定时任务

如果当前的linux不支持crontab 则需要进行配置:

#安装Crontab 
yum install vixie-cron crontabs
#设置开机启动Crontab 
chkconfig crond on
#启动Crontab 
service crond start

先列一下现有的Crontab看看:

crontab -l

提示为 no crontab for root

啥也没有,那就添加一条吧:

编辑命令:

crontab –e

按 i 进入编辑模式,输入

30 15 * * * root /sbin/reboot

表示 每天下午15:30分重启设备。按ESC 进入命令模式,输入:wq 保存退出。

最后重启crontab,使重启功能生效

service crond restart

完事 收工!

补充:Crontab基本格式:
*  *  *  *  *  command
分 时 日 月  周  命令
第1列表示分钟1~59 每分钟用或者 /1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

linux使用crontab命令定时重启主机

主机不重启的情况下定时自动重启apache及mysql服务,其实也大同小异。

具体步骤如下:

一、每天的12点及16点重启apache及mysql服务

[root@www bin]# cd /opt/
[root@www opt]# vim reboot.txt
在reboot.txt.txt文件中输入下面的内容后保存
0 12 * * * service httpd restart
0 12 * * * service mysqld restart
0 16 * * * service httpd restart
0 16 * * * service mysqld restart

二、把新建的文件加入到cron服务中

[root@www opt]# crontab reboot.txt
[root@www opt]# crontab -l
0 12 * * * service httpd restart
0 12 * * * service mysqld restart
0 16 * * * service httpd restart
0 16 * * * service mysqld restart

三、重启cron服务

[root@www opt]# /sbin/service crond restart

补充说明:

cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:

/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置

时程表的基本格式 :
*  *  *  *  *  program
分  时  日  月  周  命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
当第1列 为 * 时表示每分钟都要执行 program,第2列为 * 时表示每小时都要执行程式,其余类推
当第1列为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,第2列为 a-b 时表示从第 a 到第 b 小时都要执行,其余类推
当第1列为 */n 时表示每 n 分钟个时间间隔执行一次,第2列 为 */n 表示每 n 小时个时间间隔执行一次,其余类推
当第1列为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,第2列 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其余类推

crontab文件的一些例子:

30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启lighttpd 。
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启lighttpd 。
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启lighttpd 。
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启lighttpd 。
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启lighttpd 。
* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小时重启lighttpd
* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11点到早上7点之间,每隔一小时重启lighttpd
0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4号与每周一到周三的11点重启lighttpd
0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一号的4点重启lighttpd

如果需要重新启动主机,加一行 0 12 * * * root init 6

做个记号,毕竟linux vi 编辑器下经常会用到保存退出与不保存退出这两个操作.

linux vi 保存退出 操作:esc键,输入 :wq
linux vi 不保存退出 操作:esc键,键入 :q!

在linux下使用VIM进行编程是一件很自然的事情
刚开始时我也对VI超多的指令和完全的放弃鼠标感到不适!
但经过了初期的适应性阶段,我终于放发现,原来放弃了鼠标却也提高了效率!
废话少说,进入正题:

``(TAB上边的点):回到光标跳转前的位置。
dd:删除一行。
5dd:删除光标处以下的五行。
按V键进入可视模式,选择要拷贝的内容,按yy拷贝选中的内容,在需要的地方按p拷贝内容到新光标处或新文件中。
i:进入插入模式。
v:进入可视模式。
Esc:回到基本模式
h,j,k,l:上下左右移动光标
vsp:左右分割窗口。
sp:上下分割窗口。
ctrl+w:在窗口中选择。
:q!:不保存退出。
x:保存退出。
w:只保存不退出。
x:删除一个字符。
u:撤消
CTRL+O:回跳。
CTRL+R:撤消刚才的撤消。
:help:帮助。
zz:退出帮助窗口。
3w :向前移动三个单词。
3b:向后移动三个单词。
CTRL+[:跳到光标单词处。
CTRL+T:跳回。
9k:上移九行。
:e 打开新文件(在多窗口操作中很有用)。
yaw:拷贝一个单词。
CTRL+B:把光标移到当前行的左边首部。
CTRL+E:把光标移到当前行的右边首部。
vim -r doc.txt:恢复文件到修改前。
:/查找单词
H:跳到第一行。
M:跳到中间。
L:跳到最后一行。
CTRL+d,u,f,b:下移半屏,上移半屏,下移一屏,上移一屏。
gg:到文件开始处
G:到文件尾部。
--:找到文件上次修改点。
CTRL+p,n:向上查询一个单词,向下查询一个单词。
zo:打开折叠。l键也可以。
zc:关闭折叠。
zr:全部打开折叠。
zm:全部关闭折叠。
zf:创建折叠。
zR:打开所有折叠(包括嵌套)
zM:关闭所有折叠(包括嵌套)
:!ls,查看目录表。
:`o,找到最后修改的文件。
wq,保存退出。
vim txt1 txt2 txt3 txt4,同时打开多个文件,
以下是同时打开多个文件时(建议用多窗口)
n,下一个文件,
n3,往下第三个文件。
first,第一个文件。
last,最后一个文件 。
:/s#kkk#ccc#g,把文件中的kkk替换为ccc

总结

以上所述是小编给大家介绍的Linux CentOS使用crontab设置定时重启的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对本站网站的支持

联系我们
关于使用场景和技术架构的更多咨询,请联系我们的销售和技术支持团队。
Yingsoo Host

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部