定时任务发起
在系统中我们可以使用crontab命令来发起用户级定时任务
在系统中/etc/cronfilename 是系统级定时任务,只有root用户可以发起
定时任务执行是调用的是crond服务,即使系统最小化安装crond也会被安装到系统中
定时任务信息存放在系统中/var/spool/cron目录中,存放文件和发起人名称一致
定时任务的日志文件被存放到/var/log/cron中
定时任务执行时如果遇到系统处于关闭状态,那么在开启时crond任务会检测未执行的任务并且立
即执行
发起用户级周期行任务
周期任务发起方式
crontab命令的执行格式为:crontab –u 用户 –e
crontab命令参数如下
-u:用来设定某个用户的crontab服务此参数一般有root用户来运行。
file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab
-e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。
-l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。
-r:从/var/spool/cron目录中删除某个用户的crontab文件
-i:在删除用户的crontab文件时给确认提示。
crontab 在设定定时任务是会以vi命令打开临时文件在保存时会把内容同步到/var/spool/cron中
文件格式为:分 时 天 月 周 执行动作
11 11 * * * echo hello #每天11点11分执行echo hello 命令
发起系统级别的周期任务
/etc/cron.d
系统自定义周期任务
/etc/cron.daily
每天周期任务
/etc/cron.hourly
每小时周期任务
/etc/cron.monthly
每月周期任务
/etc/cron.weekly
每周周期任务
自定义周期任务设置方式
vim /etc/cron.d/job
分钟 小时 天 月 周 用户 动作
01 09-17 * * * root date
定时任务执行优化
定时任务在执行时首先会查看执行者是否在名单中
系统中默认只存在黑名单/etc/cron.deny,写入此文件中的用户会被禁止使用定时任务
在系统中可以手动建立白名单/etc/cron.allow,当此文件出现黑名单不会被检测
白名单出现只有root用户和白名单用户可以执行定时任务
如果系统中没有黑白名单那么只有root用户可以执行任务
黑白名单为用户列表,每个用户一行
黑白名单只针对用户级定时任务进行限制
时间同步服务的使用
系统时间及时区的管理
timedatectl set-time "2024-02-13 10:41:55" ##设定系统时间
timedatectl list-timezones ##显示系统的所有时区
timedatectl set-timezone "Asia/Shanghai" ##设定系统时区
timedatectl set-local-rtc 0|1 ##设定系统时间计算方式
##0表示使用utc时间计算方式
使用公共ntp时间到本机
在RHEL 9 中使用的同步时间软件为hrony
chrony由两个程序组成,分别是chronyd和chronyc。
chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定
计算机增减时间的比率,并对此进行补偿。
chronyc提供了一个用户界面,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计
算机上工作,也可以在一台不同的远程计算机上工作
chrony作为client使用方法如下:
dnf install chrony –y
vim /etc/chrony.conf
server ntp.ntsc.ac.cn iburst #server 指定时钟服务器地址
#iburst 当服务器可达时,发送一个八个数据包
#包间隔通常为2秒,可加快初始同步速度
chrony的参数说明
server #可用于时钟服务器,
iburst #选项当服务器可达时,发送一个八个数据包而不是通常的一个数据包
#包间隔通常为2秒,可加快初始同步速度
driftfile #根据实际时间计算出计算机增减时间的比率
#将它记录到一个文件会在重启后为系统时钟作出补偿
rtcsync #启用内核模式,系统时间每11分钟会拷贝到实时时钟(RTC)
allow / deny #指定一台主机、子网,或者网络以允许或拒绝访问本服务器
bindcmdaddress #允许chronyd监听哪个接口来接收由chronyc执行的命令
local stratum 10 #即使server指令中时间服务器不可用
#也允许将本地时间作为标准时间授时给其它客户端
修改配置文件
vim /etc/chrony.conf
allow 0.0.0.0/0
local stratum 10