at now+1min ##延时1分钟
at> touch file{1..10}
at> <EOT>
job 2 at Sun Jan 20 02:07:00 2019
监控/mnt/目录,创建1分钟后在/mnt/目录下建立10个文件的任务
at 02:10 ##设定任务执行时间
at> rm -rf /mnt/ ##任务动作
at> <EOT> ##用ctrl+D发起任务
job 3 at Sun Jan 20 02:10:00 2019
命令 | 用法 |
---|---|
at -l | 查看任务列表 |
at -c 任务号 | 查看任务内容 |
at -r 任务号 | 取消任务执行 |
查看任务列表
查看任务内容
取消任务执行
注意:
当任务有输出时,输出会以邮件的形式发送给at任务的发起者
命令 | 用法 |
---|---|
mail -u root | 查看超级用户邮件 |
1 | 查看第一封邮件 |
q | 退出 |
> /var/spool/mail/root ##清空邮件
黑名单
/etc/at.deny ##系统中默认存在,在此文件中出现的用户不能执行at
添加用户‘student’到黑名单
保存退出
用户‘student’的权限已被限制
白名单
/etc/at.allow ##系统中默认不存在,当文件出现,普通用户不能执行at
##只有在名单中的用户可以,并且/etcc/at.deny失效
在黑名单,白名单之中都有用户‘student’。因为白名单的优先级高于黑名单,所以,用户‘student’的权限未被限制,而白名单中缺席的用户‘xiaoma’就不能随意使用‘at’了。
1.crontab时间表示方式
分 | 时 | 天 | 月 | 周
* | * | * | * | * ##每分钟
*/2| * | * | * | * ##每两分钟
*/2| 09-17| * | * | * ##早9晚五中的每两分钟
*/2| */2 | * | * | * ##每隔2小时中的每两分钟
*/2| 09-17| 3,5 | 1 | 5 ##1月3号和1月5号以及每周五早9到晚5中的每两分钟
*/2| 09-17| * | * | 5 ##每周周五早9到晚5中的每两分钟
2.系统控制crontab的服务
crond.service ##当程序开启时定时任务生效
查看服务‘cron.service’的状态
3.crontab
crontab -e -u ##编辑,指定用户
crontab -l -u ##列表,指定用户
crontab -r -u ##取消定时任务,指定用户
crontab -e -u 编辑,指定用户
首先动态监控命令监控/mnt目录
watch -n 1 ls -l /mnt/*
设置定时任务
编辑任务内容
保存退出
实现效果
crontab -l -u 列表,指定用户
crontab -r -u 取消定时任务,指定用户
4.文件方式设定定时任务
vim /etc/cron.d/file
cat /etc/cron.d/file
* * * * * root rm -rf /mnt/* ##* * * * * usename action
编辑定时任务管理文件
/mnt目录下建立文件并监控
查看任务管理文件内容,确定任务编辑成功
查看效果
5.crontab的黑白名单
/etc/cron.deny ##系统中默认存在,在此文件中存在的用户不能执行crontab
/etc/cron.allow ##系统中默认不存在,在文件中出现,普通用户不能执行crontab
##只有在名单中的用户可以,并且cron.deny失效
##这两个名单都不会影响/etc/cron.d/目录中定时任务的发起及执行
黑名单
白名单
注意: 这两个名单都不会影响/etc/cron.d/目录中定时任务的发起及执行
系统的很多服务在运行时,会产生很多的临时文件,而对这些临时文件的清理的功能的配置文件在/usr/lib/tmpfiles.d/目录中。
如:系统临时文件夹/tmp/
vim /usr/lib/tmpfiles.d/tmp.conf
说明:/tmp目录,当临时文件的滞留时间大于10天时会被清理。
我们建立/mnt/tmp目录,滞留时间大于8s文件会被清理。
cd /usr/lib/tmpfiles.d/ ##切换到指定目录
vim xiaoma.conf
d /mnt/tmp 777 root root 8s ##写入xiaoma.conf文件的内容
systemd-tmpfiles --create /usr/lib/tmpfiles.d/* ##创建临时文件存目录
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/* ##清除滞留时间过长的临时文件
说明: 在/mnt/tmp目录下有两个文件file和file2,其中file文件的滞留时间大于8s,而file2文件的的滞留时间小于8s,执行systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*。清除临时文件后,file文件被删除,保留file2文件。