今天遇到的问题,处理完之后写一下博客所为:
问题:
由于系统时间不正确导致now()时候进行同步时间错误,相差10几分钟左右
问题原因是linux系统时间上的有时间差
一开始直接用命令
date -s "20200701 17:16:00"
修改之后过一段时间还是会有时间差出现
问题的原因是:linux的时间有系统时间和硬件时间的区别,系统时间同步硬件时间,如果只修改系统时间,重启后系统时间就会变成硬件时间,因此在修改linux时间的时候,不能只修改系统时间还要同步硬件时间
解决方法步骤 :
[[email protected] ~]# tzselect
1.回车会出现:
2.这里我们是中国的北京时间,所以直接输入5回车
3.中国时区当然选择China 输入9回车
4.输入1回车,然后继续1回车
5.下面这个这个时候是告诉你去设置一下profile
TZ='Asia/Shanghai'
export TZ
这两个值
[[email protected] ~]# vim /etc/profile
直接在文件最后编辑如图:
然后保存退出,执行下面的语句使修改的配置生效
以上是修改设置中国标准时间,下面是系统时间的同步
[[email protected] ~]# source /etc/profile
1.然后用date查询,现在的时区已经是中国标准时区了,接下来就是修改同步时间
例如,现在要求设置系统时间为2020-07-01 17:16:00
2,查看硬件时间,使用命令hwclock。
[[email protected] ~]# hwclock
Wed 01 Jul 2020 05:40:05 PM CST -0.687364 seconds
3,调整时间为要求的时间。先设置系统时间,再根据系统时间同步硬件时间。(注:这里也可以先设置硬件时间再同步系统时间)
[[email protected] ~]# hwclock
Wed 01 Jul 2020 05:40:05 PM CST -0.687364 seconds
[[email protected] ~]# date -s 07/01/2020
Wed Jul 1 00:00:00 CST 2020
[[email protected] ~]# date -s 17:16:00
Wed Jul 1 17:16:00 CST 2020
[[email protected] ~]# hwclock --systohc ##使系统时间同步硬件时间
[[email protected] ~]# hwclock
Wed 01 Jul 2020 17:16:20 PM CST -0.974111 seconds
最后效果如上亲测-有效-成功