RHCE實驗室NTP時間伺服器配置最終版

2021-09-21 15:19:46 字數 3939 閱讀 3445

以rhce實驗室為準,乙個簡單的ntp時間伺服器標準配置如下:

伺服器端: 

首先修正下系統時間,並將系統時間寫進硬體時間裡 

date mmddhhmmyyyy.ss;hwclock -w

vim /etc/ntp.conf

restrict default nomodify notrap noquery

restrict 127.0.0.1

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

server 127.127.1.0

fudge 127.127.1.0 stratum 0

客戶機端:

vim /etc/ntp.conf

server 192.168.1.2

vim /etc/ntp/step-ticker

192.168.1.2

客戶端重啟ntpd服務即可看到效果 service ntpd restart

※在授課過程發現,虛擬的linux的時間比真實機越走越慢,具體原因分析如下:

linux 2.6核心裡把系統計時器的頻率加高到1000 hz ,vmware沒辦法真的每隔1ms就報一次訊號給guestos,所以guestos裡的linux 2.6無法確實接到計時器的訊號。本來這也不應該造成問題,不過2.6核心處理這個"tick loss"的程式有問題,以致於guestos裡的linux 2.6系統時間走一秒會慢一秒;外面過了兩秒裡面只過了一秒。具體解決方案也有:可以修改核心及安裝vmware-tools軟體包,均麻煩。

下面是我家裡的vmware5.5虛擬機器(如果不能上外網的話,可以選擇內部ntp時間伺服器)

①直接用指令碼解決不能對時的問題,指令碼如下: /root/ntptime.sh

#!/bin/bash

while :

do/usr/sbin/ntpdate ntp.api.bz >/dev/null 2>&1

sleep 30

done

放入後台執行 nohup sh ntptime.sh &  

②當然還是crontab出馬了,在這裡注意下指令碼與crontab的區別,指令碼可以控制到秒,而crontab只能到分 vim /etc/crontab

*/1 * * * * root /usr/sbin/ntpdate ntp.api.bz >/dev/null 2>&1

效果很明顯,每隔一分鐘,系統自動對時,呵呵。

[root@ltos mail]# tcpdump -v host 192.168.0.154 and 221.130.196.230

tcpdump: listening on eth0, link-type en10mb (ethernet), capture size 96 bytes

13:16:02.359384 ip (tos 0x0, ttl 64, id 0, offset 0, flags [df], proto: udp (17), length: 76) yuhongchun027.com.ntp > 221.130.196.230.ntp: ntpv4, length 48

client, leap indicator: clock unsynchronized (192), stratum 0, poll 4s, precision -6

root delay: 1.000000, root dispersion: 1.000000, reference-id: (unspec)

reference timestamp: 0.000000000

originator timestamp: 0.000000000

receive timestamp:    0.000000000

transmit timestamp:   3464918162.358386999 (2009/10/19 13:16:02)

originator - receive timestamp: 0.000000000

originator - transmit timestamp: 3464918162.358386999 (2009/10/19 13:16:02)

13:16:02.511502 ip (tos 0x0, ttl 49, id 5224, offset 0, flags [none], proto: udp (17), length: 76) 221.130.196.230.ntp > yuhongchun027.com.ntp: ntpv4, length 48

server, leap indicator: (0), stratum 2, poll 4s, precision -18

root delay: 0.158142, root dispersion: 0.027862, reference-id: clock.fmt.he.net

reference timestamp: 3464917189.288964740 (2009/10/19 12:59:49)

originator timestamp: 3464918162.358386999 (2009/10/19 13:16:02)

receive timestamp:    3464918182.209876791 (2009/10/19 13:16:22)

transmit timestamp:   3464918182.209906405 (2009/10/19 13:16:22)

originator - receive timestamp: +19.851489782

originator - transmit timestamp: +19.851519405

13:16:02.512579 ip (tos 0x0, ttl 64, id 0, offset 0, flags [df], proto: udp (17), length: 76) yuhongchun027.com.ntp > 221.130.196.230.ntp: ntpv4, length 48

client, leap indicator: clock unsynchronized (192), stratum 0, poll 4s, precision -6

root delay: 1.000000, root dispersion: 1.000000, reference-id: (unspec)

reference timestamp: 0.000000000

originator timestamp: 0.000000000

receive timestamp:    0.000000000

transmit timestamp:   3464918162.512529999 (2009/10/19 13:16:02)

originator - receive timestamp: 0.000000000

originator - transmit timestamp: 3464918162.512529999 (2009/10/19 13:16:02)

13:16:02.688528 ip (tos 0x0, ttl 49, id 5242, offset 0, flags [none], proto: udp (17), length: 76) 221.130.196.230.ntp > yuhongchun027.com.ntp: ntpv4, length 48

server, leap indicator: (0), stratum 2, poll 4s, precision -18

root delay: 0.158142, root dispersion: 0.027862, reference-id: clock.fmt.he.net

※另外值得注意的是,儘管時間是一件很麻煩的事(還有utc與gmt、系統時間與硬體時間的區別),但其實在生產環境中,這件事很簡單--伺服器投入執行之前必須用crontab對時;如果時間不同步的話是件很麻煩的事,我維護的dovecot伺服器經常因為時間問題出問題,還有freebsd下的jail虛擬機器。所以時間的同步是linux/unix一件非常重要的事情,希望大家注意。

實驗室伺服器配置

伺服器日常管理 圖中lsi 9271 81應是 lsi 9271 8i。商家安裝了ubuntu18.04系統,磁碟陣列選擇raid5,raid5兼顧安全性和空間利用率。raid級別01 35容錯性nyy y冗餘型別n複製 奇偶校驗 奇偶校驗 熱備份選擇ny yy硬碟要求 乙個或多個 偶數個至少三個 ...

實驗室新到伺服器,伺服器配置

一 新增使用者 useradd m iip passwd iip 便建立了在 home下的對應使用者名稱的資料夾 二 伺服器配置檢驗 檢視cpu型號機器架構 lscpu 檢視cpu個數 cat proc cpuinfo grep physical id sort uniq wc l 檢視記憶體 su...

實驗室伺服器串列埠配置

1.uefi安裝,所以啟動檔案的配置為 boot efi efi redhat grub.cfg,或者直接修改 etc grub2 efi.cfg 2.修改啟動啟動引數,新增如下引數 console tty0 console ttys0,115200 並且去掉quite引數 3.通過console找...