日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
了解Linux時(shí)間同步:NTPstat的作用與用法(linuxntpstat)

在日常使用計(jì)算機(jī)時(shí),很多人可能會(huì)忽視計(jì)算機(jī)時(shí)間的正確性。但是,準(zhǔn)確的時(shí)間同步在計(jì)算機(jī)操作中非常重要,特別是在需要跨越多個(gè)操作系統(tǒng)和網(wǎng)絡(luò)的大規(guī)模計(jì)算環(huán)境中。Linux系統(tǒng)提供了多種方法來(lái)同步時(shí)間,其中一種比較常用的是使用Network Time Protocol(NTP)。NTP是一個(gè)用于同步計(jì)算機(jī)時(shí)鐘的協(xié)議。它通過(guò)在計(jì)算機(jī)之間傳輸網(wǎng)絡(luò)時(shí)間信息來(lái)確保時(shí)鐘的準(zhǔn)確性。NTPstat是Linux系統(tǒng)上可用的一種命令行工具,用于監(jiān)視和演示NTP客戶端的狀態(tài)。本篇文章將介紹NTPstat的用法和作用。

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

NTPstat工具簡(jiǎn)介

NTPstat是一種NTP客戶端狀態(tài)監(jiān)視器,用于監(jiān)視NTP客戶端的運(yùn)行狀態(tài)和服務(wù)器之間的連接狀態(tài)。NTPstat通常作為ntpd守護(hù)進(jìn)程的一部分,與ntpdc工具一起使用。NTPd是一個(gè)NTP守護(hù)進(jìn)程,可讓計(jì)算機(jī)與NTP服務(wù)器進(jìn)行交互,并以本地時(shí)鐘的方式跟蹤時(shí)間。

NTPd的主要任務(wù)是與NTP服務(wù)器進(jìn)行通信,獲取NTP服務(wù)器提供的時(shí)間信息,并將計(jì)算機(jī)時(shí)鐘同步到NTP服務(wù)器的UTC時(shí)間上。NTPstat工具可以使用與NTP服務(wù)器協(xié)議基本一致的命令行選項(xiàng)來(lái)控制NTP客戶端的狀態(tài),并顯示NTP客戶端的連接狀態(tài)和當(dāng)前同步時(shí)間。

安裝和使用NTPstat

在安裝和使用NTPstat之前,需要確保系統(tǒng)上已安裝NTP軟件。對(duì)于Debian/Ubuntu系統(tǒng),可以使用以下命令進(jìn)行安裝:

“`

sudo apt-get install ntp ntpdate

“`

對(duì)于CentOS/RHEL系統(tǒng),可以使用以下命令進(jìn)行安裝:

“`

sudo yum install ntp ntpdate

“`

安裝完成后,可以通過(guò)以下命令檢查NTPd和ntpstat是否已安裝:

“`

sudo service ntpd status

ntpstat

“`

執(zhí)行以上命令后,如果NTPd在運(yùn)行,則結(jié)果應(yīng)該如下:

“`

● ntpd.service – Network Time Service

Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: enabled)

Active: active (running) since Mon 2023-08-26 15:27:04 CST; 5min ago

Process: 25364 ExecStart=/usr/in/ntpd -u ntp:ntp $OPTIONS (code=exited, status=0/SUCCESS)

Mn PID: 25365 (ntpd)

Tasks: 1 (limit: 4915)

Memory: 3.0M

CGroup: /system.slice/ntpd.service

└─25365 /usr/in/ntpd -u ntp:ntp -g

“`

執(zhí)行ntpstat命令,結(jié)果應(yīng)該如下:

“`

synchronised to NTP server (192.168.1.2) at stratum 2

time correct to within 77 ms

polling server every 64 s

“`

這表示當(dāng)前系統(tǒng)的時(shí)鐘正在與指定的NTP服務(wù)器保持同步,并顯示了當(dāng)前時(shí)鐘的狀態(tài)、服務(wù)器信息和定期同步的間隔時(shí)間。

NTPstat命令的選項(xiàng)

NTPstat命令有以下選項(xiàng):

– -h: 顯示命令行幫助。

– -v: 詳細(xì)顯示NTP客戶端狀態(tài)信息。

– -q: 顯示NTP客戶端的近似延遲和偏差信息。

– -r: 顯示最近8次NTP服務(wù)的狀態(tài)信息。

– -o: 顯示NTP客戶端同NTP服務(wù)器之間的連接狀態(tài),包括超時(shí)、失去同步等信息。

使用以上選項(xiàng),可以詳細(xì)了解NTP客戶端的狀態(tài),以及NTP客戶端與服務(wù)器之間交互的性能和準(zhǔn)確性。

