关于这个问题我姑且分为2点
第一点是相对于网络时间的本地时间,我们通常所用的电脑在未联网之前,主机自身有个时间,这是主机BLOS控制的,(很多时候我们所写的一些定时器,计时器都是用的主机内部的时钟。),而本地时间可能由于一些异常而导致出错,就我而言我遇到的是在装ubuntu和window双系统是,不小心将BLOS内的一些设置修改了,导致本地时间的不正确,
还有就是平时用VM虚拟机时,我经常用它的挂起功能,很方便,但是下次打开了,虚拟机内系统的本地时间依然保留在挂起时。以上两种情况均为未连接互联网时发生的。而为了校准本机时间,我们通常用的方法就是联网,更新时间。
这里引出第二点网络时间,我们所说的网络时间一般是存在网络上的网络时间服务器上的,而我们联网的目的就是连接服务器和服务器进行通信。
大概的流程时间服务器随时监听着网络中是否有客户端的链接,我们的主机联网并向时间服务器发送连接请求,建立连接后,主机向服务器发送获取最新时间的请求,服务器收到后解析请求,向主机发送服务器上时间,主机接收并更新时间。
以上是我以TCP流连接设想的流程,实际如何,是否有更加好的方式欢迎指教。
这是背景。
正式的例子将在下一篇列出。
这里顺便介绍一下linux下更新时间的命令。
首先引出NTP(网络时间协议NetTimeProtocal)
先安装NTP
install ntp
同步时间命令是
ntp -u (时间服务器名)