linux基本命令及操作12(系统延时及定时任务)

来源:互联网 发布:linux c 字符串连接 编辑:程序博客网 时间:2024/05/16 00:26

 系统延时及定时任务


一:系统延时任务
延时任务是临时的
1.at命令
at  +  time
延迟的动作
ctrl+d保存

at -l | atq        #查看当前任务
atrm  | at -d +任务号    #取消指定任务
at -c +任务号        #查看任务内容
at now+1min        #延时一分钟
at -f file        #延时执行文件中的内容(文件不是脚本)
at -m    (at命令后添加)#延时命令没有输出时也发送邮件给执行者

at -M    (。。。)    #延时命令即使有输出也不发送邮件给执行者


在09:59执行删除 /mnt内所有内容

在两分钟之后执行在桌面新建文件file

查看当前任务

删除任务12

查看当前任务已删除


在文件file中输入 touch /mnt/123

执行文件file中的内容

延时命令 touch file1 没有输出时也发送邮件给执行者

延时命令 date 即使有输出也不发送邮件给执行者

查看mail 延时命令18 没有输出,也发送邮件给执行者root


用watch -n 1 ls /mnt 命令监控



2.at命令的执行权力设定

/etc/at.deny  (直接在文件中写用户名) ##用户黑名单,此名单中的用户不能执行at命令

/etc/at.allow                   ##用户白名单,此名单默认不存在,建立后所有用户均没有at命令执行权限,此名单中的用户才有at命令执行权限 

 


二:定时任务
定时任务是永久的

定时任务程序crond,在系统中每分钟做任务扫描

1.发起方式
发起方式一
crontab -u username -e        ##username用户建立定时任务
此命令会进入一个文本,该文本的填写方式是:
分 时 天 月 周 + 命令
crontab -u username -l        ##查看某用户的定时任务

crontab -u username -r        ##删除某用户的定时任务



发起方式二
vim /etc/cron.d/filename 创建一个文件并在里面填写,此文件可以填写多个用户
填写方式是:
分 时 天 月 周 + 用户 + 命令

1 9 * * 5 root touch /mnt/file  ##表示root用户每周五的9点1分在/mnt目录下建立一个文件file




2.时间表示方法
  1 2 3 4 5 + 命令(五个必须全写)
  1 ---- 分钟
  2 ---- 小时
  3 ---- 天
  4 ---- 月
  5 ---- 周
上述数字填写范围
  * ---- 每(如每分钟)
  1(分钟) ---- 0-59
  2(小时) ---- 0-23
  3(天)   ---- 1-31
  4(月)   ---- 1-12
  5(周)   ---- 0-7 (0和7都表示星期天)
例:* * * * * 表示每分钟都执行一次
 

2.crontab命令的执行权力设定
/etc/cron.deny  (直接在文件中写用户名) ##用户黑名单,此名单中的用户不能执行crontab命令

/etc/cron.allow                   ##用户白名单,此名单默认不存在,建立后所有用户均没有at命令执行权限,此名单中的用户才有crontab命令执行权限


在文件//etc/cron.deny中写入 student

student用户无法执行crontab命令

   



三:系统中的临时文件
  系统中服务在正常运行时会产生临时文件
  在系统中 /usr/lib/tmpfiles.d/ 目录下存放
  系统的临时文件配置是 /usr/lib/tmpfiles.d/*.conf
  自己创建的临时文件配置文件必须以.conf结尾
  临时文件配置的编写方式是:
  文件类型  文件名       文件权限 文件所有人 文件所有组 文件存在的时间

    d        /mnt/westos    777      root        root      10s 




      

  ##表示在/mnt目录下创建临时目录westos,并且十秒内不能被删除
  systemd-tmpfiles --create  /usr/lib/tmpfiles.d/*  ##执行临时文件配置


用watch -n 1 ls /mnt 监控

systemd-tmpfiles --clean  /usr/lib/tmpfiles.d/clean.conf   清理临时文件



原创粉丝点击