Linux系統(tǒng)上的NTP服務(wù)可以確保計(jì)算機(jī)時(shí)鐘的準(zhǔn)確性和一致性,對(duì)于跨越多個(gè)系統(tǒng)和網(wǎng)絡(luò)的大規(guī)模計(jì)算環(huán)境特別重要。NTPstat是一種在Linux系統(tǒng)上可用的NTP客戶端狀態(tài)監(jiān)視器,用于監(jiān)視和管理NTP客戶端的狀態(tài)和性能。通過(guò)使用NTPstat命令,可以深入了解NTP客戶端與NTP服務(wù)器之間的運(yùn)行狀態(tài)和時(shí)間同步的準(zhǔn)確性,從而優(yōu)化計(jì)算機(jī)系統(tǒng)的性能和穩(wěn)定性。

相關(guān)問(wèn)題拓展閱讀:

  • ntpd服務(wù)會(huì)占用服務(wù)器多少資源

ntpd服務(wù)會(huì)占用服務(wù)器多少資源

設(shè)置NTP服務(wù)器不難但是NTP本身是一個(gè)很復(fù)雜的協(xié)議. 這里只是簡(jiǎn)要地介紹一下實(shí)踐方法

和上次一州漏迅樣,下面的實(shí)驗(yàn)都在RHEL5上運(yùn)行

1. 時(shí)間和時(shí)區(qū)

如果有人問(wèn)你說(shuō)現(xiàn)在幾點(diǎn)? 你看了看表回答他說(shuō)晚上8點(diǎn)了. 這樣回答看上去沒(méi)有什么問(wèn)搜悄題,但是如果問(wèn)你的這個(gè)人在歐洲的話那么你的回答就會(huì)讓他很疑惑,因?yàn)樗抢镞€太陽(yáng)當(dāng)空呢.

這里就有產(chǎn)生了一個(gè)如何定義時(shí)間的問(wèn)題. 因?yàn)樵诘厍颦h(huán)繞太陽(yáng)旋轉(zhuǎn)的24個(gè)小時(shí)中,世界各地日出日落的時(shí)間是不一樣的.所以我們才有劃分時(shí)區(qū)(timezone) 的必要,也就是把全球劃分成24個(gè)不同的時(shí)區(qū). 所以我們可以把時(shí)間的定義理解為一個(gè)時(shí)間的值加上所在地的時(shí)區(qū)(注意這個(gè)所在地可以精確到城市)

地理課上我們都學(xué)過(guò)格林威治時(shí)間(GMT), 它也就是0時(shí)區(qū)時(shí)間. 但是我們?cè)谟?jì)算機(jī)中經(jīng)??吹降氖荱TC. 它是Coordinated Universal Time的簡(jiǎn)寫(xiě). 雖然可以認(rèn)為UTC和GMT的值相等(誤差相當(dāng)之小),但是UTC已經(jīng)被認(rèn)定為是國(guó)際標(biāo)準(zhǔn),所以我們都應(yīng)該遵守標(biāo)準(zhǔn)只使用UTC

那么假如現(xiàn)在中國(guó)當(dāng)?shù)氐臅r(shí)間是晚上8點(diǎn)的話,我們可以有下面兩種表示方式

20:00 CST

12:00 UTC

這里的CST是Chinese Standard Time,也就是我們通常所說(shuō)的北京時(shí)間了. 因?yàn)橹袊?guó)處在UTC+8時(shí)區(qū),依次類推那么也就是12:00 UTC了.

為什么要說(shuō)這些呢(呵呵這里不是地理論壇吧…)

之一,不管通過(guò)任何渠道我們想要同步系統(tǒng)的時(shí)間,通常提供方只會(huì)給出UTC+0的時(shí)間值而不會(huì)提供時(shí)區(qū)(因?yàn)樗恢滥阍谀睦?.所以當(dāng)我們?cè)O(shè)置系統(tǒng)時(shí)間的時(shí)候,設(shè)置好時(shí)區(qū)是首先要做的工作

第二冊(cè)此,很多國(guó)家都有夏令時(shí)(我記得小時(shí)候中國(guó)也實(shí)行過(guò)一次),那就是在一年當(dāng)中的某一天時(shí)鐘撥快一小時(shí)(比如從UTC+8一下變成UTC+9了),那么同理到時(shí)候還要再撥慢回來(lái).如果我們?cè)O(shè)置了正確的時(shí)區(qū),當(dāng)需要改變時(shí)間的時(shí)候系統(tǒng)就會(huì)自動(dòng)替我們調(diào)整

現(xiàn)在我們就來(lái)看一下如何在Linux下設(shè)置時(shí)區(qū),也就是time zone

