鸟哥私房菜第16章——例行性工作

1,两种工作调度的方式:
其一:例行性的,就是每隔一定的周期要来办的事项;
其二:突发性的,这次做完以后就没有的那一种。
Linux中使用at与crontab这两个命令实现,其中at是个可以处理仅执行一次就结束调度的命令,不过要执行at时,必须要有atd这个服务的支持才行。
crontab这个命令所设置的工作将会循环一直进行下去,可循环的时间为分钟、小时、每周、每月或每年等。能让crontab生效的服务则是crond这个服务。
2,Linux系统常见的例行任务有:
1)进行日志文件的轮替
2)日志文件分析logwatch的任务
3)新建locate数据库,我们的文件名数据库是放置到/var/lib/mlocate中
4)whatis数据库的建立,whatis是与man page有关的一个查询命令,不过要使用whatis命令时,必须要拥有whatis数据库,而这个数据库也是通过系统例行性工作调度来自动执行的。
5)RPM软件日志文件的新建
6)删除临时文件
7)与网络服务有关的分析行为
3,仅执行一次的工作调度
使用命令at之前需要先确认atd已经开始,把它开启的命令很简单,如下:
/etc/init.d/atd restart
开启之后就进行一次检查chkconfig atd on
需要注意的是,我们会利用/etc/at.allow与/etc/at.deny这两个文件来进行at的使用限制,加上这两个文件后,at的工作情况其实是这样的:
1)先寻找/etc/at.allow这个文件,写在这个文件中的用户才能使用at,没有在这个文件中的用户则不能使用at
2)如果/etc/at.allow不存在,就寻找/etc/at.deny这个文件,若写在这个at.deny的用户则不能使用at,而没有在这个at.deny文件中的用户就可以使用at了。
3)如果两个文件都不存在,那么只有root可以使用at这个命令。
命令格式:at TIME,TIME只的是在什么时候执行,这个时间使用"now+…"的格式指定。例如:
at now+5 minutes,在5分钟后执行下面的命令。当我们使用at时会进入一个at shell的环境来让用户执行工作命令,此时,建议你最好使用绝对路径来执行你的命令,比较不会有问题。因为at在运行时会跑到执行at命令的那个工作目录。
由于在at工作调度的使用上,系统会将该项at工作独立出你的bash环境中,直接交给系统的atd程序来接管,因此,当你执行了at的工作之后就可以立刻脱机了,剩下的工作就完全交给Linux管理即可。万一执行了at之后,才发现命令错误,该如何是好?利用atq与atrm可以将错误的命令删除。
4,循环执行的例行性工作调度
可以使用命令crontab命令来循环执行例行性工作调度。
与at类似,我们可以限制使用crontab的用户账号,使用的限制数据有:
1)/etc/cron.allow 将可以使用crontab的账号写入其中,若不在这个文件内的用户则不可食用crontab
2)/etc/cron.deny 将不可以使用crontab的账号写入其中,若未记录到这个文件当中的用户,就不可以使用crontab
当用户使用crontab这个命令来新建工作调度之后,该项工作就会被记录到/var/spool/cron里面去,而且是以账号来作为判别的。
命令格式:crontab [-u username] 【-l|-e|-r 】
-u:只有root才能进行这个任务,也即帮其他用户新建/删除crontab工作调度
-e:编辑crontab的工作内容
-l:查阅crontab的工作内容
-r:删除所有的crontab的工作内容,若紧要删除一项,请用-e去编辑
执行命令crontab -e之后会进入vi的编辑界面让你进行编辑工作,注意到,每项工作都是一行,每一行都有6个字段。字段的含义如下图: 在这里插入图片描述5,系统的配置文件是/etc/crontab,这是一个纯文本文件,而crontab -e这个crontab其实是/usr/bin/crontab这个执行文件。cron这个服务的最低检测限制是“分钟”,所以cron会每分钟去读取一次/etc/crontab与/var/spool/cron里面的数据内容,因此只要编辑完/etc/crontab这个文件,并且将它保存之后,那么cron的设置就自动会执行了。
这个文件里面的内容和上面介绍的几乎一模一样,但是有一些区别:
MAILTO=root:这个选项是说,当例行性工作的命令发生错误的时候,或者该工作执行结果有STDOUT/STDERR时,会将错误信息或者是屏幕显示的信息传递给谁。
PATH:这个选项代表的是执行文件的查找路径。
6,使用命令anacron命令可以唤醒停机期间的工作任务P503

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值