1、循环执行的计划任务

linux下面有atd和crond两种计划任务,其中,atd服务使用的at命令只能执行一次,而crond服务使用的crontab定义的命令,是循环作用的,所以crond才符合我们的要求。

crontab支持两种状态:一、直接编写计划任务;二、使用目录的方式,放在目录里面的都会定时执行。

2、可以使用的用户

默认情况下,系统中可以登陆的用户,都可以使用crontab定义计划任务。不过,可以通过下面两个文件限制权限:

/etc/cron.allow:

将可以使用crontab的账号写入其中,若不在这个档案内的使用者则不能使用crontab;

/etc/cron.deny:

将不可以使用crontab的账号写入其中,若未记录到这个档案当中的使用者,就可以使用crontab。

类似TCPWrapper定义的方式。

3、直接使用crontab编辑计划任务:

命令:

crontab [-u username] [-l|-e|-r]

参数:

-u:通过-u帮其它使用者建立/移除crontab;

-e:编辑crontab的内容

-l:查看crontab的内容

-r:移除crontab的所有内容(是全部的内容,如果只是删除某个,用-e编辑即可)

内容格式:

* * * * *命令

前面的五个*号,表示分、时、日、月、周,如:

代表意义分钟小时日期月份周

数字范围0-59 0-23 1-31 1-12 0-7

*号代表任何时间都接受的意思,任意。

*号之间用空格分开,如果是一段范围,用-号连接;如果是隔开几个时间,用,号表示。

另外,命令必须是编写计划任务的用户有权限执行的,并且最后用绝对路径。

例如:

#crontab -e

59 23 1 5 * mail linuxing < /home/test.txt

每在5月1日,23点59分就把/home/test.txt的内容作为邮件发给linuxing用户

*/5 * * * * /opt/test.sh

每5分钟就执行一次/opt/test.sh脚本

0 3,6 * * * /usr/local/bin/test.sh

每在3点和6点整点都执行/usr/local/bin/test.sh命令

0 8-12 * * * /root/backup.sh

8点到12点之间的每小时的0分都执行/root/backup.sh

4、基于目录的方式执行计划任务

对于系统的计划任务,已经在/etc/crontab里面定义,采用的就是基于目录的方式。系统会定时读取该文件,并根据里面的定义执行命令。

可以使用vi直接编写/etc/crontab文件,其中格式如下:

#cat /etc/crontab

SHELL=/bin/bash #使用的shell

PATH=/sbin:/bin:/usr/sbin:/usr/bin #预定义的PATH路径

MAILTO=root #出现问题发Email给该用户

HOME=/ #家目录

# run-parts

01 * * * * root run-parts /etc/cron.hourly #每小时的目录

02 4 * * * root run-parts /etc/cron.daily #每天

22 4 * * 0 root run-parts /etc/cron.weekly #每周日

42 4 1 * * root run-parts /etc/cron.monthly #每个月1号

分时日月周执行者身份命令

可以看到前面的五个参数的定义和直接编辑计划任务是一样的,增加了执行的用户定义和run-parts参数。

run-parts后面跟的是目录名称,例如:/etc/cron.hourly,表示每小时01分就到/etc/cron.hourly目录中执行目录下的所有可执行文件;当然,目录是可以自己定义的。

如果你需要增加系统的计划任务,只需要在对应的目录添加执行文件即可,例如:我需要在每天都执行updatedb的操作,则我只需要把/usr/bin/updatedb的执行命令链接到/etc/cron.daily目录就可以了。

同样的,如果不需要使用目录的方式,也可以使用如下的方式:

02 01 * * * root /root/test.sh

也就是没有了run-parts,后面就直接跟命令的绝对路径

5、注意事项

如果使用crontab编辑计划任务或直接修改/etc/crontab文件后,计划任务没有生效,可能需要重启一下crond服务:service crond restart

当编写/etc/crontab文件的时候,不要漏了指定执行计划任务的用户,这是和直接用crontab -e编辑不同的。

某用户(如root)用crontab -e编辑的计划任务存放在/var/spool/cron/root,这个文件下。但最好不要直接编辑他,因为crond执行的时候,会在/tmp目录中建立需要的临时文件,直接编辑会对此有影响,甚至出错。

cron执行的每一项工作都会被纪录到/var/log/cron这个日志文件中,可以从这个文件查看命令执行的状态。

