時(shí)間同步命令linux的簡(jiǎn)單介紹

Linux 時(shí)間同步

在Linux系統(tǒng)中存在兩個(gè)時(shí)鐘時(shí)間,分別是

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序設(shè)計(jì)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了東寧免費(fèi)建站歡迎大家使用!

硬件時(shí)鐘是指的在主板上的時(shí)鐘設(shè)備,也就是通??梢栽贐IOS畫(huà)面設(shè)置的時(shí)鐘,即使關(guān)機(jī)狀態(tài)也可以計(jì)算時(shí)間。

而系統(tǒng)時(shí)鐘則是指Kernel中的時(shí)鐘,其值是由1970年1月1日00:00:00 UTC時(shí)間至當(dāng)前時(shí)間所經(jīng)歷的秒數(shù)總和。當(dāng)Linux啟動(dòng)的時(shí)候,系統(tǒng)時(shí)鐘會(huì)讀取硬件時(shí)鐘的設(shè)定,之后系統(tǒng)時(shí)鐘獨(dú)立運(yùn)作。長(zhǎng)時(shí)間運(yùn)行兩者可能將會(huì)產(chǎn)生誤差。另外所有的Linux相關(guān)指令都是讀取系統(tǒng)時(shí)鐘指定的,如date。

我們這里討論的是系統(tǒng)時(shí)間。

NTP,網(wǎng)絡(luò)時(shí)間協(xié)議,使用 123/udp 端口進(jìn)行網(wǎng)絡(luò)時(shí)鐘同步;NTP 是仍在使用中的最古老的網(wǎng)絡(luò)傳輸協(xié)議之一(1985 年前開(kāi)始)。

以前Linux時(shí)間同步基本是使用 ntpdate 和 ntpd 這兩個(gè)工具實(shí)現(xiàn)的,但是這兩個(gè)工具已經(jīng)很古老了。

【注】ntpdate和ntpd是互斥的,兩者不能同時(shí)使用。ntpd是步進(jìn)式平滑的逐漸調(diào)整時(shí)間,而ntpdate是斷點(diǎn)式更新時(shí)間。

RHEL/CentOS 7.x 已經(jīng)將 chrony 作為默認(rèn)時(shí)間同步工具了。

其他Linux (如 ubuntu) 使用 systemd-timesyncd 服務(wù)。

chrony 是 RedHat 開(kāi)發(fā)的,它是網(wǎng)絡(luò)時(shí)間協(xié)議(NTP)的另一種實(shí)現(xiàn);

RHEL/CentOS 7.x 的默認(rèn)時(shí)間同步工具;

chrony 可以同時(shí)做為 ntp 服務(wù)的客戶端和服務(wù)端;安裝完后有兩個(gè)程序 chronyd、chronyc:

chronyd 是一個(gè) daemon 守護(hù)進(jìn)程,chronyc 是用來(lái)監(jiān)控 chronyd 性能和配置參數(shù)的命令行工具。

系統(tǒng)版本:CentOS 7.5

chrony_server(relay):10.0.0.4

chrony_client:10.0.0.5

Edit file /etc/chrony.conf

默認(rèn)已經(jīng)啟動(dòng),不需要調(diào)整

example:

配置 chrony

edit file: /etc/chrony.conf

再次用chronyc 命令檢查,比較它與chronyd server的差異

systemd-timesyncd 是一個(gè)用于跨網(wǎng)絡(luò)同步系統(tǒng)時(shí)鐘的守護(hù)服務(wù)。它實(shí)現(xiàn)了一個(gè) SNTP 客戶端,但更輕量級(jí),更集成systemd。

systemd-timesyncd 啟動(dòng)時(shí)會(huì)讀取 /etc/systemd/timesyncd.conf 配置文件,內(nèi)容如下:

你可以輸入你希望使用的其它時(shí)間服務(wù)器,比如你自己的本地 NTP 服務(wù)器,在 NTP= 行上輸入一個(gè)以空格分隔的服務(wù)器列表。

如果服務(wù)器可以直接連接internet,不用修改默認(rèn)配置;如果在內(nèi)網(wǎng),需要單獨(dú)指定。

在最新的 Ubuntu 版本中,timedatectl 替代了老舊的 ntpdate。默認(rèn)情況下,timedatectl 在系統(tǒng)啟動(dòng)的時(shí)候會(huì)立刻同步時(shí)間,并在稍后網(wǎng)絡(luò)連接激活后通過(guò) socket 再次檢查一次。

