Linux运维实战:CentOS7.6操作系统从入门到精通
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.3 系统时间管理

在Linux中,时钟分为硬件时钟和系统时钟。硬件时钟指主机板上的时钟设备,就是可在BIOS画面设定的时钟,系统时钟指Kernel中的时钟,所有Linux相关指令与函数都是读取系统时钟的设定。

当Linux启动时,系统时钟会读取硬件时钟的设定,之后系统时钟独立运作。

3.3.1 两种时钟

在计算机中,时间是靠“晶体振荡器”来实现的,晶体振荡器需要依靠电力才能振荡起来,在计算机主板中有一个纽扣电池可维持晶体振荡器的振荡,从而实现计算机在关机断电后,时间也不会出现错乱,这种时钟称为硬件时钟,也称为实时时钟(RTC)。在Windows系统中,每次启动时都会读取硬件时钟的当前时间,然后设置为当前的系统时间,在电池没有电的情况下,时间会出现不正确的现象,此时需要手动调整。

Linux与Windows有所不同,Linux会通过RTC读取当前时间,一旦读取成功后就不再读取RTC时间,因为读取成功以后Linux内核会通过软件的方式模拟振荡器的振荡,在系统内部维持时间,所以,Linux开机以后会有硬件时钟和系统时钟两个时钟。

只要Linux在运行当中,就会在CPU的作用下自动进行计时。系统时钟有可能因为CPU繁忙而导致计时准确率下降,硬件时钟在电池的供电下会一直保持准确性。

1.查看硬件时间

命令:hwclock。

作用:查看或修改硬件时间。

命令使用格式:hwclock [选项]。

2.手动修改硬件时间和系统时间

3.查看系统时间

命令:date。

时区:

UTC(Universal Time Coordinated):世界标准时间。

GMT(Greenwich Mean Time):格林威治标准时间。

CST(China standard Time):中国标准时间。

4.使用date命令修改时间

命令使用格式:date [选项]。

使用-s或--set=STRING参数把时间设为字符串所描述的时间。

例3.5:查看和修改时间示例。

2018年11月02日 星期五 22:30:00 CST

date命令指定显示日期和时间格式的方法如下。

%F:完整日期格式,等价于 %Y-%m-%d。

%y:年份最后两位数字,范围是00~99。

%Y:年份。

%m:月份,范围是01~12。

%d:按月计的日期(如01)。

%M:分,范围为00~59。

%H:小时,范围是00~23。

%S:秒,范围是00~60。

3.3.2 time命令

作用:一般用来测量一个命令的运行时间。

使用方法:在time后面直接跟上命令和参数。

说明如下。

(1)real:实际使用时间。

(2)user:用户状态使用的时间。

(3)sys:内核状态使用的时间。