掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
時間同步在計算機系統(tǒng)中是非常關鍵的功能,保證各個設備之間的操作具有相同的時間參考,避免因時間誤差導致的各種問題。而NTP(Network Time Protocol)是一種廣泛使用的互聯(lián)網(wǎng)時間同步協(xié)議,能夠?qū)崿F(xiàn)精準同步時間。在Linux操作系統(tǒng)中,通過配置NTP客戶端和服務端來實現(xiàn)時間同步。本文將詳細介紹兩臺linux ntp配置文件,幫助讀者精準同步時間。

創(chuàng)新互聯(lián)是一家專注于網(wǎng)站制作、成都網(wǎng)站建設與策劃設計,甘泉網(wǎng)站建設哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設10余年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:甘泉等地區(qū)。甘泉做網(wǎng)站價格咨詢:18980820575
一、NTP客戶端配置文件
在Linux系統(tǒng)中,可以通過使用NTP客戶端來實現(xiàn)時間同步。NTP客戶端需要與NTP服務端進行通信,并從服務端獲取世界協(xié)調(diào)時間(UTC)來同步本地時間。下面是一個典型的NTP客戶端配置文件:
“`
# /etc/ntp.conf
driftfile /var/lib/ntp/ntp.drift
server 0.pool.ntp.org iburst
server 1.pool.ntp.org iburst
server 2.pool.ntp.org iburst
server 3.pool.ntp.org iburst
restrict default nomodify notrap nopeer noquery
restrict -6 default nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict ::1
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
broadcastdelay 0.008
authenticate no
“`
1. driftfile
driftfile指定一個文件用來記錄時間偏差,這個文件會在系統(tǒng)重啟后被客戶端讀取,從而幫助同步時間。在Linux系統(tǒng)中,通常使用/var/lib/ntp/ntp.drift作為這個文件的路徑。
2. server
server指定NTP服務端的地址,可以指定多個服務端,以確保時間同步的準確性。這里使用了0.pool.ntp.org、1.pool.ntp.org、2.pool.ntp.org、3.pool.ntp.org四個NTP服務端地址,iburst選項表示啟動時快速與服務端進行連接并將時鐘同步。
3. restrict
restrict用來設置服務器策略,限制客戶端對服務器的操作。選項中的nomodify表示不允許修改服務端狀態(tài),notrap表示不允許使用NTP Trap控制信息,nopeer表示不允許客戶端通過NTP協(xié)議與服務端交互,noquery表示不允許客戶端查詢服務器狀態(tài)。
4. includefile
includefile指定了一個文件,在該文件中包含更多的NTP控制文件。在這個指定的文件中,可以包含更多的配置項,幫助客戶端精確同步時間。
5. keys
keys指定NTP使用的密鑰文件路徑。如果有多個NTP客戶端,可以使用密鑰文件來確保通信的安全性。
6. broadcastdelay
broadcastdelay指定了廣播時間同步的延遲,單位為秒。如果要使用廣播方式進行時間同步,可以將該選項設置為0。
7. authenticate
authenticate指定是否啟用NTP身份驗證機制。如果啟用身份驗證,需要配置NTP服務端和客戶端的身份驗證信息才能進行通信。
通過在客戶端上配置以上選項,即可實現(xiàn)精準同步時間的功能。
二、NTP服務端配置文件
NTP服務端的配置文件和客戶端類似,只是需要額外的選項和配置來支持服務端的功能。在NTP服務端中,需要指定確定時間源(即參考時鐘),并將其與其他客戶端同步。下面是一個典型的NTP服務端配置文件:
“`
# /etc/ntp.conf
tinker panic 0
driftfile /var/lib/ntp/ntp.drift
server 127.127.1.0
fudge 127.127.1.0 stratum 10
restrict default kod nomodify notrap nopeer noquery limited
restrict source nomodify notrap noquery
restrict 127.0.0.1
restrict ::1
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
broadcastdelay 0.008
enable mode7
broadcastclient
“`
1. tinker
tinker用于調(diào)整NTP服務端與參考時鐘之間的時間偏差。在這里,將tinker panic 0選項設置為0,表示當NTP服務端與時鐘源的時間偏差過大時,NTP服務端不會在超過1000秒時重啟或退出。
2. server
server指定參考時鐘的地址,這里使用本地時鐘作為參考時鐘。由于本地時鐘可以提供非常精確的參考時間,因此被廣泛使用。
3. fudge
fudge用于調(diào)整時鐘源的stratum(分層)值,以確保時間同步的準確性。stratum值越低,它的準確性就越高。由于本地時鐘的stratum值通常很低,因此需要使用fudge指令將stratum值調(diào)整到10。
4. restrict
restrict用于設置服務端的訪問策略,以確保通信的安全性。這里使用了一些普通的restrict選項,限制了客戶端對服務端的訪問權(quán)限。
5. includefile
includefile指定一個文件,作為包含更多的NTP配置項的容器文件。在這個文件中,可以包含更多的配置項,幫助NTP服務端與客戶端之間進行精確的時間同步。
6. keys
keys指定了一個密鑰文件路徑,用于確保通信的安全性。
7. broadcastdelay
broadcastdelay指定使用廣播方式進行時間同步的延遲,這里設置為0.008秒以確保高精度同步時間。
8. enable mode7
enable mode7啟用了一種NTP協(xié)議擴展模式,允許使用更多的高級NTP控制命令。
通過在服務端上配置以上選項,即可實現(xiàn)精準同步時間的功能。
三、
在Linux系統(tǒng)中,通過配置NTP客戶端和服務端,可以實現(xiàn)精準同步時間的功能。NTP客戶端需要與NTP服務端進行通信,并從服務端獲取世界協(xié)調(diào)時間(UTC)來同步本地時間。NTP服務端需要指定確定時間源(即參考時鐘),并將其與其他客戶端同步。NTP客戶端和服務端的配置文件類似,但服務端需要額外的選項和配置來支持服務端的功能,如指定參考時鐘、調(diào)整stratum值等。通過使用以上配置文件,讀者即可在Linux系統(tǒng)中實現(xiàn)精準同步時間的功能。
成都網(wǎng)站建設公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設、網(wǎng)站制作、網(wǎng)頁設計及定制高端網(wǎng)站建設服務!
可以考慮搭建
ntp服務器
把ntp服輪老務搭臘坦升在
服務器信雀端
然后客戶端只要同步服務器端的時間就可以了
可以使用ntpdate命令。ntpdate命令使用網(wǎng)絡時間協(xié)議(NTP)設置日期和時間,通過輪詢指定的確定正確時間的NTP服務器來設置本地日期和時間。它從指定的每個服務器獲得了一些樣本,并應用標準NTP時鐘過濾器漏亮和選擇算法來選擇更好的樣本。
命令格式:ntpdate 時間服務器
用法示例:$ ntpdate pool.ntp.org
設置時間同步腳本,雖然以上已經(jīng)同步了時間此帆,但是由于計森搜雹時精度的原因,時間的誤差會增大??梢酝ㄟ^設置計劃任務,每天0點同步一下。
打開crontab進行編輯:$ crontab -e
在crontab任務文件添加:0 0 * * * root ntpate -s pool.ntp.org
-s參數(shù)指定將日志輸出到syslog,而不是標準輸出。
linux自帶了ntp服務
—
/etc/init.d/ntpd,這個服務不僅察斗可以設置讓本機和某臺/某些機器做時間同步,他本身還可以扮演一個time server的角色,讓其他機器和他同步時間。
配置文件就是/etc/ntp.conf。
為了測試,設置讓node2
—
192.168.1.102和node1
—
192.168.1.101做時間同步。
之一步,
node1做time
server,node1本身不和其他機器時間同步,就是取本地時間。
所以,先把node1機器的時間調(diào)準了:
~>date
-s
08/03/2023
~>date
-s 11:12:00
~>clock
-w
~>hwclock
–systohc
后兩個命令是把設置的時間寫到硬件時間中去(也就是cmos里面的時間)。
第二步,
然后將node1配置成一個time
server,修改/etc/ntp.conf,
~>vi
/etc/ntp.conf
其他的配置不怎么需要改,只需要畝數(shù)關注restrict的配置:
1.
注釋掉原來的restrict
default
ignore這一行,這一行本身是不響應任何的ntp更新請求,其實也就是禁用了本機的ntp
server的功能,所以需要注釋掉。
2.
加入:restrict
192.168.1.0
mask
255.255.255.0
—
讓192.168.1.0/24網(wǎng)段上的機器能和本機做時敗耐磨間同步
3.
這樣就可以了,記得下面的:
server
127.127.1.0
#
local
clock
fudge
127.127.1.0
stratum
這兩行需要,這是讓本機的ntpd和本地硬件時間同步。
當然,我們也可以添加server
xxx.xxx.xxx.xxx,讓他和其他的time
server時間同步。
4.
/etc/init.d/ntpd
restart
5.
chkconfig
ntpd
on
6.
修改iptables配置,將tcp和udp
123端口開放,這是ntp需要的端口,在/etc/services中可以查到這個端口。
第三步,
這樣node1就成為一臺time
server了,現(xiàn)在我們配置node2這臺機器,也是修改/etc/ntp.conf
,
~>vi
/etc/ntp.conf
1.
restrict
default
ignore這行保留為注釋狀態(tài),因為sales不需要做time
server
2.
注釋掉server
127.127.1.0,
fudge
127.127.1.0
stratum
10這兩行,因為這臺機器不需要和本地硬件時鐘同步了。
3.
加入server
192.168.1.101這行,和node1機器同步。
這樣就ok了??纯磿r間,已經(jīng)和node1同步了。往后默認配置好像是5分鐘和time
server同步一次。ntpdate命令是顯式的和某臺機器做時間同步,以前將ntpdate放到crontab中定期同步也是可以的,但是既然ntpd本身就可以做這個時間
第四步,將ntpdate放到crontab中定期步也是可以的
~>#vi
ntpupdate.sh
/usr/in/ntpdate
192.168.1.101
~>#chmod
755
ntpupdate.sh
~>#crontab
-e
*/1
*
*
*
*
/root/ntpupdate.sh
~>#/etc/init.d/crond
restart
1.因為要純?nèi)加玫綍r間服務器(pool.ntp.org)因此要首先設置好dns服務器,用的是網(wǎng)通的dnsecho “nameserver 202.106.0.20” >> /etc/ resolv.conf2.手動同步/做歲虛usr/in/ntpdate pool.ntp.org 3.設置命令如雀尺下,每隔一小時同步一次時間:crontab –e #添加0 */1 * * * /usr/in/ntpdate pool.ntp.org 2>&1 >> /tmp/ntp.log; /in/hwclock -w之一句命令是同步時間第二句是把時間寫到系統(tǒng)硬件時鐘里,免得系統(tǒng)重啟后時間不對
用 Heartbeat daemon
雙機熱備份技術(shù)是一種軟硬件結(jié)合的較高容錯應用方案。該方案是由兩臺服務器系統(tǒng)和一個外接共享磁盤陣列柜(也可沒有,而是在各自的服務器中采取RAID卡)及相應的雙機熱備份軟件組成。
linux自帶了ntp服務
—
/etc/init.d/ntpd,這個服務不僅可以設置讓本機和某臺/某些機器做時間同步,他本身還可以扮演一個time
server的角色,讓其他機器和他同步時間。
配置文件就是/etc/ntp.conf。
為了測試,設置讓node2
—
192.168.1.102和node1
—
192.168.1.101做時間同步。之一步,node1做time
server,node1本身不和其他機器時間同步,就是取本地時間。所以,先把node1機器的時間調(diào)準了:
~>date
-s
08/03/2023
~>date
-s
11:12:00
~>clock
-w
~>hwclock
–systohc
后兩個命令是把設置的時間寫到硬件時間中去(也就是cmos里面的時間)。
第二步,然后將node1配置成一個time
server,修改/etc/ntp.conf,
~>vi
/etc/ntp.conf其他的配置不怎么需要改,只需要關注restrict的配置:
1.
注釋掉原來的restrict
default
ignore這一行,這一行本身是不響應任何的ntp更新請求,其實也就是禁用了本機的ntp
server的功能,所以需要注釋掉。
2.
加入:restrict
192.168.1.0
mask
255.255.255.0
—
讓192.168.1.0/24網(wǎng)段上的機器能和本機做時間同步
3.
這樣就可以了,記得下面的:
server
127.127.1.0
#
local
clockfudge
127.127.1.0
stratum
這兩行需要,這是讓本機的ntpd和本地硬件時間同步。
當然,我們也可以添加server
xxx.xxx.xxx.xxx,讓他和其他的time
server時間同步。
4.
/etc/init.d/ntpd
restart
5.
chkconfig
ntpd
on
6.
修改iptables配置,將tcp和udp
123端口開放,這是ntp需要的端口,在/etc/services中可以查到這個端口。
第三步,這樣node1就成為一臺time
server了,現(xiàn)在我們配置node2這臺機器,也是修改/etc/ntp.conf
,
~>vi
/etc/ntp.conf
1.
restrict
default
ignore這行保留為注釋狀態(tài),因為sales不需要做time
server
2.
注釋掉server
127.127.1.0,
fudge
127.127.1.0
stratum
10這兩行,因為這臺機器不需要和本地硬件時鐘同步了。
3.
加入server
192.168.1.101這行,和node1機器同步。
這樣就ok了??纯磿r間,已經(jīng)和node1同步了。往后默認配置好像是5分鐘和time
server同步一次。ntpdate命令是顯式的和某臺機器做時間同步,以前將ntpdate放到crontab中定期同步也是可以的,但是既然ntpd本身就可以做這個時間
第四步,將ntpdate放到crontab中定期步也是可以的
~>#vi
ntpupdate.sh/usr/in/ntpdate
192.168.1.101
~>#chmod
755
ntpupdate.sh
~>#crontab
-e*/1
*
*
*
*
/root/ntpupdate.sh
~>#/etc/init.d/crond
restart
能否把你想要的結(jié)果說明白點呢?
這個需要用群集來做。你找一下群集相關的東西吧
三、什么是NTP
為了實現(xiàn)時間同步,我們就需要用戶NTP(Network Time Protocol)這個協(xié)議。如圖1所示。簡單地說,NTP是用來使系統(tǒng)和一個精確的時間源保持時間同步的協(xié)議。筆者建議管理員更好在自己管理的網(wǎng)絡中建立至少一臺時間服務器來同步本地時間。
如 果在一個公司的局域網(wǎng)中,如果讓每個員工通過手動的方式每隔一段時間去校準時間,不但不利于管理,而且校準目標時間源也不一定準確。公司局域網(wǎng)絡中不同計 算機的時間偏差尤其是客戶機/服務器之間的時間偏差,就會對一些要求時間同步的服務產(chǎn)生影響。比如,為了管理方便,服務器設置了一到下班時間便 賬號過期,用戶無法訪問Internet網(wǎng)絡。而如果你的電腦時間與服務器的時間不同步,當你為你下班時間未到,正準備發(fā)送郵件時,或許在服務器的時間 上,你的賬號便過期了,從而導到無法發(fā)送郵件。解決這種問題的方法很簡單,就是建立一個能提供精確時間的服務器,局域網(wǎng)內(nèi)的所有電腦統(tǒng)一通過這臺時間服務 器進行時間同步、校準。
四、NTP服務器安裝
現(xiàn)在,我們就來介紹一下,如何在Linux系統(tǒng)下,建立一個NTP服務器吧。在本文中,我們采用的是Fedora 2操作系統(tǒng)作為例子 (其它版本Linux也可以,系統(tǒng)的配置類似)。
使用 RPM 安裝
首先輸入如下指令
rpm -q ntp
查詢本機是否安裝了NTP軟件包。如果沒有安裝的話,找到您的 Linux 的安裝光盤,mount 上后,查找以NTP開頭的軟件包名,然后安裝上去,就可以了!
rpm –ivh ntp-4.1.2-5.i386.rpm
五、NTP服務的設置
1.NTP軟件包的結(jié)構(gòu)
NTP服務的配置文件:
/etc/ntp.conf :這個是 NTP 服務的主要配置文件,不同的Linux版本文件所在的目錄可能會不同!
與NTP服務有關的Linux 系統(tǒng)文件及目錄:
/usr/share/zoneinfo:這是個目錄,在這個目錄下是規(guī)定了各主要時區(qū)的時間設定文件,例如中國大陸地區(qū)的時區(qū)設置文件是 /usr/share/zoneinfo/Asia/Shanghai 。
/etc /sysconfig/clock:這個文件是Linux 的主要時區(qū)設定文件。每次啟動后,Linux 會自動讀取這個文件來設定系統(tǒng)預設要顯示的時間!比如這個文件內(nèi)容為“ZONE=Asia/Shanghai”,這表示我們的時間設定使用 /usr/share/zoneinfo/Asia/Shanghai 這個文件!
/etc/localtime:這個文件是本地系 統(tǒng)的時間設定文件! 假設clock 文件里面規(guī)定了使用的時間設定文件為 /usr/share/zoneinfo/Asia/Shanghai, Linux 系統(tǒng)就會將 Shanghai那個文件復制一份為 /etc/localtime ,所以系統(tǒng)的時間顯示就會以 Shanghai 那個時間設定文件為準。假設這臺主機到了美國紐約,您只要將 /etc/sysconfig/clock 里面的ZONE 設定成為ZONE=”America/New_York” 并且將/usr/share/zoneinfo/America/New_York復制成為 /etc/localtime ,其它什么設置都不需要改動,系統(tǒng)的顯示時間就是美國紐約當?shù)氐臅r間了!
與 NTP 及系統(tǒng)時間有關的執(zhí)行文件:
/bin/date: Linux 系統(tǒng)上面的日期與時間修改及輸出命令。
/in /hwclock:因為主機的 BIOS 時間與 Linux 系統(tǒng)時間是分開的,所以使用 date 這個指令調(diào)整了時間之后,只是調(diào)整了linux的系統(tǒng)時間,還需要使用 hwclock 才能將修改過后的時間寫入 BIOS。這個命令必須root用戶才能執(zhí)行 。
/usr/in/ntpd:NTP服務的守護進程文件,需要啟動它才能提供NTP服務。
/usr/in/ntpdate:NTP客戶端用來連接NTP服務器命令文件。
2.NTP服務端的設置
編輯 /etc/ntp.conf 文件
關于權(quán)限設定部分
權(quán)限的設定主要以 restrict 這個參數(shù)來設定,主要的語法為:
restrict IP地址 mask 子網(wǎng)掩碼 參數(shù)
其中 IP 可以是IP地址,也可以是 default ,default 就是指所有的IP
參數(shù)有以下幾個:
ignore :關閉所有的 NTP 聯(lián)機服務
nomodify:客戶端不能更改服務端的時間參數(shù),但是客戶端可以通過服務端進行網(wǎng)絡校時。
notrust :客戶端除非通過認證,否則該客戶端來源將被視為不信任子網(wǎng)
noquery :不提供客戶端的時間查詢
注意:如果參數(shù)沒有設定,那就表示該 IP (或子網(wǎng))沒有任何限制!
上級時間服務器的設定
由于我們配置的NTP 服務器需要網(wǎng)絡上面時間比較準確的NTP服務器來更新自己的時間,所以在我們的 NTP 服務器上面要配置一部上級時間服務器來進行校準!在 Internet 上面提供了許多時間服務器,從下面地址找一個離你最近的
用server這個參數(shù)設定上級時間服務器,語法為:
server IP地址或域名
IP地址或域名就是我們指定的上級時間服務器,如果 Server 參數(shù)最后加上 prefer,表示我們的 NTP 服務器主要以該部主機時間進行校準。
解決NTP服務器校準時間時的傳送延遲
使用driftfile參數(shù)設置:
driftfile 文件名
在與上級時間服務器聯(lián)系時所花費的時間,記錄在driftfile參數(shù)后面的文件內(nèi)。
注意: driftfile 后面接的文件需要使用完整的路徑文件名,不能是鏈接文件,并且文件的權(quán)限需要設定成 ntpd守護進程可以寫入。
ntp.conf文件舉例:
設置要求:不對 Internet 提供服務,僅對內(nèi)部子網(wǎng) 192.168.0.0/24 提供服務,NTP 服務器的上級時間主機為:clock.nc.fukuoka-u.ac.jp和ntp.nasa.gov,內(nèi)部子網(wǎng)的客戶端不能修改NTP服務器的時間參數(shù)。
在ntp.conf中增加以下內(nèi)容:
restrict default ignore # 關閉所有的 NTP 要求封包
restrict 127.0.0.1 # 開啟內(nèi)部遞歸網(wǎng)絡接口 lo
restrict 192.168.0.0 mask 255.255.255.0 nomodify #在內(nèi)部子網(wǎng)里面的客戶端可以 進行網(wǎng)絡校時,但不能修改NTP服務器的時間參數(shù)。
server 133.100.9.2 prefer #用133.100.9.2做上級時間服務器
server 198.123.30.#198.123.30.132作為上級時間服務器參考
restrict 133.100.9.#開放server 訪問我們ntp服務的權(quán)限
restrict 198.123.30.132
driftfile /var/lib/ntp/drift
保存退出后。啟動NTP服務
service ntpd start
如果想每次系統(tǒng)啟動,NTP服務自動啟動,請輸入下面命令: chkconfig -level 35 ntpd on 注意:
1.NTP服務的端口是123,使用的是udp協(xié)議,所以NTP服務器的防火墻必須對外開放udp 123這個端口。
2.Ntpd啟動的時候通常需要一段時間進行時間同步,所以在ntpd剛剛啟動的時候還不能正常提供時鐘服務,最長大概有5分鐘吧,如果超過了這個時間請檢查一下您的配置文件。
六、NTP客戶端的使用
Linux系統(tǒng)
在Linux 上面進行網(wǎng)絡校時非常簡單,執(zhí)行 ntpdate 即可:
ntpdate 192.168.0.#192.168.0.1是NTP服務器的IP
不要忘了使用hwclock命令,把時間寫入bios
hwclock -w
如果想定時進行時間校準,可以使用crond服務來定時執(zhí)行。
編輯 /etc/crontab 文件
加入下面一行:
* * * root /usr/in/ntpdate 192.168.0.1; /in/hwclock -w #192.168.0.1是NTP服務器的IP地址
然后重啟crond服務
service crond restart
這樣,每天 8:30 Linux 系統(tǒng)就會自動的進行網(wǎng)絡時間校準。
Windows 系統(tǒng)
在 Windows XP上面使用NTP進行時間校準也很簡單:
雙擊桌面任務欄上的時間,彈出“日期和時間”屬性窗口,如圖所示:
選擇Internet時間,在服務器中填入你的NTP服務器的IP地址或者域名,然后點擊立即更新,您的系統(tǒng)時間就會立即更新。如果想定時更新,把左上角的自動與Internet時間服務器同步選中,然后點擊右下角的應用即可。
yy-2-3.tif
如 果不是Windows XP系統(tǒng),但是NTP服務器同時也是samba服務器的話,則對Windows來說,不需要安裝任何時間同步軟件,因為Windows客戶端可以用net time\\時間服務器IP或服務器netbios名/set/yes來同步??梢园言撁罘旁陂_始菜單的啟動項中,啟動windows時自動同步。
兩臺linux ntp配置文件的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關于兩臺linux ntp配置文件,詳解兩臺Linux NTP配置文件,精準同步時間,linux系統(tǒng)如何設置時間同步?,Linux做兩臺服務器 其中一臺壞了 另一臺服務器繼續(xù)工作 如何做 求解,如何將linux系統(tǒng)部署成ntp服務器的信息別忘了在本站進行查找喔。
香港云服務器機房,創(chuàng)新互聯(lián)(www.cdcxhl.com)專業(yè)云服務器廠商,回大陸優(yōu)化帶寬,安全/穩(wěn)定/低延遲.創(chuàng)新互聯(lián)助力企業(yè)出海業(yè)務,提供一站式解決方案。香港服務器-免備案低延遲-雙向CN2+BGP極速互訪!

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流