timesyncd 替代了 ntpd 的客戶端的部分。默認(rèn)情況下 timesyncd 會(huì)定期檢測(cè)并同步時(shí)間。它還會(huì)在本地存儲(chǔ)更新的時(shí)間,以便在系統(tǒng)重啟時(shí)做時(shí)間單步調(diào)整。

通過(guò) timedatectl 和 timesyncd 設(shè)置的當(dāng)前時(shí)間狀態(tài)和時(shí)間配置,可以使用 timedatectl status 命令來(lái)進(jìn)行確認(rèn)。

由于 timedatectl 的存在,各發(fā)行版已經(jīng)棄用了 ntpdate,默認(rèn)不再進(jìn)行安裝。

timedatectl

timedatectl status ,查看時(shí)間同步狀態(tài);

timedatectl set-ntp true ,開(kāi)啟網(wǎng)絡(luò)時(shí)間同步;

timedatectl set-timezone ZONE ,設(shè)置時(shí)區(qū)。

NTP synchronized: yes 表示時(shí)間是同步狀態(tài)。

查看服務(wù)狀態(tài)以及從哪個(gè)ntp server同步時(shí)間。

NTP:軟件層面實(shí)現(xiàn),成本低。同步精度10ms左右。

PTP:需要網(wǎng)絡(luò)接口具備在物理層提供時(shí)間戳的功能,同步精度優(yōu)于100ns,局域網(wǎng)的節(jié)點(diǎn)需要使用支持PTP功能的交換機(jī)。局域網(wǎng)網(wǎng)絡(luò)接點(diǎn)不支持PTP的話,只能同不到us,而且受網(wǎng)絡(luò)背景流量影響。

linux多主機(jī)時(shí)間同步方法

假設(shè)現(xiàn)在有三臺(tái)linux主機(jī):

172.16.1.104

172.16.1.105

172.16.1.106

在圖示位置加入紅色框選中內(nèi)容

會(huì)有顯示:25 Oct 14:20:21 ntpdate[3407]: adjust time server 172.16.1.104 offset -0.002740 sec

會(huì)有顯示:25 Oct 14:20:21 ntpdate[3407]: adjust time server 172.16.1.104 offset -0.002740 sec

此時(shí)105、106主機(jī)的時(shí)間就與104主機(jī)完全同步了

方法1我試了一下,當(dāng)一天之后服務(wù)器經(jīng)過(guò)多次重啟好像時(shí)間又有了誤差

我們還可以將系統(tǒng)時(shí)間同步到BIOS時(shí)間,因?yàn)槊看伍_(kāi)機(jī)的時(shí)候,系統(tǒng)會(huì)重新由 BIOS 將時(shí)間讀出來(lái),所以, BIOS 才是重要的時(shí)間依據(jù)。

另外兩個(gè)主機(jī)都執(zhí)行這個(gè)操作,這樣應(yīng)該就不變了

當(dāng)然這是多主機(jī)時(shí)間同步的方法之一,還可以都同步網(wǎng)絡(luò)時(shí)間(上海時(shí)間),但是那樣需要網(wǎng)絡(luò)

另外兩個(gè)主機(jī)重復(fù)以上操作

補(bǔ)充說(shuō)明: ntpdate -u ntp.api.bz 命令中的 ntp.api.bz 指NTP服務(wù)器(上海),也可換成:

也可參考這個(gè)鏈接:

原文鏈接:

Linux集群系統(tǒng)時(shí)間同步

環(huán)境準(zhǔn)備:

要做到服務(wù)器集群的時(shí)間同步,集群中各臺(tái)機(jī)器的時(shí)區(qū)必須相同的,我們?cè)趪?guó)內(nèi)就使用中國(guó)時(shí)區(qū),如果你的機(jī)器的時(shí)區(qū)不是"Asia/Shanghai",需要修改時(shí)區(qū)

CentOS 中時(shí)區(qū)是以文件形式存在,當(dāng)前正在使用的時(shí)區(qū)文件位于

/etc/localtime ,其他時(shí)區(qū)文件則位于 /usr/share/zoneinfo 下,中國(guó)時(shí)區(qū)的文件全路徑是 /usr/share/zoneinfo/Asia/Shanghai

要更改時(shí)區(qū),直接使用如下命令就OK

需要使用 tzselect 命令去生成時(shí)區(qū)文件,生成好的時(shí)區(qū)文件就在/usr/share/zoneinfo 目錄下,具體步驟去下:

使用 date -s 命令來(lái)修改系統(tǒng)時(shí)間

讓集群所有的服務(wù)器的時(shí)間同步,就用遠(yuǎn)程連接工具連接所有服務(wù)器,然后在所有的服務(wù)器中同時(shí)執(zhí)行 date -s 命令設(shè)置時(shí)間,然后在所有的服務(wù)器中執(zhí)行 hwclock -w 命令即可