linux cron crond 区别,linux crond计划任务详解相关推荐

  1. php fping,【Linux 命令】fping ping 包间隔时间详解

    服务器间检查会用到fping的命令,期间遇到了一个问题,需要将ping包间的间隔时间设置为100毫秒,查看fping -h看下,找到了-i和-p两个参数: 看到这两个参数,我当时的表情是这样的: 看不 ...

  2. linux 脚本编写基本命令,Linux Shell命令行及脚本编程实例详解

    <Linux典藏大系:Linux Shell命令行及脚本编程实例详解>共15章,分为两篇.主要内容包括:Linux 及Linux Shell简介.初识Linux Shell.常用Shell ...

  3. linux中流设备_[快速上手Linux设备驱动]之块设备驱动流程详解一

    [快速上手Linux设备驱动]之块设备驱动流程详解一 walfred已经在[快速上手Linux设备驱动]之我看字符设备驱动一 文中详细讲解了linux下字符设备驱动,并紧接着用四篇文章描述了Linux ...

  4. Linux系统下ifconfig和route配置网络详解

    Linux系统下ifconfig和route配置网络详解 ifconfig和route合用于配置网络(ip命令综合二者功能,此处不讲),通常在前者设置好ip地址等信息后,采用route命令配置路由.( ...

  5. Linux系统下SVN服务器的搭建过程详解 UpJ}s7+

    Linux系统下SVN服务器的搭建过程详解 UpJ}s7+   1 环境:  服务器放在redhatAS4.0上,客户端在windows 2000. k_lb"5z   Z]jSq@%1H* ...

  6. Linux系统多网卡绑定各配置模式详解

    Linux系统多网卡绑定各配置模式详解 1. 配置多网卡bond 1.1. mode=0 模式 1.2. mode=1 模式 1.2.1. 关闭NetworkManager服务 1.2.2. 网卡配置 ...

  7. Linux下boost库的编译、安装详解

    1.下载源文件 去官网下载:http://www.boost.org/ 这里下载最新版本 wget https://dl.bintray.com/boostorg/release/1.64.0/sou ...

  8. Linux下的tar归档及解压缩功能详解

    Linux下的tar归档及解压缩功能详解 一.Linux下解压缩工具 二.gzip工具的使用方法 三.其他解压缩工具 一.Linux下解压缩工具 二.gzip工具的使用方法 三.其他解压缩工具 一.L ...

  9. 【Linux】19.Linux环境变量名LD_LIBRARY_PATH 和 ldd命令详解

    Linux环境变量名LD_LIBRARY_PATH 和 ldd命令详解 参考链接: https://www.jianshu.com/p/a62e1d327023 LD_LIBRARY_PATH中的LD ...

  10. 【转载】Linux命令-自动挂载文件/etc/fstab功能详解[转]

    博客园 首页 新随笔 联系 订阅 管理 随笔 - 322  文章 - 0  评论 - 19 Linux命令-自动挂载文件/etc/fstab功能详解[转]     一./etc/fstab文件的作用 ...

最新文章

  1. qprocess start怎么判断是否结束_面试结束后,如何判断自己是否有戏?看有无这8大信号!...
  2. 老师,免费版的IDEA为啥不能使用Tomcat?
  3. ARM Cortex-M学习简介
  4. 2-计算机发展及应用
  5. Spring集成–配置Web服务客户端超时
  6. 33个常见问题!超全Windows排查手册
  7. 【转载】Tomcat内存溢出的原因及调试
  8. 14个开源Ajax框架
  9. 操作系统---IO设备
  10. 仿城通网盘分享下载系统源码下载,强大功能完美商用
  11. JavaScript中浏览器兼容性解决办法
  12. 第一章 数字图像基础知识(图像的空间分辨率和幅度分辨率)
  13. 大数据技术之_13_Azkaban学习_Azkaban(阿兹卡班)介绍 + Azkaban 安装部署 + Azkaban 实战...
  14. 经验:中小微企业网站上云怎样选择适合自己的云虚拟主机?
  15. php如何调用protected,PHP中类作用域protected实例详解
  16. 用IE浏览器打开网址https显示不能访问怎么办
  17. 2021年度科技行业有哪些大事件?“杰出科技奖”公布36家企业领先科技技术
  18. 使用stty修改终端设置 stty 用法!
  19. 强制类型转化(数组名以及数组名取地址)
  20. Best Time to Buy and Sell Stock III

热门文章

  1. 自动化测试工具,UI测试与压力测试
  2. springIOC面试题
  3. 【密码学】密码算法介绍
  4. sql server 查询
  5. Java8 的 Comparator 用法
  6. win7如何看计算机配置,windows7怎样看配置_win7如何查看电脑配置-win7之家
  7. mysql5.5卸载忘记备份数据库,恢复数据库文件.
  8. 南陵中学2021高考成绩查询,南陵中学2020年高考成绩喜报 一本达线人数816人
  9. 手工编写QTP测试脚本
  10. jsplumb分组拖拽