系统延时及定时任务
1 系统延时任务
1.1 延时任务的命令at
命令 | 功能 |
---|---|
at time | 设定执行任务的时间 |
at now+1min | 任务延迟1分钟执行 |
at -l | 查看任务列表 |
at -c 任务号 | 查看任务内容 |
at -r 任务号 | 撤销任务 |
ctrl+d | 发起任务 |
1.2 at任务的黑白名单
1.2.1 at任务的黑名单
/etc/at.deny
:在此文件中的用户不能执行at
1.2.2 at任务的白名单
/etc/at.allow
: 该文件系统中默认不存在,需要新建,不在此文件中的用户不能执行at,且黑名单文件失效
注意:
at任务的黑白名单对root用户无影响
2 linux中的邮件管理
当有任务输出时,输出会以邮件的方式发送给at任务的发起者
2.1 下载postfix和mailx
postfix:负责邮件传输的邮件传送代理(MTA,Mail Transport Agent)
mailx:为负责查看、编写邮件和向MTA发送邮件的MUA(Mail User Agent)
2.2 邮件的查看
查看超级用户邮件:mail -u root
数字:查看指定的邮件
q:退出邮件查看模式
清空超级用户的邮件: > /var/spool/mail/root
3 系统定时任务
3.1 crontab 时间表示方式
任务的保存文件:/etc/spool/cron/username
格式:分钟(0-59) 小时(0-23) 天(1-31) 月(1-12) 星期几(0-7,0和7都表示周日)
格式 | 命令 |
---|---|
* * * * * | 每分钟 |
*/2 * * * * | 每两分钟 |
*/2 09-11 | 早9-11点每两分钟 |
*/2 */2 * * * | 每隔两小时两分钟 |
*/2 09-11 3,5 1 5 | 1月的3,5号和周五的9-11点每隔两分钟 |
*/2 09-11 * * 5 | 每周周五早9-11点 |
3.2 系统控制crontab的服务
cron.service 当程序开启时定时任务生效
命令 | 功能 |
---|---|
cron -e -u | 指定用户创建定时任务 |
cron -l -u | 指定用户查看定时任务 |
cron -r -u | 取消指定用户的定时任务 |
3.4 系统级别的cron
文件方式设定定时任务
/etc/cron.d/file
3.5 crontab黑白名单
3.5.1 crontab黑名单
/etc/cron.deny
系统中默认存在,再此文件中的用户不能执行crontab
3.5.2 crontab白名单
/etc/cron.allow
系统中默认不存在,只有在此文件中的用户可以执行crontab,并且cron.deny文件失效
这两个文件都不会影响/etc/cron.d/目录中任务的发起和执行
4 系统中临时文件的管理方式
设定定时任务对系统中的临时文件进行管理,清除系统中超过有效期的临时文件,释放系统的资源空间
/usr/lib/temfiles.d/
目录中的文件以.conf
结尾,记录了对临时文件的管理规范
systemd-tmpfiles在linux中创建、删除、管理临时文件
编写一个临时目录的规范文件,并扫描该规范文件创建出目录
systemd-tmpfiles --create /usr/lib/tmpfiles.d/*
在目录dir中创建临时文件进行测试
使用该指令对临时目录的规范文件进行扫描,清除过期的临时文件
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*