如何修改linux系统时间
与时间相关的命令,查看当前的时间
运行?date?即可
cal?查看当前月份的日历
运行?timedatectl?查看时间详细参数
( NTP: network time protocol 网络时间协议 )
( local?time : 本地时间 )
??如何设置机器时间
设置系统时间为15:08: timedatectl set-time 15:08? ?
关闭ntp:? timedatectl set-ntp false
周期性计划任务(定时任务)crontab
用户的定时任务
systemctl status crond.service 查看周期性计划任务的服务状态running
systemctl start crond.service? 开启周期性计划任务的服务状态
systemctl enable --now crond 设置周期性计划任务crond开机自启动,并且当前立即开启
用户定时任务的格式:Minute Hour Day Month DayOfWeek Command
?如何倒查定时任务格式:
- rpm -qa | grep cron
//在所有已安装的包中搜索包含cron的软件包 ,找到
crontabs-1.11-16.20150630git.el8.noarch
- rpm?-qc crontabs-1.11-16.20150630git.el8.noarch
//查看crontabs-1.11-16.20150630git.el8.noarch 包相关的配置文件,可以找到配置文件/etc/crontab
- ?vim /etc/crontab ??
//查看配置文件
设置用户定时任务的步骤:
- 切换用户身份
- contab 命令( -e?; -l -r )
例:
crontab -e //录入定时任务
crontab -l //列表显示定时任务
crontab -r //删除定时任务 ( 删的是所有的定时任务?)
拓展知识:查找命令的绝对路径?which?命令
实例:
- zhangsan用户周一至周五每天下午5点整关机
删除zhangsan的定时任务
管理员root对用户定时任务的管理方法:
方法一:/var/spool/cron 用户定时任务的工作目录( 查看;修改;删除?)
方法二:crontab -u lisi ?-l |-e |?-r ???( 模拟某个用户身份 )
用户定时任务的高级管理技巧
黑名单和白名单的用法:( 黑名单和白名单择其一使用?)
系统默认有黑名单,若用白名单首先删除黑名单
黑名单文件: /etc/cron.deny
用法:vim??/etc/cron.deny??
( 在黑名单文件输入用户名,那么该用户的定时任务被禁用 )
( 从黑名单文件删除用户名,那么该用户的定时任务可正常使用 )
白名单文件: /etc/cron.allow
(?放在白名单里的用户可以用定时任务 )
重启定时任务:systemctl restart crond
系统定时任务的用法:?
系统定时任务的工作目录:
/etc/cron.daily //该目录下的脚本文件每天会自动运行一次(触发事件4:22)
/etc/cron.hourly //该目录下的脚本文件每小时(第一分钟)会自动运行一次
/etc/cron.monthly //该目录下的脚本文件每个月(1号的4:22)会自动运行一次
/etc/cron.weekly //该目录下的脚本文件每星期(周日的4:22)会自动运行一次
anacron系统
原理:系统定时任务的触发事件由于某种原因(例如:停电)而错过了,anacron系统会保证系统定时任务工作目录下的脚本会弥补运行这一机制。
??一次性定时任务(?at )
??systemctl status atd //一次性计划任务at的服务名称叫atd
?rpm -q at //查询at是否安装,软件包信息
rpm -qc?at?? //查询at服务的配置文件
建立一次性计划任务 ( ctrl+d结束一次性计划任务的录入?)
应用:
查看一次性计划任务:at?-l
查看一次性计划任务的内容:at?-c number? //任务内容的倒数第3行
删除一次性计划任务:at -d number
at 17:20 tomorrow //设置明天下5:20的定时任务
at?5:10pm+3 days //设置3天后下午5:10的定时任务
timedatectl命令用法
列出时区信息q退出:
timedatectl list-timezones
timedatectl list-timezones??| ?grep?-i?to??//-i忽略大小写
设置时区:
timedatectl set-timezone Asia/Tokyo //设置系统时区
timedatectl
同步ntp服务器
开启ntp服务器:?timedatectl set-ntp true
查询ntp服务来源于哪个系统模块:(?结果显示:chronyd.service模块 )
systemctl list-units | grep -i?ntp
systemctl status chronyd.service ??//查看chronyd.service的状态为running,
并且上面显示了其服务文件为/usr/lib/systemd/chronyd.service
systemctl start chronyd.service
systemctl enable --now chronyd.service
rpm -qf ?/usr/lib/systemd/chronyd.service ??//查看该服务源于哪个包,这里是chrony-3.3-3.el8.x86_64
rpm -qc ?chrony-3.3-3.el8.x86_64 ??//查看包chrony-3.3-3.el8.x86_64的相关配置文件,可以找到配置文件/etc/chrony.conf
vim ?/etc/chrony.conf
如何设置NTP服务客户端(在servera上做实验)
timedatectl ?set-ntp true ??????????????????????//开启NTP时间同步
timedatectl ????//查看NTP服务的状态为active
systemctl status chronyd.service ??//查看NTP时间同步服务是否运行
vim ?/etc/chrony.conf ?????//编辑NTP服务指向文件
server 172.25.254.250 iburst ??//设置时钟同步服务器是172.25.254.250,也可以设置成172.25.254.254或者classroom.example.com
systemctl restart chronyd.service ??//重启chronyd服务,即NTP服务
timedatectl ????//查看system clock synchronized的值是否为yes
chronyc sources -v ??//验证当前使用的是哪个时钟同步服务器