2. 如何設(shè)置Linux Time Zone

在Linux下glibc提供了我們事先編譯好的許多timezone文件, 他們就放在/usr/share/zoneinfo這個(gè)目錄下,這里基本涵蓋了大部分的國(guó)家和城市

代碼:

# ls -F /usr/share/zoneinfo/

Africa/ Chile/ Factory Iceland Mexico/ posix/ Universal

America/ CST6CDT GBIndian/ Mideast/ posixrules US/

Antarctica/ Cuba GB-Eire IranMSTPRCUTC

Arctic/ EET GMTiso3166.tab MST7MDT PST8PDT WET

Asia/Egypt GMTIsraelNavajo right/ W-SU

Atlantic/ Eire GMTJamaica NZROCzone.tab

Australia/ EST GMT+JapanNZ-CHAT ROKZulu

Brazil/ EST5EDT Greenwich Kwajalein Pacific/ Singapore

Canada/ Etc/ Hongkong LibyaPoland Turkey

CETEurope/ HSTMETPortugal UCT在這里面我們就可以找到自己所在城市的time zone文件. 那么如果我們想查看對(duì)于每個(gè)time zone當(dāng)前的時(shí)間我們可以用zdump命令

代碼:

# zdump Hongkong

Hongkong Fri Jul 6 06:13:HKT那么我們又怎么來(lái)告訴系統(tǒng)我們所在time zone是哪個(gè)呢? 方法有很多,這里舉出兩種

之一個(gè)就是修改/etc/localtime這個(gè)文件,這個(gè)文件定義了我么所在的local time zone.

我們可以在/usr/share/zoneinfo下找到我們的time zone文件然后拷貝去到/etc/localtimezone(或者做個(gè)symbolic link)

假設(shè)我們現(xiàn)在的time zone是BST(也就是英國(guó)的夏令時(shí)間,UTC+1)

代碼:

# date

Thu Jul 5 23:33:40 BST 2023我們想把time zone換成上海所在的時(shí)區(qū)就可以這么做

代碼:

# ln -sf /usr/share/zoneinfo/posix/Asia/Shanghai /etc/localtime

# date

Fri Jul 6 06:35:52 CST 2023

這樣時(shí)區(qū)就改過(guò)來(lái)了(注意時(shí)間也做了相應(yīng)的調(diào)整)

第二種方法也就設(shè)置TZ環(huán)境變量的值. 許多程序和命令都會(huì)用到這個(gè)變量的值. TZ的值可以有多種格式,最簡(jiǎn)單的設(shè)置方法就是使用tzselect命令

代碼:

# tzselect

TZ=’America/Los_Angeles’;export TZtzselect

會(huì)讓你選擇所在的國(guó)家和城市(我省略了這些步驟),最后輸出相應(yīng)的TZ變量的值.那么如果你設(shè)置了TZ的值之后時(shí)區(qū)就又會(huì)發(fā)生變化

代碼:

# date

Thu Jul 5 15:48:11 PDT 2023

通過(guò)這兩個(gè)例子我們也可以發(fā)現(xiàn)TZ變量的值會(huì)override /etc/localtime. 也就是說(shuō)當(dāng)TZ變量沒(méi)有定義的時(shí)候系統(tǒng)才使用/etc/localtime來(lái)確定time zone. 所以你想永久修改time zone的話那么可以把TZ變量的設(shè)置寫(xiě)入/etc/profile里

好了現(xiàn)在我們知道怎么設(shè)置時(shí)區(qū)了,下面我們就來(lái)看看如何設(shè)置Linux的時(shí)間吧

3. Real Time Clock(RTC) and System Clock

說(shuō)道設(shè)置時(shí)間這里還要明確另外一個(gè)概念就是在一臺(tái)計(jì)算機(jī)上我們有兩個(gè)時(shí)鐘:一個(gè)稱之為硬件時(shí)間時(shí)鐘(RTC),還有一個(gè)稱之為系統(tǒng)時(shí)鐘(System Clock)

硬件時(shí)鐘是指嵌在主板上的特殊的電路, 它的存在就是平時(shí)我們關(guān)機(jī)之后還可以計(jì)算時(shí)間的原因

系統(tǒng)時(shí)鐘就是操作系統(tǒng)的kernel所用來(lái)計(jì)算時(shí)間的時(shí)鐘. 它從1970年1月1日00:00:00 UTC時(shí)間到目前為止秒數(shù)總和的值 在Linux下系統(tǒng)時(shí)間在開(kāi)機(jī)的時(shí)候會(huì)和硬件時(shí)間同步(synchronization),之后也就各自獨(dú)立運(yùn)行了

