You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.9 KiB

hwclock

说明

hwclock命令用于调整RTC(real_time clock)时间Linux还有个系统时间(wall time)

RTC是电脑内建的硬件时间执行这项指令可以显示现在时刻调整硬件时钟的时间将系统时间设成与硬件时钟之时间一致或是把系 统时间回存到硬件时钟

在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备也就是通常可在BIOS画面设定的时钟。系统时钟则是 指kernel中的时钟。当Linux启动时系统时钟会去读取硬件时钟的设定之后系统时钟即独立运作。所有Linux相关指令与函数都是读取 系统时钟的设定

选项

clock命令和hwclock相同

hwclock [功能] [选项...]

功能:
-h, --help           显示此帮助并退出
-r, --show           读取硬件时钟并打印结果
    --set            将 RTC 设置为--date指定的时间,设定硬件时钟hwclock --set --date='28/3/2018 12:34:00'
-s, --hctosys        从硬件时钟设置系统时间,即将系统时钟调整为与目前的硬件时钟一致
-w, --systohc        从当前系统时间设置硬件时钟,即将硬件时钟调整为与目前的系统时钟一致
    --systz          基于当前时区设置系统时间
    --adjust         根据自上次时钟设置或调整后的系统漂移来调整RTC,hwclock每次更改硬件时钟都会记录在/etc/adjtime中
-c, --compare        定期将系统时钟与 CMOS 时钟相比较
    --getepoch       打印内核的硬件时钟纪元(epoch)值
    --setepoch       将内核的硬件时钟纪元(epoch)值设置为
                       --epoch 选项指定的值
    --predict        预测 --date 选项所指定时刻读取到的 RTC 值

选项:
-u, --utc            硬件时钟保持为 UTC 时间
    --localtime      硬件时钟保持为本地时间
-f, --rtc <文件>     代替默认文件的特殊 /dev/... 文件
    --directisa      直接访问 ISA 总线,而非 /dev/rtc,若无法存取时可用此参数直接以I/O指令来存取硬件时钟
    --badyear        忽略  RTC 年份(由于 BIOS 损坏)
    --date <时间>    指定要设置的硬件时钟时间
    --epoch <年>     指定作为硬件纪元(epoch)值起始的年份
    --noadjfile      不访问 /etc/adjtime需要使用 --utc 或 --localtime 选项
    --adjfile <文件> 指定调整文件的路径
                       默认为 /etc/adjtime
    --test           不更新,只显示将进行什么操作
-D, --debug          调试模式

实例

# 设置硬件时间要依赖于操作系统时间,具体方法如下:
hwclock -systohc
hwclock --systohc --utc

hwclock # 不加任何参数使用hwclock可以查看当前的硬件日期和时间

# 查看clock文件确认是否设置了UTCUTC=yes表示已设置
cat /etc/default/rcS
cat /etc/sysconfig/clock    # 在其他一些版本的Linux如RebHat中可以这样查看