linux cron源码下载,LINUX计划任务管理_AT与crontab

at命令

一次性计划任务

服务脚本名称:/etc/init.d/atd

设置格式:at  [HH:MM]  [yyyy-mm-dd]

[[email protected]~]# date

2011年 02月 21日 星期一 14:45:05 CST

[[email protected]~]# at 14:55 2011-02-21

at> pgrep -U root | wc -l > /tmp/ps.root

at>

job 1 at 2011-02-21 14:55

[[email protected]~]# cat /tmp/ps.root

63

案例

在当天的21:30时自动关闭当前系统

[email protected]~]# at 21:30

at> shutdown -h now

at>

job 7 at 2011-02-21 21:30

查看未执行任务列表

[[email protected]~]# atq

1       2011-02-21 14:55 a root

2       2011-02-21 21:30 a root

删除第二条任务

[[email protected]~]# atrm 2

[[email protected]~]# atq

1       2011-02-21 14:55 a root

at计划任务 所在目录/var/spool/at

at的控制文件/etc/at.allow和 /etc/at.deny

===================================================================================

crontab命令

按照预先设置的时间周期(分钟、小时、天……)重复执行用户指定的命令操作,属于周期性计划任务

启用周期性任务有一个前提条件,即对应的系统服务crond必须已经运行

全局配置和系统默认配置中的内容一般不需要用户去修改,用户只需设置/var/spool/cron/目录下与本帐号同名的文件即可,接下来介绍如何设置用户自己的计划任务

[[email protected]~]# cat /etc/crontab

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

MAILTO=root

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

管理cron计划任务

编辑计划任务:crontab  -e  [-u  用户名]

查看计划任务:crontab  -l  [-u  用户名]

删除计划任务:crontab  -r  [-u  用户名]

用户只需执行“crontab -e”命令后会自动调用文本编辑器(默认为vi)并打开“/var/spool/cron/用户名”文件,无需手动指定文件位置

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

时间数值的特殊表示方法

*       表示该范围内的任意时间

,    表示间隔的多个不连续时间点

–       表示一个连续的时间范围

/       指定间隔的时间频率

应用示例

0  17        *  *  1-5        周一到周五每天17:00

30  8        *  *  1,3,5          每周一、三、五的8点30分

0  8-18/2        *  *  *          8点到18点之间每隔2小时

0  *        */3  *  *              每隔3天

示例1(root用户)

每天早上7:50自动开启sshd服务,22点50时关闭

每隔5天清空一次FTP服务器公共目录/var/ftp/pub

每周六的7:30时,重新启动httpd服务

每周一、三、五的17:30时,打包备份/etc/httpd目录

[[email protected]]# crontab -e

50 7 * * *   /sbin/service  sshd  start

50 22 * * *   /sbin/service  sshd  stop

0 0 */5 * *   /bin/rm –rf /var/ftp/pub/*

30 7 * * 6   /sbin/service  httpd  restart

30 17 * * 1,3,5   /bin/tar  jcf  httpdconf.tar.bz2  /etc/httpd/

示例2(jerry用户)

每周日晚上23:55时将“/etc/passwd”文件的内容复制到宿主目录中,保存为pwd.txt文件

[[email protected]]# crontab -e -u  jerry

55 23 * * 7   /bin/cp  /etc/passwd  /home/jerry/pwd.txt

示例3:

root用户查看自己的计划任务列表

查看并删除jerry用户设置的计划任务

[[email protected]]# crontab -l -u jerry

55 23 * * 7  /bin/cp /etc/passwd /home/jerry/pwd.txt

[[email protected]]# crontab -r -u jerry

[[email protected]]# crontab -l -u jerry

no crontab for jerry

[[email protected]]#

Crontab安全性

默认情况下,所有用户都可使用cron工具,要限制对cron的访问,可以使用/etc/cron.allow与/etc/cron.deny文件。

1、这两个文件都不存在时,每个用户都可以访问cron工具。

2、若两个文件都存在,只有/etc/cron.allow中的用户可以访问cron工具,忽略/etc/cron.deny文件

3、如果/etc/deny文件不存在,则/etc/allow中的用户不可以访问cron工具。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值