【date】Linux date命令修改时间重启后失效的问题

date命令修改时间重启后失效的问题

问题

使用date命令修改时间成功,但是重启后失效

date命令
=> date MMDDhhmmYYYY.ss set

原因

  Linux中有硬件时钟系统时钟两种。硬件时钟:存储在主板上CMOS里,关机后该时钟依然运行,主板的电池为它供电,嵌入式设备有一个RTC模块,硬件时钟即RTC时钟。系统时钟是软件时钟,软件启动后去读取硬件时钟,然后独立运行。

  date命令修改的是系统时钟,所以重启后会失效

解决

  首先了解下hwclock命令

usage: hwclock [-rswtluf]

-f FILE Use specified device file instead of /dev/rtc (--rtc)
-l      Hardware clock uses localtime (--localtime)
-r      Show hardware clock time (--show)
-s      Set system time from hardware clock (--hctosys)
-t      Set the system time based on the current timezone (--systz)
-u      Hardware clock uses UTC (--utc)
-w      Set hardware clock from system time (--systohc)

  在用date修改完系统时间后,通过hwclock命令将系统时间同步到硬件时间
=> hwclock -uw
  其中“-w”是将系统时间同步到硬件时间,但是当参数只有“-w”,重启后会发现时间和我们设置的并不一样;这是因为硬件时间是以UTC时间来存取的,所以我们要加个“-u” 来进行时区转换。

总结

date命令修改时间后,将系统时间同步给硬件时间,这样重启后就不会失效了
=> date MMDDhhmmYYYY.ss set
=> hwclock -uw

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值