那么既然兩個(gè)時(shí)鐘獨(dú)自運(yùn)行,那么時(shí)間久了必然就會(huì)產(chǎn)生誤差了,下面我們來(lái)看一個(gè)例子

代碼:

# date

Fri Jul 6 00:27:13 BST 2023

# hwclock –show

Fri 06 Jul:27:17 AM BST -0.seconds

通過(guò)hwclock –show 命令我們可以查看機(jī)器上的硬件時(shí)間(always in local time zone), 我們可以看到它和系統(tǒng)時(shí)間還是有一定的誤差的, 那么我們就需要把他們同步

如果我們想要把硬件時(shí)間設(shè)置成系統(tǒng)時(shí)間我們可以運(yùn)行以下命令

代碼:

# hwclock –hctosys 反之,我們也可以把系統(tǒng)時(shí)間設(shè)置成硬件時(shí)間

代碼:

# hwclock –systohc 那么如果想設(shè)置硬件時(shí)間我們可以開(kāi)機(jī)的時(shí)候在BIOS里設(shè)定.也可以用hwclock命令

代碼:

# hwclock –set –date=”mm/dd/yy hh:mm:ss” 如果想要修改系統(tǒng)時(shí)間那么用date命令就最簡(jiǎn)單了

代碼:

# date -s “dd/mm/yyyy hh:mm:ss” 現(xiàn)在我們知道了如何設(shè)置系統(tǒng)和硬件的時(shí)間. 但問(wèn)題是如果這兩個(gè)時(shí)間都不準(zhǔn)確了怎么辦? 那么我們就需要在互聯(lián)網(wǎng)上找到一個(gè)可以提供我們準(zhǔn)確時(shí)間的服務(wù)器然后通過(guò)一種協(xié)議來(lái)同步我們的系統(tǒng)時(shí)間,那么這個(gè)協(xié)議就是NTP了. 注意接下去我們所要說(shuō)的同步就都是指系統(tǒng)時(shí)間和網(wǎng)絡(luò)服務(wù)器之間的同步了

4. 設(shè)置NTP Server前的準(zhǔn)備

其實(shí)這個(gè)標(biāo)題應(yīng)該改為設(shè)置”NTP Relay Server”前的準(zhǔn)備更加合適. 因?yàn)椴徽撐覀兊挠?jì)算機(jī)配置多好運(yùn)行時(shí)間久了都會(huì)產(chǎn)生誤差,所以不足以給互聯(lián)網(wǎng)上的其他服務(wù)器做NTP Server. 真正能夠精確地測(cè)算時(shí)間的還是原子鐘. 但由于原子鐘十分的昂貴,只有少部分組織擁有, 他們連接到計(jì)算機(jī)之后就成了一臺(tái)真正的NTP Server. 而我們所要做的就是連接到這些服務(wù)器上同步我們系統(tǒng)的時(shí)間,然后把我們自己的服務(wù)器做成NTP Relay Server再給互聯(lián)網(wǎng)或者是局域網(wǎng)內(nèi)的用戶提供同步服務(wù)

好了,前面講了一大堆理論,現(xiàn)在我們來(lái)動(dòng)手實(shí)踐一下吧. 架設(shè)一個(gè)NTP Relay Server其實(shí)非常簡(jiǎn)單,我們先把需要的RPM包裝上

是否已經(jīng)安裝了NTP包可以用這條命令來(lái)確定:

# rpm -qa | grep ntp

ntp-4.2.2p1-9.el5_4.1

chkfontpath-1.10.1-1.1

出現(xiàn)以上代碼則表示已安裝NTP包,否則用下面方法安裝:

代碼:

# rpm -ivh ntp-4.2.2p1-5.el5.rpm

那么之一步我們就要找到在互聯(lián)網(wǎng)上給我們提供同步服務(wù)的NTP Server

是NTP的官方網(wǎng)站,在這上面我們可以找到離我們城市最近的NTP Server. NTP建議我們?yōu)榱吮U蠒r(shí)間的準(zhǔn)確性,最少找兩個(gè)個(gè)NTP Server

那么比如在英國(guó)的話就可以選擇下面兩個(gè)服務(wù)器

0.uk.pool.ntp.org

1.uk.pool.ntp.org

它的一般格式都是number.country.pool.ntp.org

第二步要做的就是在打開(kāi)NTP服務(wù)器之前先和這些服務(wù)器做一個(gè)同步,使得我們機(jī)器的時(shí)間盡量接近標(biāo)準(zhǔn)時(shí)間.

這里我們可以用ntpdate命令手動(dòng)更新時(shí)間

