Linux 系统延迟和定时机制

来源:互联网 发布:网络嗅探器5.5 编辑:程序博客网 时间:2024/06/08 11:34
at 命令
at 命令可以指定某一任务在将来的特定时间运行。该作业可能是一次
备份、对您系统的检查或者特定时间发送的通知。那些需要花费很长
时间才可完成的作业正适合 at 命令。仅需使用 at 命令将任务设置
为在一分钟或两分钟之后运行。然后您便可以安全注销 , 因为该任务会
在与 shell 会话断开连接的情况下运行
• at 命令必须指定任务应运行的时间。该指定可以是具体时间和 / 或日
期 ( 例如星期一 , 10:00pm 或 7 月 15 日 ) 。也可以是当前时间的相
对时间 ( 现在时间加上 5 分钟 , 现在时间加上 3 天或 4:00pm 加上
1 周 ) 通过添加其他选项 , 您可以在任务完成是发送邮件 ( -m ), 或者从
文件中读取任务 ( -f 文件 ), 而无需通过标准输入进行
• 在键入 at 命令行之后 , 按 Enter 并继续键入作业中包含的其他命令。
任务可由多个命令组成。在完成键入要运行的命令时 , 在单独出现的一
行中按 Ctrl+d 完成任务

at 命令示例
[root@serverX ~]# at now +2 min
at> echo “Hello from the at command” >
/dev/pts/0
at>
job 4 at 2011-08-10 14:05

注 :

在将某一 at 作业设置为运行之后 , 可以通过使用 atq 命令列出
作业编号以及次数。若要查看作业中所包含的命令 , 键入 at -c #
( # 号为作业编号 ) 。键入 Atrm # ( # 号为作业编号 ) 则是删除
指定作业。

管理定期任务
• cron 设备管理必须按计划定期重复运行的程序。后台程序
crond 每分钟唤醒一次 , 以运行计划的任何任务用户使用
crontab 命令计划个人任务。系统管理员可以在系统范围
配置文件中设置任务
1.发起方式
发起方式一
crontab -u username -e  ##username用户建立定时任务
此命令会进入一个文本,该文本的填写方式是:
分 时 天 月 周 + 命令
crontab -u username -r  ##查看某用户的定时任务
crontab -u username -l  ##删除某用户的定时任务


发起方式二
vim /etc/cron.d/filename 创建一个文件并在里面填写,此文件可以填写多个用户
填写方式是:
分 时 天 月 周 + 用户 + 命令
* * * * * root touch /mnt/file  ##表示每分钟在/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都表示星期天)
例:* * * * * 表示每分钟都执行一次

cron 权限设定(白名单优先级优于黑名单)
• 在系统中默认所有用户可以设定 cron
• 用户黑名单
– /etc/cron.deny

• 用户白名单
– /etc/cron.allow
在白名单下也输入student,相反,student可以登录编辑了,说明白名单优先级高于黑名单

系统中的临时文件
• 系统中服务在正常运行时会产生临时文件
• 在系统中 /usr/lib/tmpfiles.d/ 标实服务的临
时文件存放位置


• 文件示例
• vim /usr/lib/tmpfiles.d/test.conf
d /run/test 0700 root root 5s

控制系统中的临时文件
• systemd-tmpfiles
– –create /usr/lib/tmpfiles.d/test.conf
– –clean /usr/lib/tmpfiles.d/test.conf














原创粉丝点击