Linux中系统延时任务及定时任务

一 系统延时任务

1)设定时间执行任务

at 23:37                ##设定任务执行时间
at> rm -rf /mnt/*      #任务动作
at> <EOT> <<Ctrl+D     #用Ctrl—+D发起任务

2)延时2min发起任务

at now+2min           #延时1分钟
at>rm -rf /mnt/*  
at> <EOT>

3)at的命令

at -l             #查看任务列表
at -c 任务号     #查看任务内容
at -r 任务号      #取消任务执行

测试:

注意:
当任务由输出时,输出会以邮件的类型发送给at任务的发送者
mail -u root
1
q

> /var/spool/mail/root  #清空邮件

二 at任务的黑白名单


/etc/at.deny       #系统中默认存在,在此文件中出现的用户不能执行at    //本次实验配置文件中未指定用户,默认的效果如下


/etc/at.allow      #系统中默认不存在,当文件出现,普通用户不能执行at,只有在名单中的用户可以,并且/etc/at.deny失效。//本次实验中指定student'用户可以登陆效果如下


三 系统定时任务


1) crontab时间表示方式
* * * * *                     #每分钟
*/2 * * * *                   #美两分钟
*/2 09-17 * * * *             #早9晚5每两分钟
*/2 */2 * * *                 #每隔2小时每两分钟
*/2 09-17 3,5 1 5             #3月和五月每周周五及3月1日和五月1日
*/2 09-17 * * 5               #每周周五早9晚5每两分钟

2)系统控制crontab的服务
crond.service                  #当程序开启时定时任务生效

3)crontab
crontab -e -u       #编辑
crontab -l -u        #查看
crontab -r -u        #删除

4,文件方式设定定时任务
vim /etc/cron.d/file
* * * * *    username  action
* * * * *     root    rm -rf /mnt/*

5,crontab的黑白名单
/etc/cron.deny        #系统中默认存在。在此文件中出现的用户不能执行crontab
/etc/cron.allow        #系统中默认不存在,当文件出现。普通用户不能执行crontab
                       #只有在这个名单中用户可以,并且/etc/at.deny失效
                       # 这两个名都不会影响/etc/cron.d目录中定时任务的发起及执行


                       
四 系统中临时文件的管理方式


cd /usr/lib/tmpfiles.d/
vim hello.conf
d     /mnt/hello/   777 root root 2min

systemd-tmpfiles ---create /usr/lib/tmpfiles.d/*
systemd-tmpfiles ---clean /usr/lib/tmpfiles.d/*

猜你喜欢

转载自blog.csdn.net/yangkaiorange/article/details/81328977