linux---at 延时 crontab 定时操作

1.at延时

监控watch -n 1 ls /mnt/ -l
at now+5min        ##五分钟后执行任务
at 时间  
  at>touch /mnt/file{1..10}    ##需要执行的命令
  at> 按ctrl+d
at -l                    #查看任务内容的编号
at -c 任务编号     #查看任务内容

at -r 任务编号     #删除任务内容

实验步骤:

[root@localhost ~]# at now+1min      ##一分钟后
at> touch /mnt/file{1..5}                     ##建立文件
at> <EOT>                                           ##ctrl+d 执行命令
job 1 at Tue Apr 24 04:25:00 2018     ##一分钟后是04:25:00运行
[root@localhost ~]# at -l                    
[root@localhost ~]# at 04:27              ##在04:27时刻
at> rm -fr /mnt/file{1..5}                     ##删除文件
at> <EOT>                                            ##ctrl+d 执行命令
job 2 at Tue Apr 24 04:27:00 2018
[root@localhost ~]# at -l                      ##查看任务内容的编号
2    Tue Apr 24 04:27:00 2018 a root    ##任务编号为2
[root@localhost ~]# at -c 2                    ##查看任务编号的内容
#!/bin/sh
# atrun uid=0 gid=0
# mail root 0


vim /etc/at.deny   ##at下的黑名单
vim /etc/at.allow  ##白名单


分析:第一次我将linux用户写进黑名单,登录linux用户执行at命令时显示没有权限

     第二次我没有删除黑名单里的linux用户依然将linux用户写进白名单,登录linux用户用at命令时就有权限执行

     然而没有被我写进黑名单的westos用户也不能执行at命令

总结:白名单出现黑名单失效,除了root和白名单的人其余人都不能用at延迟


2.crontab 定时

方法一:
crontab -u root -e             ##编写定时任务
  分钟  小时    天     月     周      /bin/touch /mnt/file{1..3}       ##执行命令地址
   *          *      *       *      *              ##每月每周每天每小时每分钟
   */2       *      *       *      *       ##每月每周每天每小时每分钟2次
   */2  08-17   *       *      *       ##每月每周每天8:00-17:00每分钟2次
  */2  08-17   1,15   *      *      ##每月,每周,1和25号,8:00-17:00每分钟2次
  */2  08-17   1,15   3-5   *     ##3到5月,每周,1和25号,8:00-17:00每分钟2次
  */2  08-17   1,15   3-5   3     ##3到5月,每周3和1和25号,8:00-17:00每分钟2次
crontab -u root -l                     ##查看任务
crontab -u root -r                    ##删除任务
cat /var/spool/cron/root          ##查看文件是在那个文件下写的    
    10 03 * * * /bin/touch /mnt/file{1..3}

方法二:实验步骤
[root@foundation68 ~]# cd  /etc/cron.d       ##切换到cron.d
[root@foundation68 cron.d]# ls                     ##查看这个目录下的文件
0hourly  raid-check  sysstat
[root@foundation68 cron.d]# cat 0hourly     ##查看写文件的格式
# Run the hourly jobs
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
01 * * * * root run-parts /etc/cron.hourly         ##编写这个格式的命令
[root@foundation68 cron.d]# touch westos
[root@foundation68 cron.d]# vim westos

                            * * * * * root touch /mnt/file{1..5}   ##整分过1秒执行


vim /etc/cron.allow  ##白名单
vim /etc/cron.deny   ##黑名单

白名单出现黑名单失效,除了root和白名单的人其余人都不能用at延迟


###对临时文件的管理###

实验步骤:   
监控:watch -n 1 ls -R /mnt/ -l
cd  /usr/lib/tmpfiles.d
vim  westos.conf                   ##.conf是临时文件后缀
     d /mnt/westos 1777 root root 5s          ##5秒后创建或删除
systemd-tmpfiles --create /usr/lib/tmpfiles.d/*        ##创建临时文件
touch  /mnt/westos/file
touch  /mnt/westos/file1
systemd-tmpfiles  --clean  /usr/lib/tmpfiles.d/*           ##删除临时文件

猜你喜欢

转载自blog.csdn.net/argued_d/article/details/80066283
今日推荐