linux的系统时钟在很多地方都要用到,要是不准,就会出现一些奇怪的问题;
在Linux中,用于时钟查看和设置的命令主要有date、hwclock和clock。Linux时钟分为系统时钟(SystemClock)和硬件(RealTimeClock,简称RTC)时钟。系统时钟:是指当前LinuxKernel中的时钟,硬件时钟:是主板上由电池供电的时钟,这个硬件时钟可以在BIOS中进行设置。
当Linux启动时,硬件时钟会去读取系统时钟的设置,然后系统时钟就会独立于硬件运作。
Linux中的所有命令(包括函数)都是采用的系统时钟设置。在Linux中,用于时钟查看和设置的命令主要有date、hwclock和clock。其中,clock和hwclock用法相近,只用一个就行,只不过clock命令除了支持x86硬件体系外,还支持Alpha硬件体系。
1、date
查看系统时间
#date
设置系统时间
#date–set07/07/0610:19″//(月/日/年时:分:秒)
2、hwclock/clock
查看硬件时间
#hwclock–show//或者
#clock–show
设置硬件时间
#hwclock–set–date=07/07/0610:19″(月/日/年时:分:秒)或者
#clock–set–date=07/07/0610:19″(月/日/年时:分:秒)
3、硬件时间和系统时间的同步
按照前面的说法,重新启动系统,硬件时间会读取系统时间,实现同步,
但是在不重新启动的时候,需要用hwclock或clock命令实现同步。
硬件时钟与系统时钟同步:
#hwclock–hctosys//(hc代表硬件时间,sys代表系统时间)或者
#clock–hctosys
系统时钟和硬件时钟同步:
#hwclock–systohc//或者
#clock–systohc
4.和外部的NTP时间服务器同步
$servicentpdstop
这一步是必须的,否则出出现:
25Nov18:10:34ntpdate[2106]:theNTPsocketisinuse,exiting
的失败提示;
$ntpdatentp.sjtu.edu.cn
正常返回如下:
25Nov18:14:34ntpdate[2164]:adjusttimeserver202.120.2.101offset-0.006107sec
错误返回如:
25Nov18:13:44ntpdate[2158]:noserversuitableforsynchronizationfound
$servicentpdstart
$chkconfigntpdon
$clock-w
还可以写进定时任务中,以做定时的时钟同步:
$crontab-e
05****/usr/sbin/ntpdatentp.sjtu.edu.cn>/dev/null2>&1
0517***/sbin/clock-w
附上中国大概能用的NTP时间服务器地址
server133.100.11.8prefer
server210.72.145.44
server203.117.180.36
server131.107.1.10
servertime.asia.apple.com
server64.236.96.53
server130.149.17.21
server66.92.68.246
serverwww.freebsd.org
server18.145.0.30
serverclock.via.net
server137.92.140.80
server133.100.9.2
server128.118.46.3
serverntp.nasa.gov
server129.7.1.66
serverntp-sop.inria.frserver210.72.145.44(中国国家授时中心服务器IP地址)
serverntp.sjtu.edu.cn(上海交通大学网络中心NTP服务器地址)
以上就是设置Linux的系统时钟和硬件时钟同步的方法,谢谢阅读,希望能帮到大家,请继续关注,我们会努力分享更多优秀的文章。