Linux定时任务

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux定时任务相关的知识,希望对你有一定的参考价值。

     Linux中用来定期执行命令或程序任务的一种服务或软件,目的是为了满足周期性执行任务的需求。

crond服务是运行的程序,crontab命令用来设置定时规则的命令

crond服务是企业生产工作中常用的重要服务;上千台服务器可以使用分布式定时任务

所有用户crontab配置文件默认都存放在/var/spool/cron此目录,文件名以用户名命名。


=======crontab命令操作语法=======

crontab [option] [-u user]

参数:     -r 删除crontab文件内容

-e 编辑crontab文件内容

-l 查看crontab文件内容


=======crontab语法格式中时间段的含义表=======

技术分享


=======crontab语法格式中特殊符号的含义表=======


技术分享


=======注意事项=======

1、为定时任务规则加必要的注释

2、命令或程序最好写到脚本里执行

3、执行的脚本要使用绝对路径

4、执行shell脚本任务时前加/bin/sh

5、定时任务结尾加 >/dev/null 2>&1



=======>/dev/null 2>&1的作用=======

如果定时任务规范结尾不加 >/dev/null 2>&1, 会有很多垃圾小文件存放于邮件临时队列目录,很容易导致硬盘inode空间被占满,从而系统服务不正常。CentOS 5中/var/spool/clientmqueue为邮件临时队列目录;centos 6系统默认装的是postfix服务,目录为/var/spool/postfix/maildrop。



=======定时任务实例=======

1、每隔2个小时将/etc/services文件打包备份到/server/backup下。

[[email protected] scripts]# cat >>services.sh<<EOF

> cd /etc/

> tar -zcf /server/backup/services-$(date +%F-%H).tar.gz services

> EOF

[[email protected] scripts]#crontab –e

#services backup each 2 Hour

00 */2 * * * /scripts/services.sh >/del/null 2>&1


======每5分钟执行一次服务器时间同步=======

[[email protected] scripts]# vi ntp.sh 

#!/bin/sh

/usr/sbin/ntpdate ntp1.aliyun.com

[[email protected] scripts]#crontab –e

#time sync by xhua 20160529

*/5 * * * * /scripts/ntp.sh >/dev/null 2>&1


以上是关于Linux定时任务的主要内容,如果未能解决你的问题,请参考以下文章

linux设置定时任务

Linux设置定时任务

linux 系统定时任务 服务 详解

linux 系统定时任务 服务 详解

linux 下cron定时任务为啥没执行

linux如何创建PHP定时任务