定时任务是永久的
延时任务是临时的
1.系统延时任务(用户级的)
[root@client_ssh mnt]# at 16:13 ##设定任务执行时间
at> rm -fr /mnt/* ##任务动作
at> <EOT> ##用ctrl+D发起任务
job 2 at Mon Jan 21 16:13:00 2019
[root@client_ssh mnt]#
[root@client_ssh mnt]# at now+1min
at> rm -fr /mnt/*
at> <EOT>
job 4 at Mon Jan 21 16:50:00 2019
at -l ##查看任务列表
at -c ##查看任务内容
at -r ##取消任务执行
注意:当任务有输出时,输出会以邮件的型是发送给at任务的发起者
> /var/spool/mail/root ##清空邮件
mail -u root ##查看超级用户邮件
1 ##查看第一封邮件
q ##退出at
2.at任务的黑白名单
vim /etc/at.deny ##系统中默认存在,在此文件中出现的用户不能执行at
vim /etc/at.allow ##系统中默认不存在,当文件出现,普通用户用户不能执行at只有在名单中的用户可以,并且/etc/at.deny失效
白名单只要建立 (黑名单失效) 系统中的普通用户将都不能使用at命令
3.系统定时任务
1)crontab 时间表示方式
* | * | * | * | * |
分 | 时 | 天 | 月 | 周 |
* * * * * ##每分钟
*/2 * * * * ##每两分钟
*/2 09-17 * * * ##早7晚5每两分钟
*/2 */2 * * * ##每隔2小时每两分钟
*/2 09-17 3,5 1 5 ##1月的3号和5号,每周5,朝9晚5,每隔2分钟
*/2 09-17 * * 5 ##每周周五早9晚5,每隔2分钟
/ | 每隔多久 |
, | 几和几 |
- | 从到什么到什么 |
2)系统控制crontab的服务
crond.service ##当程序开启时定时任务生效
systemctl start crond.service ##开启定时服务
3)crontab
crontab -u root -e ##编辑定时任务
crontab -u root -l ##查看root用户下的定时任务列表
crontab -u root -r ##取消定时任务
4)文件方式设定定时任务
system status crond.service ##查看crond服务是否开启
vim /etc/cron.d/file ##写入定时任务
* * * * * | uesrname | action |
时间 | 用户名 | 命令 |
5)crontab
/etc/cron.deny ##系统中默认存在,在此文件中出现的用户不能执行crontab
/etc/cron.allow ##白名单
注意:白名单系统中默认不存在,当文件出现,普通用户不能执行crontab,只有在名单中的用户可以,并且/etc/at.deny失效,这两个名单都不会影响/etc/cron.d/目录中定时任务的发起及执行
系统级的crontab 文件方式
指定用户
crotab限制
4.系统中临时文件的管理方式
cd /usr/lib/tmpfiles.d/
vim westos.conf
写入:
d /mnt/westos 777 root root 8s
systemd-tmpfiles --create /lib/tmpfiles.d/westos.conf
cat westos.conf
systemd-tmpfiles --clean /lib/tmpfiles.d/westos.conf
touch /mnt/westos/file
systemd-tmpfiles --clean /lib/tmpfiles.d/westos.conf
touch /mnt/westos/file1
systemd-tmpfiles --clean /lib/tmpfiles.d/westos.conf