Linux例行性任务

需求

两种场景
1. 在某个指定时间执行某项任务。(明天早上检查磁盘状态)
2. 周期性执行某项任务。(每天早上备份日志)


分析

  1. 让程指定时间运行某些任务,提高自己的工作效率,避免人工登录机器去运行,特别是有程序依赖时,比如说有些统计任务依赖于某些程序执行完毕,设置at命令则不用再处理;
  2. 机器周期性执行某些任务,用于机器维护、程序监控或数据备份及清理。

一次性任务

使用at命令,依赖于atd服务。

  • at工作方式

    1. 使用at命令,将任务写入/var/spool/at/目录内。atd服务访问该目录。
  • 权限控制

    1. 如果含有/etc/at.allow文件,则只有在该文件中的用户才能使用at。
    2. 如果不含有/etc/at.allow文件,但含有/etc/at.deny文件,则只有不在该文件中的用户才能使用at。
    3. 如果不含有/etc/at.allow文件和/etc/at.deny文件,则只有root用户才能使用at。
命令用途示例备注
at now + 5 minutes[enter] … [Ctrl+D]创建任务at now + 10 minutes at> cat .vimrc > /home/work/orage at> <EOT>
atq查看任务结果: 3 2017-02-06 17:36 a root第一列数据为任务id,第二列数据为时间,最后一列为创建者
atrm id将第id个任务删除atrm 3

周期性命令

使用crontab命令,依赖于crond服务。

  • crontab工作方式

    1. 使用crontab命令,将任务写入/var/spool/cron/目录内。cron服务问该目录。
  • 权限控制

    1. 如果含有/etc/cron.allow文件,则只有在该文件中的用户才能使用crontab。
    2. 如果不含有/etc/cron.allow文件,但含有/etc/cron.deny文件,则只有不在该文件中的用户才能使用crontab。
    3. 如果不含有/etc/cron.allow文件和/etc/cron.deny文件,则只有root用户才能使用crontab。
  • 例行任务级别

    1. /etc/crontab 系统级别,可配置路径和邮箱对象。
      还有/etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly 四个周期性执行目录可以放置任务。
    2. /etc/cron.d/* 程序级别
    3. /var/spool/cron/* 单用户个性化
命令用途示例备注
crontab -e创建任务crontab -e
crontab -l查看任务crontab -l
crontab -r删除所有任务crontab -r
-u username参数指定执行任务的用户

- crontab每行参数设定
转自网站:<a href=http://linux.vbird.org/linux_basic/0430cron.php#whatiscron” title=”” />


其它

  • 某项服务deamon运行状态查看/操作:/etc/init.d/deamon status/start/stop/restart
  • 某项服务deamon是否预设启动设置:chkconfig daemon on/off
  • 系统所有服务查看:service –status-all

总结

主要是复习下LINUX系统at和crontab两个命令,旨在于多有意识使用这两个命令提高工作效率。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值