Linux system 定时及延时任务

                                   系统中的定时与延时



1.at

基本形式

at    time

>ls   /mnt/

>ctrl  +  D

在设置时间执行相应任务

Linux system 定时及延时任务


at   -l                           #列出延迟任务id

Linux system 定时及延时任务

       -r     任务id         #删除此id的任务

Linux system 定时及延时任务

       -m                       #让无输出的命令产生邮件

Linux system 定时及延时任务

       -M                        #让有输出的命令不产生邮件

       -c     任务id         #查看此id延迟任务的执行动作

Linux system 定时及延时任务

       -f      文件            #用文件内记录的命令作为延迟任务的执行命令


##at命令的使用控制##

默认系统中全部用户都有执行at命令的权力

1)用户黑名单

默认情况下系统中是存在用户黑名单的

/etc/at.deny                 #用户黑名单,此名单默认为空,并且在白名单不存在时生效

用户黑名单中添加student用户,导致该用户无法执行at命令

Linux system 定时及延时任务

Linux system 定时及延时任务

2)用户白名单

默认情况下系统中不存在at的白名单,但是当白名单出现,系统除名单中的用户及root用户,其他用户均不能执行at命令

touch /etc/at.allow       #建立用户白名单,当白名单出现,黑名单失效

白名单中添加westos用户,该用户可执行at命令

Linux system 定时及延时任务

Linux system 定时及延时任务

而student不在白名单中,所以无法执行at

Linux system 定时及延时任务

3.cron


1)cron这个程序是由crond.service服务提供

2)写入出程序的时间和事件是永久保存的

##cron设定方式##

crontab -e -u  用户名称(可以不写)

分钟       小时    天      月       周      事件 

58             06      *        *         *         touch /mnt/file               #每天6:58分在/mnt/中建立file文件

Linux system 定时及延时任务

Linux system 定时及延时任务

3)黑名单

/etc/cron.deny           #用户黑名单,此名单默认为空,并且在白名单不存在时生效

4)白名单

/etc/cron.allow           #当此名单出现,除root用户及名单中的用户其他用户不能执行cron命令

touch /etc/cron.allow               #建立白名单

默认情况下的student用户可执行cron

Linux system 定时及延时任务

白名单中添加westos用户,该用户可执行cron

Linux system 定时及延时任务

Linux system 定时及延时任务

而白名单中无student用户,所以无法执行cron

Linux system 定时及延时任务

##文件方式定义crontab##

vim /var/spool/cron/用户名称         #以某个用户身份执行cron

<分>        <时>        <天>       <月>        <周>         < 动作>

vim /etc/cron.d/文件                #设定多个用户身份执行cron

<分>        <时>        <天>       <月>        <周>         < 动作>

Linux system 定时及延时任务

Linux system 定时及延时任务

vim /etc/cron.d/cron.sh      #脚本编写执行cron

Linux system 定时及延时任务

Linux system 定时及延时任务


4.临时文件的限时删除

vim /usr/lib/tmpfiles.d/名称.conf                 #临时文件的配置文件

Linux system 定时及延时任务

文件中表示若建立一个临时文件,该文件在20s内是可删除的,超时后无法删除

创建临时文件并测试在设定时间内和设定时间外的区别

Linux system 定时及延时任务