Linux 的时间配置?

Linux 的时间配置?

我有一个装有 Busybox 和 uClibc 的嵌入式系统。系统时间在启动时自动从 RTC 设置。运行日期命令我得到以下输出:

Thu Jan  1 01:10:41 GMT 1970

当我运行时钟命令我得到以下输出:

Thu Jan  1 00:00:00 1970  0.000000 seconds

我现在已经在 /etc/TZ 中配置了我的时区,但我不知道应该将 RTC 时钟设置为什么时间,以便在运行时所有内容都能正确显示日期命令?

答案1

要更改日期,请使用以下date命令:

date MMDDhhmm[[CC]YY][.ss]]
date 0507192912 # Mon May  7 19:29:00 EDT 2012

要同步时钟,请使用hwclock

从系统时钟设置硬件时钟:

hwclock --systohc

从硬件时钟设置系统时钟:

hwclock --hctosys

答案2

不要手动设置硬件时钟,使用hwclock --systohc。这将自动处理您有效的时区设置。

编辑:
重新阅读您的问题后,我认为您还想问如何设置系统时间。系统会将自己的时间与硬件分开保存。您可以使用命令date手动设置,也ntpdate可以通过 ntp 从远程源设置(或ntp作为守护进程运行以使其不断更新)。

答案3

要同步时钟,请使用hwclock --systohc

但我认为使用 date 设置 sysclock 不是最好的解决方案。最好的方法是使用rdate或将 sysc 时钟与一些时间服务器同步ntp

要使用 rdate 执行此操作,您可以添加简单的脚本/etc/cron.daily


#!/bin/bash
rdate -s time.server.domain.name.com

手动设置时间和日期就像是永无止境的故事。

相关内容