1.系统延时任务
【root@localhost ~】# at 09:27 设定任务执行时间
at> touch file{1..7} 设定任务动作
at> <EOF> << CTRL +D 用ctrl+D发起任务
【root@localhost ~】# at now+1min 设定任务延时一分钟执行
at> rm -fr *
at> <EOF> ctrl+D 发起任务
at -l 查看任务列表(可以看到任务号,执行时间,执行人,已执行的不会列出)
at -c 任务号 查看任务内容
at -r 任务号 取消任务的执行
注:当任务有输出时,输出会以邮件的形式发送给at任务的发起者
例:
【root@localhost ~】# at now+2min 设定任务执行时间延时一分钟
at> date 带有输出的命令date
at> <EOF> ctrl+D发起任务
在2分钟后执行date命令,date命令的输出会以邮件的形式发送给任务发起者root
mail -u 用户名 查看用户邮件
1 查看第一封邮件
q 退出邮件的查看
> /var/spool/mail/root 清空邮件
2.at任务的黑白名单
/etc/at.deny at任务的黑名单(系统中默认存在)
/etc/at.allow at任务的白名单(系统中默认不存在,可以自己创建)
例:先在黑名单中添加用户student,然后切换student用户执行at命令
当白名单存在时,黑名单会失效(超级用户不受黑白名单权限限制)
例:保持黑名单的存在且不改变其内容,创建白名单并输入student
3.系统定时任务(最小单位是分钟)
crontab 时间表示方式(分钟,小时,几号,月份,一周的第几天)
* * * * * 每分钟
*/2 * * * * 每俩分钟
*/2 09-17 * * * 早9-晚17每俩分钟
*/2 */2 * * * 每隔俩小时每俩分钟
*/2 09-17 3,5 1 5 一月三号和五号以及每周周五,早9晚17每隔俩小时每俩分钟
*/2 09-17 * * 5 每周周五早九晚五
系统控制crontab的服务
crond.service 当程序开启时定时任务生效
crontab
crontab -u root -e 指定用户root进行定时任务编辑
crontab -u root -l 列出指定用户root的定时任务
crontab -u root -r 删除指定用户root的定时任务
例:crontab -u root -e 进行定时任务编辑
输入指令后,:wq退出保存
用-l查看定时任务以及-r删除任务
文件方式设定定时任务
cd /etc/cron.d/
vim file
编辑任务即可
定时任务时间 username action
* * * * * root rm -fr /mnt/*
crontab的黑白名单
/etc/cron.deny 系统中默认存在。在此文件中出现的用户不能执行crotab
/etc/cron.allow 系统中默认不存在,当文件出现时,普通用户不能执行crontab 只有在名单中的用户可以,并且/etc/cron.deny会失效
注:这俩个名单都不会影响/etc/cron.d目录中定时任务的发放及执行
例:在/etc/cron.deny中添加student用户,然后切换至student用户执行crotab命令
在不修改cron.deny的前提下,添加并编辑文件/etc/cron.allow,添加用户student并执行crontab命令
4.系统中临时文件的管理方式
cd /usr/lib/tmpfiles.d/
vim westos.conf
d /mnt/westos 777 root root 8s(每8s对/mnt/wetos下的文件进行管理)
watch -n 1 'ls -lR /mnt/' 对/mnt/进行命令监控
touch /mnt/westos/file
systemd-tmpfiles --create /usr/lib/tmpfiles.d/*
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*1.系统延时任务
8s内无法对这些文件进行操作管理