时间服务
时间服务
-
先理解时间对服务器的重要性
-
全世界的服务器,时间统一标准,可以以这个为准,cn.ntp.org.cn
-
学习linux的各种命令,对时间来修改,以及同步
timedaectl
可以修改linux的日期,时间
timedatectl date 改时间日期(软件时间,你的系统运行了,程序计算的时间) hwclock 改硬件时间(计算的主板上,有一个BISO系统,以及纽扣电池,提供电量) 修改时间、日期、date命令 centos6的修改时区的操作,时区就以亚洲上海为准了 修改时区,cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 查看系统中有哪些时区文件 ls /usr/share/zoneinfo/ ll /usr/share/zoneinfo/Asia/Shanghai 修改硬件时间使用 hwclock 命令
查看当前时间
[root@yuanlai-0224 ~]# timedatectl
Local time: 一 2022-03-21 12:21:42 CST(中国时区)
Universal time: 一 2022-03-21 04:21:42 UTC
RTC time: 一 2022-03-21 04:21:38
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
[root@yuanlai-0224 ~]#
[root@yuanlai-0224 ~]#
[root@yuanlai-0224 ~]# timedatectl status
Local time: 一 2022-03-21 12:21:46 CST
Universal time: 一 2022-03-21 04:21:46 UTC
RTC time: 一 2022-03-21 04:21:42
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: no # timedatectl 自带的ntp服务
NTP synchronized: no # ntp同步服务是否开启
RTC in local TZ: no
DST active: n/a
# 开启timedatectl自带的ntpd
# timedatectl set-ntp on
# 关闭timedatectl自带的ntpd
# timedatectl set-ntp off
修改时间、修改时区
[root@yuanlai-0224 ~]# timedatectl --help
timedatectl [OPTIONS...] COMMAND ...
Query or change system time and date settings.
-h --help Show this help message
--version Show package version
--no-pager Do not pipe output into a pager
--no-ask-password Do not prompt for password
-H --host=[USER@]HOST Operate on remote host
-M --machine=CONTAINER Operate on local container
--adjust-system-clock Adjust system clock when changing local RTC mode
指令
Commands:
status Show current time settings 查看当前状态
set-time TIME Set system time 设置当前的时间
set-timezone ZONE Set system time zone 设置当前的时区
list-timezones Show known time zones 查看系统支持哪些时区
set-local-rtc BOOL Control whether RTC is in local time
set-ntp BOOL Control whether NTP is enabled
[root@yuanlai-0224 ~]# timedatectl set-time '10:00'
[root@yuanlai-0224 ~]# timedatectl set-time '2018-11-8 10:00'
查看系统支持多少个时区
[root@yuanlai-0224 ~]# timedatectl list-timezones | wc -l
425
找出关于上海的时区,具体名字
[root@yuanlai-0224 ~]# timedatectl list-timezones | grep -i 'shanghai'
Asia/Shanghai
[root@yuanlai-0224 ~]# timedatectl set-timezone Asia/Shanghai
ntp时间同步
- 强制性更新整个系统的时间,ntpdate,不友好的强制同步时间
- 搭建ntp服务,自动的,友好的更新,校准系统时间
其强制性ntpdate命令
1.找到时间服务器地址,强制更新即可
[root@yuanlai-0224 ~]# ntpdate -u ntp.aliyun.com
[root@yuanlai-0224 ~]# ntpdate -u ntp.aliyun.com
21 Mar 12:31:11 ntpdate[19892]: step time server 203.107.6.88 offset 106194278.720730 sec
[root@yuanlai-0224 ~]# timedatectl status
Local time: 一 2022-03-21 12:31:32 CST
Universal time: 一 2022-03-21 04:31:32 UTC
RTC time: 四 2018-11-08 02:06:54
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
搭建ntpd服务
1.安装ntp软件
yum install ntp -y
2.查看ntp软件信息
ls /usr/lib/systemd/system/ |grep ntp ntpdate.service ntpd.service
3.找到ntp软件的配置文件
rpm -ql ntp |grep conf /etc/ntp.conf /etc/sysconfig/ntpd /usr/share/man/man5/ntp.conf.5.gz
4.修改ntp配置文件
vim /etc/ntp.conf # 新增如下的配置 # 添加ntp的运行日志 logfile /var/log/my_ntp.log # 记录程序的运行进程号的,可以用于写脚本,读取这个文件,就找到了程序的进程id pidfile /var/run/ntpd.pid # 修改同步的ntp服务节点为如下 server ntp.aliyun.com iburst prefer server cn.pool.ntp.org iburst
5.修改机器的时间为错误时间
[root@yuanlai-0224 ~]# timedatectl set-time '2018-11-8 10:00' [root@yuanlai-0224 ~]# timedatectl Local time: 四 2018-11-08 10:00:04 CST Universal time: 四 2018-11-08 02:00:04 UTC RTC time: 四 2018-11-08 02:00:04 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: no NTP synchronized: no RTC in local TZ: no DST active: n/a
6.启动ntpd服务,等待时间是否同步
[root@yuanlai-0224 ~]# systemctl start ntpd [root@yuanlai-0224 ~]# systemctl status ntpd
7.查看ntp是否和上游服务器同步
[root@yuanlai-0224 ~]# ntpstat unsynchronised polling server every 64 s
8.查看时间同步的状态
[root@yuanlai-0224 ~]# ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== 120.25.115.20 .STEP. 16 u - 64 0 0.000 0.000 0.000 203.107.6.88 10.137.38.86 2 u 28 64 1 26.495 -5.532 20.580 a.chl.la 131.188.3.222 2 u 25 64 1 275.482 52.054 13.988
- 这台机器,就是一个时间服务器了,可以作为上游机器使用
date命令和hwclock命令
可以直接用timedatectl替代了
timedatectl直接修改硬件+软件时间了。
让软件时间和硬件时间同步 hwclock 可以将硬件和软件时间做同步 -s, --hctosys 将硬件时钟同步为当前系统时间 -w, --systohc 将当前系统时间同步为硬件时钟