hwclock

显示与设定硬件时钟

补充说明

hwclock命令 是一个硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可设置系统时间为硬件时钟的时间。

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

语法

  1. hwclock(选项)

选项

  1. --adjusthwclock每次更改硬件时钟时,都会记录在/etc/adjtime文件中。使用--adjust参数,可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟;
  2. --debug:显示hwclock执行时详细的信息;
  3. --directisahwclock预设从/dev/rtc设备来存取硬件时钟。若无法存取时,可用此参数直接以I/O指令来存取硬件时钟;
  4. --hctosys:将系统时钟调整为与目前的硬件时钟一致;
  5. --set --date=<日期与时间>:设定硬件时钟;
  6. --show:显示硬件时钟的时间与日期;
  7. --systohc:将硬件时钟调整为与目前的系统时钟一致;
  8. --test:仅测试程序,而不会实际更改硬件时钟;
  9. --utc:若要使用格林威治时间,请加入此参数,hwclock会执行转换的工作;
  10. --version:显示版本信息。

实例

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

  1. hwclock systohc
  2. hwclock --systohc –-utc

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

  1. hwclock

查看clock文件,确认是否设置了UTC:

  1. cat /etc/default/rcS
  2. UTC=yes

在其他一些版本的Linux(如RebHat)中可以这样查看:

  1. cat /etc/sysconfig/clock
  2. ZONE="America/Los_Angeles"
  3. UTC=false
  4. ARC=false