linux系统时间同步硬件时间

linux系统时间同步硬件时间,第1张

在Linux中设置系统时间,可以用date命令

复制代码

1 //查看时间

2 [root@node1 ~]# date

3 Tue Feb 25 20:15:18 CST 2014

4 //修改时间

5 [root@node1 ~]# date -s "20140225 20:16:00" #yyyymmdd hh:mm:ss

6 Tue Feb 25 20:16:00 CST 2014

7 //date 有多种时间格式可接受,查看date --help

1 TIMEDATECTL命令 该命令是作为systemd系统和服务管理器的一部分分发的工具,可以用它来查看和更改系统时钟的配置,包括更改当前的日期和时间、设置时区以及可以激活与远端服务器系统时钟的自动同步,是红帽企业版 7 版本新增的命令。 1.1 展示当前日期和时间 可以使用timedatectl命令来展示当前日期和时间,并且有系统和硬件时钟的配置的详细信息。 [root@strong ~]# timedatectl Local time: Sat 2019-09-21 15:02:27 CST Universal time: Sat 2019-09-21 07:02:27 UTC RTC time: Sat 2019-09-21 07:02:27 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: no NTP synchronized: no RTC in local TZ: no DST active: n/a 1.2 更改当前时间 更改当前时间,命令格式为:timedatectl set-time HH:MI:SS。 该命令同时更改系统时间和硬件时钟,执行结果与使用命令date --set 和hwclock --systohc的效果相同。 [root@strong ~]# timedatectl set-time 20:00:00 [root@strong ~]# timedatectl Local time: Sat 2019-09-21 20:00:04 CST Universal time: Sat 2019-09-21 12:00:04 UTC RTC time: Sat 2019-09-21 12:00:05 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: no NTP synchronized: no RTC in local TZ: no DST active: n/a [root@strong ~]# timedatectl set-time 2019-09-15 [root@strong ~]# timedatectl Local time: Sun 2019-09-15 00:00:03 CST Universal time: Sat 2019-09-14 16:00:03 UTC RTC time: Sat 2019-09-14 16:00:03 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: no NTP synchronized: no RTC in local TZ: no DST active: n/a 仅仅更改日期,时间会变为00:00:00,故更改日期时需把对应的时间加上,例如:timedatectl set-time "2019-09-21 15:16:00"。 1.4 更改时区 1.4.1 列出所有时区 [root@strong ~]# timedatectl list-timezones 1.4.2 更改时区 [root@strong ~]# timedatectl set-timezone Asia/Shanghai 2 DATE命令 该命令在所有Linux系统都可用,用于设置和查看当前日期和时间,常用于脚本中以格式化的形式用于展示系统时间的详细信息。 2.1 展示当前日期和时间 1)不带任何格式展示 [root@strong ~]# date Sat Sep 21 15:24:57 CST 2019 默认展示的是本地时间,以UTC的方式展示,需使用date --utc或date -u。 [root@strong ~]# date --utc Sat Sep 21 07:25:50 UTC 2019 2)格式化展示 客制化日期和时间的展示格式,使用命令:date +"格式"。 常用的格式为: 控制格式 描述 %H 以HH格式展示小时; %M 以MM格式展示分钟; %S 以SS格式展示秒; %d 以DD格式展示天数; %m 以MM格式展示月; %Y 以YYYY格式展示年; %Z 时区; %F 以YYYY-MM-DD格式展示日期,和%Y-%m-%d等价; %T 以HH:MM:SS格式展示时间,和%H:%M:%S等价; [root@strong ~]# date Sat Sep 21 15:37:18 CST 2019 [root@strong ~]# date +"%Y-%m-%d %H:%M:%S" 2019-09-21 15:38:00 2.2 更改当前时间 更改当前时间,命令格式为:date --set HH:MM:SS。 [root@strong ~]# date --set 15:40:20 Sat Sep 21 15:40:20 CST 2019 2.3 更改当前日期 更改当前日期,命令格式为:date --set YYYY-MM-DD。 [root@strong ~]# date --set 2019-09-25 Wed Sep 25 00:00:00 CST 2019 仅仅更改日期,时间会变为00:00:00,故更改日期时需把对应的时间加上,例如: [root@strong ~]# date --set "2019-09-21 15:42:35" Sat Sep 21 15:42:35 CST 2019。 3 CLOCK命令 该命令是用于访问硬件时钟的工具,也称为Real Time Clock(RTC),对应的设置保存在/etc/adjtime文件中。硬件时钟独立于 *** 作系统,即使系统关闭,它仍然工作,用于从硬件时钟展示时间。 3.1 展示当前日期和时间 [root@strong ~]# hwclock Sat 21 Sep 2019 03:51:24 PM CST -0.368709 seconds 3.2 设置日期和时间 设置日期和时间的命令为:hwclock --set --date "dd mmm yyyy HH:MM" [root@strong ~]# hwclock --set --date "21 Sep 2019 16:02:25" [root@strong ~]# hwclock Sat 21 Sep 2019 04:02:35 PM CST -0.342764 seconds 3.3 同步日期和时间 可以使用hwclock命令在硬件时钟和当前系统时间直接互相同步。 3.3.1 系统时间同步到硬件时钟 [root@strong ~]# hwclock --systohc 3.3.2 硬件时钟同步到系统时间 [root@strong ~]# hwclock --hctosys

可以使用ntpdate命令。ntpdate命令使用网络时间协议(NTP)设置日期和时间,通过轮询指定的确定正确时间的NTP服务器来设置本地日期和时间。它从指定的每个服务器获得了一些样本,并应用标准NTP时钟过滤器和选择算法来选择最好的样本。

命令格式:ntpdate 时间服务器

用法示例:$ ntpdate pool.ntp.org

设置时间同步脚本,虽然以上已经同步了时间,但是由于计时精度的原因,时间的误差会增大。可以通过设置计划任务,每天0点同步一下。

打开crontab进行编辑:$ crontab -e

在crontab任务文件添加:0 0 * * * root ntpate -s pool.ntp.org

-s参数指定将日志输出到syslog,而不是标准输出。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9012489.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存