代碼:

# ntpdate 0.uk.pool.ntp.org

6 Jul 01:21:49 ntpdate: step time server 213.222.193.35 offset.sec

# ntpdate 0.pool.ntp.org

6 Jul 01:21:56 ntpdate: adjust time server 213.222.193.35 offset -0.sec

假如你的時(shí)間差的很離譜的話之一次會(huì)看到調(diào)整的幅度比較大,所以保險(xiǎn)起見(jiàn)可以運(yùn)行兩次. 那么為什么在打開(kāi)NTP服務(wù)之前先要手動(dòng)運(yùn)行同步呢?

1. 因?yàn)楦鶕?jù)NTP的設(shè)置,如果你的系統(tǒng)時(shí)間比正確時(shí)間要快的話那么NTP是不會(huì)幫你調(diào)整的,所以要么你把時(shí)間設(shè)置回去,要么先做一個(gè)手動(dòng)同步

2. 當(dāng)你的時(shí)間設(shè)置和NTP服務(wù)器的時(shí)間相差很大的時(shí)候,NTP會(huì)花上較長(zhǎng)一段時(shí)間進(jìn)行調(diào)整.所以手動(dòng)同步可以減少這段時(shí)間

5. 配置和運(yùn)行NTP Server

現(xiàn)在我們就來(lái)創(chuàng)建NTP的配置文件了, 它就是/etc/ntp.conf. 我們只需要加入上面的NTP Server和一個(gè)driftfile就可以了

代碼:

# vi /etc/ntp.conf

server 210.72.145.#這是中國(guó)國(guó)家授時(shí)中心的IP

server 0.uk.pool.ntp.org

server 1.uk.pool.ntp.org

fudge 127.127.1.0 stratum 0 stratum 這行是時(shí)間服務(wù)器的層次。設(shè)為0則為頂級(jí),如果要向別的NTP服務(wù)器更新時(shí)間,請(qǐng)不要把它設(shè)為0

driftfile /var/lib/ntp/ntp.drift 非常的簡(jiǎn)單. 接下來(lái)我們就啟動(dòng)NTP Server,并且設(shè)置其在開(kāi)機(jī)后自動(dòng)運(yùn)行

代碼:

# /etc/init.d/ntpd start

# chkconfig –level 35 ntpd on

6. 查看NTP服務(wù)的運(yùn)行狀況

現(xiàn)在我們已經(jīng)啟動(dòng)了NTP的服務(wù),但是我們的系統(tǒng)時(shí)間到底和服務(wù)器同步了沒(méi)有呢? 為此NTP提供了一個(gè)很好的查看工具: ntpq (NTP query)

我建議大家在打開(kāi)NTP服務(wù)器后就可以運(yùn)行ntpq命令來(lái)監(jiān)測(cè)服務(wù)器的運(yùn)行.這里我們可以使用watch命令來(lái)查看一段時(shí)間內(nèi)服務(wù)器各項(xiàng)數(shù)值的變化

代碼:

# watch ntpq -p

Every 2.0s: ntpq -p Sat Jul 7 00:41:

remoterefid st t when poll reach delay offset jitter

===========================================================

+193.60.199..62.22.u7 8…032

*mozart.musicbox 192.5.41.u7 19…411

現(xiàn)在我就來(lái)解釋一下其中的含義

remote: 它指的就是本地機(jī)器所連接的遠(yuǎn)程N(yùn)TP服務(wù)器

refid: 它指的是給遠(yuǎn)程服務(wù)器(e.g. 193.60.199.75)提供時(shí)間同步的服務(wù)器

st: 遠(yuǎn)程服務(wù)器的層級(jí)別(stratum). 由于NTP是層型結(jié)構(gòu),有頂端的服務(wù)器,多層的Relay Server再到客戶端. 所以服務(wù)器從高到低級(jí)別可以設(shè)定為1-16. 為了減緩負(fù)荷和網(wǎng)絡(luò)堵塞,原則上應(yīng)該避免直接連接到級(jí)別為1的服務(wù)器的.

t: 這個(gè)…..我也不知道啥意思^_^

when: 我個(gè)人把它理解為一個(gè)計(jì)時(shí)器用來(lái)告訴我們還有多久本地機(jī)器就需要和遠(yuǎn)程服務(wù)器進(jìn)行一次時(shí)間同步

poll: 本地機(jī)和遠(yuǎn)程服務(wù)器多少時(shí)間進(jìn)行一次同步(單位為秒). 在一開(kāi)始運(yùn)行NTP的時(shí)候這個(gè)poll值會(huì)比較小,那樣和服務(wù)器同步的頻率也就增加了,可以盡快調(diào)整到正確的時(shí)間范圍.之后poll值會(huì)逐漸增大,同步的頻率也就會(huì)相應(yīng)減小

