Rhel6服务器时间任务浅谈

本文发布时间: 2019-Mar-22
脚本服务管理/etc/init.d/和/etc/rc.d/init.d 目录下存放的都是服务启动脚本[root@rootbug ~]# vim /etc/init.d/httpd#/bin/bash--定义由bash去解析的脚本# chkconfig: - 85 15# description: Apache is a World Wide Web server. It is used to serve \# HTML files and CGI.对于一个服务脚本,一般都有下面两行注释# chkconfig: - 85 15- 没有数字只有一杆表示此服务开机没有启动,利用chkconfig --list |grephttpd得到结果全部都是off,如果有数字,比如2345,表示在/etc/rc2.d/---到/etc/rc5.d/里面的数据标识为开机启动,启动顺序看下一个数字,即85;那么在/etc/rc1.d/和/etc/rc1.d/里面的数据标识为关闭服务,关闭顺序是之后一个数字,即15.85 代表开机时启动的顺序号为8515 代表关机时关闭服务的顺序号为15图形配置服务开机自动启动或者关闭命令描述ntsysv - simple interface for configuring runlevelsntsysv通过ntsysv 进行配置非常方便进行开启或者关闭服务器需要的服务时间脚本任务一般时间任务有:at(batch),atd,crond,anacron/etc/init.d/atd/etc/init.d/crond/etc/init.d/anacronat-l 查看时间job 相当于atq-d 删除时间job 相当于atrm-c 显示时间job的内容-f 后接一个脚本脚本执行[root@rootbug ~]# vim 1.sh#!/bin/bashecho "12345" > /dev/pts/2[root@rootbug ~]# at 10:07 031711 -f 1.shjob 8 at 2011-03-17 10:07直接利用at执行[root@rootbug ~]# at 09:47 031711at> echo "hello" > /dev/pts/2at> --ctrl+d结束job 2 at 2011-03-17 09:47还有类似下面的时间推移的写法[root@li ~]# at now + 10 minutes[root@li ~]# at now + 1 hours[root@li ~]# at now + 1 days[root@li ~]# at now + 1 weeks[root@li ~]# at now + 1 months[root@li ~]# at now + 1 years***如果想配置拒绝某些用户使用at命令该如何限制?at任务的使用限制:/etc/at.allow --在这里可以写上允许执行at的普通用户(格式方面也要注意,不要乱空格),一个用户一行;存在的话就不用去考虑at.deny/etc/at.deny --在这里可以定上拒绝执行at的普通用户,一个用户一行;如果at.allow不存在,才生效crontab特点:1,能够周期性的运行2,时间过了就不执行,等下一个周期再执行 (或者使用anacron补足执行)主配置文件vim /etc/crontab执行周期时间 执行身份 命令行 目录01 * * * * root run-parts /etc/cron.hourly02 4 * * * root run-parts /etc/cron.daily22 4 * * 0 root run-parts /etc/cron.weekly42 4 1 * * root run-parts /etc/cron.monthly时间格式分 时 日 月周01* * * *分钟: 0-59小时: 0-23日: 1-31 看月份定月: 1-12周 0-7 0和7都是代表星期天时间格式的几种特殊符号写法* 代表每分钟,每小时,每日,每星期,每月.........., 代表分隔时间 1,5,6,7- 代表一个时间范围  7-20/n 代表每隔n个单位   */3 --不能写成/3,而要写成*/3例子1;vim /etc/crontab* * * * * root echo 'crontab'>/dev/pts/2 --每分钟都会去echo一个crontab到/dev/pts/2终端例子2;vim /etc/crontab* * * * * root run-parts/etc/cron.minutely --做一个每分钟都会执行的目录,把每分钟都要执行的脚本任务放到这个目录里,注意要有执行权限 ***************注意:***************************--修改了/etc/crontab的配置后,不需要重启crond服务,但要保证是开启状态--写到主配置文件里的要写执行身份,如果后面接的是目录,则要加上run-parts,并且目录内的脚本为可执行*****************还可以直接crontab命令进行添加时间任务crontab-e --编辑自己的时间任务-l --列出自己的时间任务-r --删除时间任务-i --删除前要求确认[root@li ~]# crontab -e30 18 * * * /sbin/init 0 --写上每晚6点30分钟自动关机    注意要关机命令root用户写才有效********如果想拒绝普通用户使用crontab命令该如何限制?crontab的使用限制:/etc/cron.allow --写上允许使用crontab的普通用户名,一行写一个;有些文件的话就不考虑/etc/cron.deny/etc/cron.deny  --写上拒绝使用crontab的普通用户名,一行写一个;如果/cron.allow不存在,才生效anacronanacron服务将和crond配合使用,保证crond没有执行的任务可以延后执行。主配置文件vim /etc/anacrontabSHELL=/bin/shPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=root天数 延后时间(分钟) 自定义的名字 执行命令串 目录1 5 cron.daily run-parts /etc/cron.daily -----目录内的脚本在1天内没有被执行过,那么就推后5分钟执行,执行完成后,就把时间给记录到/var/spool/anacron/cron.daily文件里。7 70 cron.weekly run-parts /etc/cron.weekly30 75 cron.monthly run-parts /etc/cron.monthly


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:10pm
栏目列表