服务器的时间很重要,前几天我reboot一下系统,发现启动的时候有提示时间不正确。
今天准备把公司的服务器时间设定一下,于是在网上查看linux时间的相关资料,发现linux的时间比较复杂。
首先介绍三个名词:
UTC Universal Time Coordinated,世界标准时间
GMT Greenwich Mean Time,格林尼治时间
CST China standard Time ,中国标准时间
Linux 时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟。系统时钟是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的时钟,这个硬件时钟可以在BIOS中进行设置。
查看系统时间的命令有:
#date
查看硬件时间的命令有:
#hwclock
设置系统时间
# date --set “07/07/06 10:19" (月/日/年 时:分:秒)
设置硬件时间
# hwclock --set --date="07/07/06 10:19" (月/日/年 时:分:秒)
注:用这种方式设定时间我没有设定过,因为这样设定的时间也不够准确
硬件时间和系统时间的同步
重新启动系统,系统时间会读取硬件时间,实现同步,但是在不重新启动的时候,需要用hwclock命令实现同步。
硬件时钟与系统时钟同步:
把硬件时间写入系统时间
# hwclock --hctosys(hc代表硬件时间,sys代表系统时间)
把系统时间写入硬件时间
# hwclock --systohc
同步时间还有一种方式就是读取专门的时间服务器上的时间,比如伦敦时间,中国时间等。
可以借助ntpdate工具来完成
#apt-get install ntpdate
然后同步时间
#ntpdate cn.pool.ntp.org
此时系统时间已经和网络时间同步,
然后把系统时间写入硬件时间
#hwclock --systohc
对于时间还有一个重要的问题,就是时区的设定
debian linux有提供一个命令轻松搞定时区设定,
#tzselect
然后一步一步选择下去就可以了。