linux 系统定时/延迟任务

一、系统延迟任务

1.at   延迟任务是临时,不重复的

   延迟任务执行后,结果不会在shell显示,会以邮件的形式发送给执行人

2.查看邮件  mail

  邮件所在文件     /var/spool/mail/root


     输入邮件编号,查看邮件详情

     输入q,退出

    清空邮件     >   /var/spool/mail/root

3.设置延迟任务
       at 21:18                           ##任务延迟时间
      at> date                           ##执行的任务

      at> <EOT>                      ##crtl+d,执行延迟任务



    at   now+1min      ##now+1min:1min后执行任务

   注意:任务延迟时间为整min


    at   -l            ##查看延迟任务列表


     at  -c  3                ##显示延迟任务详情


    atrm   3                 ##取消延迟任务

 
4.延迟任务黑名单

  注意:黑名单不针对超级用户

  黑名单  /etc/at.deny

  例如:将student用户加入黑名单后:


  其他用户


5.延迟任务白名单  /etc/at.allow    ##默认不存在

  注意:白名单不针对超级用户


  注意:当建立白名单之后,系统默认将所有用户加入黑名单


二、定时任务

1.定时任务服务crond.service

     crond 任务开机自启动,会排查未执行的crontab,立即执行

2.查看crontab的用法

    man   5   crontab


     分   时    天    月     周            ##*表示全部
      *      *      *       *       *             ##每隔1分钟执行1次
      */2   *      *       *       *          ##每隔2分钟执行1次
      *      */2    *      *        *          ##每隔2小时执行1次
      *      *    1,4   *       *         ##每月1、4号每隔1分钟执行1次
      *      *      *       1-4      *          ##1、4月每隔1分钟执行1次
      *      *      *       *         4            ##每周4每隔1分钟执行1次
3.crontab -e      ##直接编辑crontab任务

  crontab -l      ##显示crontab任务内容


  表示:每月5号,每隔3min清空/mnt目录

  crontab   -r      ##删除当前用户所有的crontab任务


  crontab -e -u student      ##指定student用户建立crontab定时任务

4.crontab 所在文件

      /var/spool/cron/用户名

      例如:/var/spool/cron/student

      可直接编辑文件执行crontab      ##删除文件与crontab -r命令作用一样


5.定时任务crontab黑名单        

  注意:黑名单不针对超级用户

  黑名单用户  /etc/cron.deny


  其他用户


  注意:超级用户可指定student(黑名单)执行crontab


6.定时任务crontab白名单

    /etc/cron.allow    ##默认不存在

   注意:白名单不针对超级用户


   注意:建立白名单之后,所有用户将默认加入黑名单


6.用户级的crontab

     /var/spool/cron/student    ##普通用户

    /var/spool/cron/root         ##超级用户

7.系统级的crontab   ##只能超级用户编辑

    /etc/cron.d/         ##用户自定义执行模式

    /etc/cron.daily/      ##每天执行1次

   /etc/cron.hourly/     ##每小时执行1次

   /etc/cron.monthly/    ##每月执行1次

   /etc/cron.weekly/     ##每周执行1次


  建立自定义的crontab时,需要指定用户

  例:vim   /etc/cron.d/test

 

  注意:系统级的定时任务不会在用户级的文件中显示

8.非交互式编辑定时任务

   echo   " ** * * *   student   date  "  >>  /etc/cron.d/student


三、临时文件管理

1.查找临时文件

    which   systemd-tmpfiles      ##查询文件在哪

    rpm   -qf   /usr/lib/tmpfiles.d/systemd-tmpfiles  ##查询文件属于哪个软件包

    rpm   -ql   systemd-208-11.el7.x86_64             ##查询软件包生成的文件


2.编辑临时文件生成目录信息

   vim   /usr/lib/tmpfiles.d/hello.conf


   表示:临时文件存放在/mnt/tmp 目录下,权限为1777,用户root 组root 时间8s

3.建立临时文件

   systemd-tmpfiles   --create   /usr/lib/tmpfiles.d/*


4.清理临时文件

   systemd-tmpfiles   --clean   /usr/lib/tmpfiles.d/*









  

猜你喜欢

转载自blog.csdn.net/For_myself0/article/details/79938672