美文网首页linux运维
Linux 中 date 时间和 hwclock 时间不一致解决

Linux 中 date 时间和 hwclock 时间不一致解决

作者: Amazing慕丶涵 | 来源:发表于2021-05-31 17:28 被阅读0次

    解释:

    date命令:可以用来显示或设定 `系统` 的日期与时间
    date命令可以用来显示或设定系统的日期与时间,在显示方面,
    使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下
     
    hwclock命令:用于显示与设定 `硬件` 时钟
    在Linux中有硬件时钟与系统时钟等两种时钟。
    硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。
    当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。
    所有Linux相关指令与函数都是读取系统时钟的设定。
    

    方法一:

    Linux设置系统时间为当前网络时间
    1、系统时间
      date:查看当前系统时间
        修改时间:
       date -s "2020-02-02 08:09:20" 
    2、硬件时间
      hwclock --show:查看当前硬件时间
    3、ntpdate
      设置网络时间为当前系统时间
      1)安装工具:yum -y install ntp ntpdate
      2)设置系统时间与网络时间同步:ntpdate cn.pool.ntp.org
      3)将系统时间写入硬件时间:hwclock --systohc 
    
    
    同步时间
    1. 软件同步网络时间(中国国家授时中心:210.72.145.44)
    ntpdate -u 210.72.145.44
    # 同步中国国家授时中心时间,这样可以保持同步,但是机器重启后会还原
    2. 保持重启后时间同步(2或3,先1种)
    # 写入定时任务同步时间
    */10 * * * * /usr/sbin/ntpdate -u 210.72.145.44 &>/dev/null
    

    注:亲测可用,修改系统时间只有超级管理员账号才可以

    方法二:

    一、在同步时间前需要先检查时区是否是china的CTS时区

    注意:必须确保时区准确,否则时间同步后显示不正常

    必须确保 时区 准确,否则时间同步显示不正常

    date 命令查看系统时间
    hwclock命令查看硬件时钟

    二、如果时区不对,如,在中国,时区是CTS,若不是,修改方式:

    执行命令:

    tzselect
    
    tzselect命令
    选择 5) Asia,然后选择 9) China,然后选择 1) Beijing Time
    
    修改时区a
    修改时区b

    三、将时区信息拷贝,并覆盖原来的时区信息,操作命令

    覆盖原来的时区信息
    复制相应的时区文件,替换系统时区文件;或者创建链接文件
    cp /usr/share/zoneinfo/$主时区/$次时区 /etc/localtime
    例如:在设置中国时区使用亚洲/上海(+8)
    cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime:
    

    注意:操作系统有两个时间: 软件时间和硬件时间

    软件时间: 查看方式 date,是是距离1970.1.1的时间差;

    硬件时间: sudo hwclock -r,硬件时间是BIOS的时间。

    `-w : 将软件时间写入到硬件时间;`
    `-r   : 读取硬件时间。`
    

    查看并同步软件时间和硬件时间:

    `**执行命令:** sudo hwclock -w; hwclock -r; date`
    `**或者:** sudo hwclock --systohc`
    

    相关文章

      网友评论

        本文标题:Linux 中 date 时间和 hwclock 时间不一致解决

        本文链接:https://www.haomeiwen.com/subject/pjjbsltx.html