reach: 這是一個(gè)八進(jìn)制值,用來(lái)測(cè)試能否和服務(wù)器連接.每成功連接一次它的值就會(huì)增加

delay: 從本地機(jī)發(fā)送同步要求到服務(wù)器的round trip time

offset: 這是個(gè)最關(guān)鍵的值, 它告訴了我們本地機(jī)和服務(wù)器之間的時(shí)間差別. offset越接近于0,我們就和服務(wù)器的時(shí)間越接近

jitter: 這是一個(gè)用來(lái)做統(tǒng)計(jì)的值. 它統(tǒng)計(jì)了在特定個(gè)連續(xù)的連接數(shù)里offset的分布情況. 簡(jiǎn)單地說(shuō)這個(gè)數(shù)值的絕對(duì)值越小我們和服務(wù)器的時(shí)間就越精確

那么大家細(xì)心的話就會(huì)發(fā)現(xiàn)兩個(gè)問(wèn)題: 之一我們連接的是0.uk.pool.ntp.org為什么和remote server不一樣? 第二那個(gè)最前面的+和*都是什么意思呢?

之一個(gè)問(wèn)題不難理解,因?yàn)镹TP提供給我們的是一個(gè)cluster server所以每次連接的得到的服務(wù)器都有可能是不一樣.同樣這也告訴我們了在指定NTP Server的時(shí)候應(yīng)該使用hostname而不是IP

第二個(gè)問(wèn)題和之一個(gè)相關(guān),既然有這么多的服務(wù)器就是為了在發(fā)生問(wèn)題的時(shí)候其他的服務(wù)器還可以正常地給我們提供服務(wù).那么如何知道這些服務(wù)器的狀態(tài)呢? 這就是之一個(gè)記號(hào)會(huì)告訴我們的信息

* 它告訴我們遠(yuǎn)端的服務(wù)器已經(jīng)被確認(rèn)為我們的主NTP Server,我們系統(tǒng)的時(shí)間將由這臺(tái)機(jī)器所提供

+ 它將作為輔助的NTP Server和帶有*號(hào)的服務(wù)器一起為我們提供同步服務(wù). 當(dāng)*號(hào)服務(wù)器不可用時(shí)它就可以接管

- 遠(yuǎn)程服務(wù)器被clustering algorithm認(rèn)為是不合格的NTP Server

x 遠(yuǎn)程服務(wù)器不可用

了解這些之后我們就可以實(shí)時(shí)監(jiān)測(cè)我們系統(tǒng)的時(shí)間同步狀況了

7. NTP安全設(shè)置

運(yùn)行一個(gè)NTP Server不需要占用很多的系統(tǒng)資源,所以也不用專門(mén)配置獨(dú)立的服務(wù)器,就可以給許多client提供時(shí)間同步服務(wù), 但是一些基本的安全設(shè)置還是很有必要的

那么這里一個(gè)很簡(jiǎn)單的思路就是之一我們只允許局域網(wǎng)內(nèi)一部分的用戶連接到我們的服務(wù)器. 第二個(gè)就是這些client不能修改我們服務(wù)器上的時(shí)間

關(guān)于權(quán)限設(shè)定部分

權(quán)限的設(shè)定主要以 restrict 這個(gè)參數(shù)來(lái)設(shè)定,主要的語(yǔ)法為:

restrict IP地址 mask 子網(wǎng)掩碼 參數(shù)

其中 IP 可以是IP地址,也可以是 default ,default 就是指所有的IP

參數(shù)有以下幾個(gè):

ignore?。宏P(guān)閉所有的 NTP 聯(lián)機(jī)服務(wù)

nomodify:客戶端不能更改服務(wù)端的時(shí)間參數(shù),但是客戶端可以通過(guò)服務(wù)端進(jìn)行網(wǎng)絡(luò)校時(shí)。

notrust :客戶端除非通過(guò)認(rèn)證,否則該客戶端來(lái)源將被視為不信任子網(wǎng)

noquery :不提供客戶端的時(shí)間查詢

注意:如果參數(shù)沒(méi)有設(shè)定,那就表示該 IP (或子網(wǎng))沒(méi)有任何限制!

在/etc/ntp.conf文件中我們可以用restrict關(guān)鍵字來(lái)配置上面的要求

首先我們對(duì)于默認(rèn)的client拒絕所有的操作

代碼:

restrict default kod nomodify notrap nopeer noquery

然后允許本機(jī)地址一切的操作

代碼:

restrict 127.0.0.1

