|
||||||
|
系统排程
排程的分类: 系统排程分成两种,一种是系统内发性的排程,另一种则是使用者自行加上的。 透过排程,我们可以更有效率的使用机器。 cron行程每分钟会重新检查一遍 crontab 的内容,因此修改完 crontab 档,不需重新启动 cron 服务。 cron行程执行后,会把输出讯息,寄信给建立 crontab 的 owner 或者 寄信给 mailto 这个变数指定的 user。 1.系统内发性排程 档案: /etc/crontab 此为root专用的系统内发性排程档案。 格式: 格式分为7个栏位;其代表与范围分别是: 分钟: 0~59 小时: 0~23 日期: 1~31 月份: 1~12 星期: 0~7 *号表示任意时间。 0和7代表星期天 ※最后两个栏位则是,写入执行命令的身份,及所要执行的命令。 ※如果想在第n小时执行一道命令,可设定成*/n。例如*/6在小时项目中,这将解释成 每六小时执行一次。 # #minute hour mday month wday who command # # Perform daily/weekly/monthly maintenance. 1 3 * * * root periodic daily 15 4 * * 6 root periodic weekly 30 5 1 * * root periodic monthly a.每天的3点1分,以root身份执行,periodic中的daily程序。 b.每周6的4点15分,以root身份执行,periodic中的weekly程序。 c.每月1日的5点30分,以root身份执行,periodic中的monthly程序。 补充: 所谓 periodic 乃是指 /etc/periodic/ 资料夹。 cd /etc/periodic/ 可以看出档案依照不同的执行时间分类。 分成每日、每周、每月、及安全部分。 root@A17[/etc/periodic]#ls -al total 12 drwxr-xr-x 6 root wheel 512 Feb 10 19:08 . drwxr-xr-x 17 root wheel 2048 Feb 12 15:12 .. drwxr-xr-x 2 root wheel 1024 Feb 10 19:08 daily drwxr-xr-x 2 root wheel 512 Feb 10 19:08 monthly drwxr-xr-x 2 root wheel 512 Feb 10 19:08 security drwxr-xr-x 2 root wheel 512 Feb 10 19:08 weekly 2.使用者外加性排程 说明: 除了系统内发性排程之外,每个使用者可以有自己的排程,记录在 /var/cron/tabs/ 之中, 以个别使用者为命名。 我们可以看到,除了内发性的,使用者root还有额外自己增加的排程。 root@A17[/var/cron/tabs]#ls -al total 4 drwx------ 2 root wheel 512 Jan 17 04:26 . drwxr-x--- 3 root wheel 512 Feb 10 19:09 .. --rw------ 1 root wheel 307 11 8 17:04 root 编辑crontab档: crontab -e root@A17[/var/cron/tabs]#crontab -e 格式如同系统内发性排程,但第六栏位(身份)可以不用加上,命令部分,则需视情况加上绝对路径。 ex: # 更新ports 0 3,8,16,20 * * * /usr/cvsup -g -L 2 ports-supfile 每天的3.8.16.20点整,执行更新ports。 # 自动校时 0 1 * * 1 /usr/sbin/ntpdate ntp-1.nctu.edu.tw 若直接采用vi编辑该档案,不会产生作用,因为cron资料库不会更新。 显示目前使用者的排程:crontab -l 显示某帐号的的排程: crontabl -lu username ex: crontab -lu kidd 3.使用者外加性排程 若增加新的排程,旧的依旧存在。 每次执行crontab需确定使用者身份,该指令的执行是属於何者,就由该使用者做crontab。 每次写完cron之后,记得在旁边观看其执行状况,以免因为您的疏失而造成遗憾。 ※控制对cron命令的存取 1.透过/var/cron/allow以及/var/cron/deny来达成。 2./var/cron/allow以及/var/cron/deny并不存在,此时任何人都可以建立crontab档,因此需要建立这两个档来控 制使用者对crontab的存取。如果建立/var/cron/allow,在此档案其中的使用者帐号,就可以建立crontab。在 /var/cron/deny中的帐号则不能建立crontab。若是两个档都同时存在,系统则优先考虑/var/cron/allow。加入 帐号的时候,要一行一个帐号。 文章出处:ohaha的学习心得 作者:panda |
||||||
|
||||||