美國(guó)標(biāo)準(zhǔn)技術(shù)院時(shí)間服務(wù)器:time.nist.gov(192.43.244.18)

上海交通大學(xué)網(wǎng)絡(luò)中心NTP服務(wù)器地址:ntp.sjtu.edu.cn(202.120.2.101)

中國(guó)國(guó)家授時(shí)中心服務(wù)器地址:cn.pool.ntp.org(210.72.145.44)

若以上提供的網(wǎng)絡(luò)時(shí)間服務(wù)器不可用,請(qǐng)自行上網(wǎng)尋找可用的網(wǎng)絡(luò)時(shí)間服務(wù)器

1 使用命令: crontab -e

2 然后往里加入一行內(nèi)容

上面的配置表示,每隔十分鐘從 202.120.2.101 該時(shí)間服務(wù)器同步一次時(shí)間。

3 保存退出

以上兩步操作可以讓node01這個(gè)服務(wù)器每隔10分鐘去指定的服務(wù)器同步時(shí)間,如果需要讓集群中的所有服務(wù)器(hadoop01-hadoop04)時(shí)間同步,那么每臺(tái)服務(wù)器都要做以上兩步操作。

node01的IP為192.168.21.101,讓它作為時(shí)間服務(wù)器,192.168.21.0局域網(wǎng)內(nèi)的所有服務(wù)器都向它同步時(shí)間,而node01這臺(tái)時(shí)間服務(wù)器本身,向外網(wǎng)時(shí)間服務(wù)器同步時(shí)間(比如中國(guó)國(guó)家授時(shí)中心服務(wù)器)

我用node01

我去掉了所有的默認(rèn)注釋,對(duì)其中的修改寫(xiě)了自己的注釋,沒(méi)有寫(xiě)注釋的是默認(rèn)配置

因?yàn)閚tpd服務(wù)開(kāi)啟之后,就不能手動(dòng)同步時(shí)間了,那么為什么要先手動(dòng)同步時(shí)間呢?

當(dāng)server(中國(guó)國(guó)家授時(shí)中心服務(wù)器)與client(node01)之間的時(shí)間誤差過(guò)大時(shí)(可能是1000秒),node01去同步時(shí)間可能對(duì)系統(tǒng)和應(yīng)用帶來(lái)不可預(yù)知的問(wèn)題,node01將停止時(shí)間同步!所以如果發(fā)現(xiàn)node01啟動(dòng)之后時(shí)間并不進(jìn)行同步時(shí),應(yīng)該考慮到可能是時(shí)間差過(guò)大引起的,此時(shí)需要先手動(dòng)進(jìn)行時(shí)間同步!

看到紅色框中的內(nèi)容,表示連接和監(jiān)聽(tīng)已正確

這里的前4行就是我們配置的4個(gè)中國(guó)國(guó)家授時(shí)中心的服務(wù)器的信息

最后一行就是本地時(shí)間服務(wù)的信息

下面對(duì)每個(gè)列的意義進(jìn)行說(shuō)明:

同樣,服務(wù)啟動(dòng)后需要等待5-10分鐘才能看到這個(gè)正常的信息

到這里,我們局域網(wǎng)內(nèi)的時(shí)間服務(wù)器node01就已經(jīng)配置完畢了

文件內(nèi)容如下:

同樣,沒(méi)有寫(xiě)注釋的都是默認(rèn)的配置

原因同(5)

到這里,利用局域網(wǎng)內(nèi)一臺(tái)時(shí)間服務(wù)器來(lái)同步整個(gè)集群時(shí)間的全部配置就已經(jīng)完成

說(shuō)明:若以上提供的網(wǎng)絡(luò)時(shí)間服務(wù)器不可用,請(qǐng)自行上網(wǎng)尋找可用的網(wǎng)絡(luò)時(shí)間服務(wù)器,另外需要關(guān)閉各服務(wù)器的防火墻,才能進(jìn)行時(shí)間同步

參考文章:

內(nèi)網(wǎng)環(huán)境NTP服務(wù)及時(shí)間同步(CentOS6.x)配置和部署

配置NTP服務(wù)ntpd/ntp.conf(搭建Hadoop集群可參考)

新聞標(biāo)題:時(shí)間同步命令linux的簡(jiǎn)單介紹
標(biāo)題鏈接:http://muchs.cn/article10/dospego.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站維護(hù)、手機(jī)網(wǎng)站建設(shè)關(guān)鍵詞優(yōu)化、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化