最后我們?cè)试S局域網(wǎng)內(nèi)所有client連接到這臺(tái)服務(wù)器同步時(shí)間.但是拒絕讓他們修改服務(wù)器上的時(shí)間

代碼:

restrict 192.168.1.0 mask 255.255.255.0 nomodify

把這三條加入到/etc/ntp.conf中就完成了我們的簡(jiǎn)單配置. NTP還可以用key來(lái)做authentication,這里就不詳細(xì)介紹了

8. NTP client的設(shè)置

做到這里我們已經(jīng)有了一臺(tái)自己的Relay Server.如果我們想讓局域網(wǎng)內(nèi)的其他client都進(jìn)行時(shí)間同步的話那么我們就都應(yīng)該照樣再搭建一臺(tái)Relay Server,然后把所有的client都指向這兩臺(tái)服務(wù)器(注意不要把所有的client都指向Internet上的服務(wù)器). 只要在client的/etc/ntp.conf加上這你自己的服務(wù)器就可以了

代碼:

server ntp1.leonard.com

server ntp2.leonard.com

LINUX客戶端使用

ntpdate 172.30.218.114

來(lái)向NTP服務(wù)器同步自己的時(shí)間

其它LINUX如果僅作為只客戶端的話,則不能啟動(dòng)ntpd服務(wù)!否則無(wú)法運(yùn)行ntpdata 服務(wù)器地址 來(lái)同步時(shí)間

之后可以使用cron或修改crontab文件定期向NTP服務(wù)器更新時(shí)間,并用

# hwclock –systohc

將系統(tǒng)時(shí)間設(shè)置為硬件時(shí)間

9. 一些補(bǔ)充和拾遺(挺重要)

1. 配置文件中的driftfile是什么?

我們每一個(gè)system clock的頻率都有小小的誤差,這個(gè)就是為什么機(jī)器運(yùn)行一段時(shí)間后會(huì)不精確. NTP會(huì)自動(dòng)來(lái)監(jiān)測(cè)我們時(shí)鐘的誤差值并予以調(diào)整.但問(wèn)題是這是一個(gè)冗長(zhǎng)的過(guò)程,所以它會(huì)把記錄下來(lái)的誤差先寫(xiě)入driftfile.這樣即使你重新開(kāi)機(jī)以后之前的計(jì)算結(jié)果也就不會(huì)丟失了

2. 如何同步硬件時(shí)鐘?

NTP一般只會(huì)同步system clock. 但是如果我們也要同步RTC(hwclock)的話那么只需要把下面的選項(xiàng)打開(kāi)就可以了

代碼:

# vi /etc/sysconfig/ntpd

SYNC_HWCLOCK=yes

3、利用crontab讓LINUX NTP定時(shí)更新時(shí)間

注:讓linux運(yùn)行ntpdate更新時(shí)間時(shí),linux不能開(kāi)啟NTP服務(wù),否則會(huì)提示端口被占用:如下

# ntpdate 1.rhel.pool.ntp.org

20 May 09:34:14 ntpdate: the NTP socket is in use, exiting

crontab文件配置簡(jiǎn)要說(shuō)明

命令格式的前一部分是對(duì)時(shí)間的設(shè)定,后面一部分是要執(zhí)行的命令。時(shí)間的設(shè)定我們有一定的約定,前面五個(gè)*號(hào)代表五個(gè)數(shù)字,數(shù)字的取值范圍和含義如下:

分鐘 (0-59)

小時(shí) (0-23)

日期 (1-31)

月份 (1-12)

星期 (0-6)//0代表星期天

除了數(shù)字還有幾個(gè)個(gè)特殊的符號(hào)就是“*”、“/”和“-”、“,”,“*”代表所有的取值范圍內(nèi)的數(shù)字,“/”代表每的意思,“*/5”表示每5個(gè)單位,“-”代表從某個(gè)數(shù)字到某個(gè)數(shù)字,“,”分開(kāi)幾個(gè)離散的數(shù)字。以下舉幾個(gè)例子說(shuō)明問(wèn)題:

每天早上6點(diǎn):

0 6 * * * command

每?jī)蓚€(gè)小時(shí):

0 */2 * * * command

晚上11點(diǎn)到早上8點(diǎn)之間每?jī)蓚€(gè)小時(shí),早上八點(diǎn):

0 23-7/2,8 * * * command

每個(gè)月的4號(hào)和每個(gè)禮拜的禮拜一到禮拜三的早上11點(diǎn):

* 1-3 command

1月1日早上4點(diǎn):

* command

3.3、設(shè)置開(kāi)機(jī)自動(dòng)啟動(dòng)服務(wù)

運(yùn)行setup或其它服務(wù)設(shè)置工具,將crond服務(wù)勾選上

chkconfig –level 2345 crond on 定義在這幾個(gè)系統(tǒng)運(yùn)行級(jí)別上啟用crond (系統(tǒng)安裝完默認(rèn)就是這個(gè)設(shè)置)

__________________________________________

10.NTP客戶端的設(shè)置

一、LINUX做為客戶端自動(dòng)同步時(shí)間

如果想定時(shí)進(jìn)行時(shí)間校準(zhǔn),可以使用crond服務(wù)來(lái)定時(shí)執(zhí)行。

編輯 /etc/crontab 文件

加入下面一行:

30 8 * * * root /usr/in/ntpdate 192.168.0.1; /in/hwclock -w #192.168.0.1是NTP服務(wù)器的IP地址

然后重啟crond服務(wù)

service crond restart

這樣,每天 8:30 Linux 系統(tǒng)就會(huì)自動(dòng)的進(jìn)行網(wǎng)絡(luò)時(shí)間校準(zhǔn)。

二、WINDOWS 需要打開(kāi)windows time服務(wù)和RPC的二個(gè)服務(wù)

如果在打開(kāi)windows time 服務(wù),時(shí)報(bào) 錯(cuò)誤1058,進(jìn)行下面操作

1.運(yùn)行 cmd 進(jìn)入命令行,然后鍵入

w32tm /register 進(jìn)行注冊(cè)

正確的響應(yīng)為:W32Time 成功注冊(cè)。

2.如果上一步正確,用 net start “windows time” 或 net start w32time 啟動(dòng)服務(wù)。

11.其它造成無(wú)法成功更新的原因:

1、客戶端的日期必須要設(shè)置正確,不能超出正常時(shí)間24小時(shí),不然會(huì)因?yàn)榘踩虮痪芙^更新。其次客戶端的時(shí)區(qū)必須要設(shè)置好,以確保不會(huì)更新成其它時(shí)區(qū)的時(shí)間。

2、fudge 127.127.1.0 stratum 10 如果是LINUX做為NTP服務(wù)器,stratum(層級(jí))的值不能太大,如果要向上級(jí)NTP更新可以設(shè)成2

3、LINUX的NTP服務(wù)器必須記得將從上級(jí)NTP更新的時(shí)間從系統(tǒng)時(shí)間寫(xiě)到硬件里去 hwclock –systohc

NTP一般只會(huì)同步system clock. 但是如果我們也要同步RTC(hwclock)的話那么只需要把下面的選項(xiàng)打開(kāi)就可以了

代碼:

# vi /etc/sysconfig/ntpd

SYNC_HWCLOCK=yes

4、Linux如果開(kāi)啟了NTP服務(wù),則不能手動(dòng)運(yùn)行ntpdate更新時(shí)間(會(huì)報(bào)端口被占用),它只能根據(jù)/etc/ntp.conf 里server 字段后的服務(wù)器地址按一定時(shí)間間隔自動(dòng)向上級(jí)NTP服務(wù)器更新時(shí)間??梢赃\(yùn)行命令 ntpstat 查看每次更新間隔如:

# ntpstat

synchronised to NTP server (210.72.145.44) at stratum 2 #本NTP服務(wù)器層次為2,已向210.72.145.44 NTP同步過(guò)

time correct to within 93 ms #時(shí)間校正到相差93ms之內(nèi)

polling server every 1024 s#每1024秒會(huì)向上級(jí)NTP輪詢更新一次時(shí)間

linux ntpstat的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于linux ntpstat,了解 Linux 時(shí)間同步:NTPstat 的作用與用法,ntpd服務(wù)會(huì)占用服務(wù)器多少資源的信息別忘了在本站進(jìn)行查找喔。

創(chuàng)新互聯(lián)成都網(wǎng)站建設(shè)公司提供專業(yè)的建站服務(wù),為您量身定制,歡迎來(lái)電(028-86922220)為您打造專屬于企業(yè)本身的網(wǎng)絡(luò)品牌形象。
成都創(chuàng)新互聯(lián)品牌官網(wǎng)提供專業(yè)的網(wǎng)站建設(shè)、設(shè)計(jì)、制作等服務(wù),是一家以網(wǎng)站建設(shè)為主要業(yè)務(wù)的公司,在網(wǎng)站建設(shè)、設(shè)計(jì)和制作領(lǐng)域具有豐富的經(jīng)驗(yàn)。


當(dāng)前題目:了解Linux時(shí)間同步:NTPstat的作用與用法(linuxntpstat)
網(wǎng)站地址:http://m.5511xx.com/article/dhdghdo.html