㈠ linux上的時間伺服器必須要與外網做時間同步嗎內網的時間同步伺服器如何搭建(不能與外網通信的)
搭建一個ntp伺服器就行,其他機器都同步它的時間
㈡ linux上ntp時鍾伺服器搭建
配置的時鍾伺服器的ip地址為192.168.100.116
第一步 為伺服器和客戶機安裝ntp ntpdate
[root@sql-proxy1 app]#yum install ntp ntpdate -y第二步 查找時間同步伺服器
http://www.pool.ntp.org/zone/asia #在裡面可以找到中國第三步 編輯 /etc/ntp.conf
[root@sql-proxy1 app]#vim /etc/ntp.conf server 0.cn.pool.ntp.org
server 1.cn.pool.ntp.org
server 2.cn.pool.ntp.org
server 3.cn.pool.ntp.org #以上四個是時間同步伺服器server 127.127.1.0 iburst local clock #當外部時間不可用時,使用本地時間restrict 192.168.10.1 mask 255.255.255.0 nomodify #允許更新的IP地址段第四步 啟動ntp服務
[root@sql-proxy1 app]#systemctl start ntpd第五步 驗證服務
[root@sql-proxy1 app]#ntpq -p remote refid st t when poll reach delay offset jitter
==============================================================================
120.25.115.19 .INIT. 16 u - 64 0 0.000 0.000 0.000
ntp6.flashdance .INIT. 16 u - 64 0 0.000 0.000 0.000
time5.aliyun.co .INIT. 16 u - 64 0 0.000 0.000 0.000
85.199.214.101 .INIT. 16 u - 64 0 0.000 0.000 0.000
biisoni.miuku.n .INIT. 16 u - 64 0 0.000 0.000 0.000
ntp5.flashdance .INIT. 16 u - 64 0 0.000 0.000 0.000
leontp.ccgs.wa. .INIT. 16 u - 64 0 0.000 0.000 0.000
ntp1.ams1.nl.le .INIT. 16 u - 64 0 0.000 0.000 0.000
*LOCAL(0) .LOCL. 叢明沒 5 l 7 64 1 0.000 0.000 0.000
第六步 遠程客戶端時間同步測試
[root@sql-mysql2 ~]#ntpdate 192.168.10.116 17 Dec 20:55:08 ntpdate[11904]: adjust time server 172.18.68.31 offset -0.000067 sec
第七步 客戶端滲納設置計劃任務,每天晚上1點同步時間
crontab -e
00 01 * * * root /usr/sbin/ntpdate 192.168.10.116; /usr/sbin/clock -w
EDT 時間即美國東部時間。這里要改為北京時間即可:
命令如下:
root@ubuntu# mv /etc/localtime /etc/localtime.bak
root@ubuntu# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
root@ubuntu# date
修改116伺服器本機的ntp時間槐滲同步
systemctl stop ntpd
ntpdate cn.pool.ntp.org
systemctl start ntpd
rpm -qa |grep ntp #檢查ntp版本
service ntpd status #查詢ntp服務狀態
service ntpd start #啟動
service ntpd stop #停止
service ntpd restart #重啟
ntpq -p #查看ntp伺服器與上層ntp的狀態
㈢ 如何將linux系統部署成ntp伺服器
三、什麼是NTP
為了實現時間同步,我們就需要用戶NTP(Network Time Protocol)這個協議。如圖1所示。簡單地說,NTP是用來使系統和一個精確的時間源保持時間同步的協議。筆者建議管理員最好在自己管理的網路中建立至少一台時間伺服器來同步本地時間。
如 果在一個公司的區域網中,如果讓每個員工通過手動的方式每隔一段時間去校準時間,不但不利於管理,而且校準目標時間源也不一定準確。公司區域網絡中不同計 算機的時間偏差尤其是客戶機/伺服器之間的時間偏差,就會對一些要求時間同步的服務產生影響。比如,為了管理方便,伺服器設置了一到下班時間便 賬號過期,用戶無法訪問Internet網路。而如果你的電腦時間與伺服器的時間不同步,當你為你下班時間未到,正准備發送郵件時,或許在伺服器的時間 上,你的賬號便過期了,從而導到無法發送郵件。解決這種問題的方法很簡單,就是建立一個能提供精確時間的伺服器,區域網內的所有電腦統一通過這台時間服務 器進行時間同步、校準。
四、NTP伺服器安裝
現在,我們就來介紹一下,如何在Linux系統下,建立一個NTP伺服器吧。在本文中,我們採用的是Fedora 2操作系統作為例子 (其它版本Linux也可以,系統的配置類似)。
使用 RPM 安裝
首先輸入如下指令
rpm -q ntp
查詢本機是否安裝了NTP軟體包。如果沒有安裝的話,找到您的 Linux 的安裝光碟,mount 上後,查找以NTP開頭的軟體包名,然後安裝上去,就可以了!
rpm –ivh ntp-4.1.2-5.i386.rpm
五、NTP服務的設置
1.NTP軟體包的結構
NTP服務的配置文件:
/etc/ntp.conf :這個是 NTP 服務的主要配置文件,不同的Linux版本文件所在的目錄可能會不同!
與NTP服務有關的Linux 系統文件及目錄:
/usr/share/zoneinfo:這是個目錄,在這個目錄下是規定了各主要時區的時間設定文件,例如中國大陸地區的時區設置文件是 /usr/share/zoneinfo/Asia/Shanghai 。
/etc /sysconfig/clock:這個文件是Linux 的主要時區設定文件。每次啟動後,Linux 會自動讀取這個文件來設定系統預設要顯示的時間!比如這個文件內容為「ZONE=Asia/Shanghai」,這表示我們的時間設定使用 /usr/share/zoneinfo/Asia/Shanghai 這個文件!
/etc/localtime:這個文件是本地系 統的時間設定文件! 假設clock 文件裡面規定了使用的時間設定文件為 /usr/share/zoneinfo/Asia/Shanghai, Linux 系統就會將 Shanghai那個文件復制一份為 /etc/localtime ,所以系統的時間顯示就會以 Shanghai 那個時間設定文件為准。假設這台主機到了美國紐約,您只要將 /etc/sysconfig/clock 裡面的ZONE 設定成為ZONE="America/New_York" 並且將/usr/share/zoneinfo/America/New_York復製成為 /etc/localtime ,其它什麼設置都不需要改動,系統的顯示時間就是美國紐約當地的時間了!
與 NTP 及系統時間有關的執行文件:
/bin/date: Linux 系統上面的日期與時間修改及輸出命令。
/sbin /hwclock:因為主機的 BIOS 時間與 Linux 系統時間是分開的,所以使用 date 這個指令調整了時間之後,只是調整了linux的系統時間,還需要使用 hwclock 才能將修改過後的時間寫入 BIOS。這個命令必須root用戶才能執行 。
/usr/sbin/ntpd:NTP服務的守護進程文件,需要啟動它才能提供NTP服務。
/usr/sbin/ntpdate:NTP客戶端用來連接NTP伺服器命令文件。
2.NTP服務端的設置
編輯 /etc/ntp.conf 文件
關於許可權設定部分
許可權的設定主要以 restrict 這個參數來設定,主要的語法為:
restrict IP地址 mask 子網掩碼 參數
其中 IP 可以是IP地址,也可以是 default ,default 就是指所有的IP
參數有以下幾個:
ignore:關閉所有的 NTP 聯機服務
nomodify:客戶端不能更改服務端的時間參數,但是客戶端可以通過服務端進行網路校時。
notrust :客戶端除非通過認證,否則該客戶端來源將被視為不信任子網
noquery :不提供客戶端的時間查詢
注意:如果參數沒有設定,那就表示該 IP (或子網)沒有任何限制!
上級時間伺服器的設定
由於我們配置的NTP 伺服器需要網路上面時間比較准確的NTP伺服器來更新自己的時間,所以在我們的 NTP 伺服器上面要配置一部上級時間伺服器來進行校準!在 Internet 上面提供了許多時間伺服器,從下面地址找一個離你最近的
http://www.eecis.udel.e/~mills/ntp/clock1a.html
用server這個參數設定上級時間伺服器,語法為:
server IP地址或域名 [prefer]
IP地址或域名就是我們指定的上級時間伺服器,如果 Server 參數最後加上 prefer,表示我們的 NTP 伺服器主要以該部主機時間進行校準。
解決NTP伺服器校準時間時的傳送延遲
使用driftfile參數設置:
driftfile 文件名
在與上級時間伺服器聯系時所花費的時間,記錄在driftfile參數後面的文件內。
注意: driftfile 後面接的文件需要使用完整的路徑文件名,不能是鏈接文件,並且文件的許可權需要設定成 ntpd守護進程可以寫入。
ntp.conf文件舉例:
設置要求:不對 Internet 提供服務,僅對內部子網 192.168.0.0/24 提供服務,NTP 伺服器的上級時間主機為:clock.nc.fukuoka-u.ac.jp和ntp.nasa.gov,內部子網的客戶端不能修改NTP伺服器的時間參數。
在ntp.conf中增加以下內容:
restrict default ignore# 關閉所有的 NTP 要求封包
restrict 127.0.0.1 # 開啟內部遞歸網路介面 lo
restrict 192.168.0.0 mask 255.255.255.0 nomodify #在內部子網裡面的客戶端可以 進行網路校時,但不能修改NTP伺服器的時間參數。
server 133.100.9.2 prefer #用133.100.9.2做上級時間伺服器
server 198.123.30.132 #198.123.30.132作為上級時間伺服器參考
restrict 133.100.9.2 #開放server 訪問我們ntp服務的許可權
restrict 198.123.30.132
driftfile /var/lib/ntp/drift
保存退出後。啟動NTP服務
service ntpd start
如果想每次系統啟動,NTP服務自動啟動,請輸入下面命令: chkconfig -level 35 ntpd on 注意:
1.NTP服務的埠是123,使用的是udp協議,所以NTP伺服器的防火牆必須對外開放udp 123這個埠。
2.Ntpd啟動的時候通常需要一段時間進行時間同步,所以在ntpd剛剛啟動的時候還不能正常提供時鍾服務,最長大概有5分鍾吧,如果超過了這個時間請檢查一下您的配置文件。
六、NTP客戶端的使用
Linux系統
在Linux 上面進行網路校時非常簡單,執行 ntpdate 即可:
ntpdate 192.168.0.1 #192.168.0.1是NTP伺服器的IP
不要忘了使用hwclock命令,把時間寫入bios
hwclock -w
如果想定時進行時間校準,可以使用crond服務來定時執行。
編輯 /etc/crontab 文件
加入下面一行:
30 8 * * * root /usr/sbin/ntpdate 192.168.0.1; /sbin/hwclock -w #192.168.0.1是NTP伺服器的IP地址
然後重啟crond服務
service crond restart
這樣,每天 8:30 Linux 系統就會自動的進行網路時間校準。
Windows 系統
在 Windows XP上面使用NTP進行時間校準也很簡單:
雙擊桌面任務欄上的時間,彈出「日期和時間」屬性窗口,如圖所示:
選擇Internet時間,在伺服器中填入你的NTP伺服器的IP地址或者域名,然後點擊立即更新,您的系統時間就會立即更新。如果想定時更新,把左上角的自動與Internet時間伺服器同步選中,然後點擊右下角的應用即可。
yy-2-3.tif
如 果不是Windows XP系統,但是NTP伺服器同時也是samba伺服器的話,則對Windows來說,不需要安裝任何時間同步軟體,因為Windows客戶端可以用net time\\時間伺服器IP或伺服器netbios名/set/yes來同步。可以把該命令放在開始菜單的啟動項中,啟動windows時自動同步。
由於net time命令是利用Netbios over TCP/IP協議來同步時間,所以NTP伺服器不同時是samba 伺服器的話,就需要Windows客戶端安裝時間同步軟體。這方面的軟體很多,使用也很簡單,讀者可以上網查找一下。
㈣ Linux下如何搭建本地時間伺服器
你可以在Linux上單間
ntp服務。
NTP提供准確時間,首先要有準確的時間來源,這一時間應該是國際標准時間UTC。
NTP獲得UTC的時間來源可以是原子鍾、天文台、衛星,也可以從Internet上獲取。這樣就有了准確而可靠的時間源。時間按NTP伺服器的等級傳播。按照離外部UTC
源的遠近將所有伺服器歸入不同的Stratum(層)中。Stratum-1在頂層,有外部UTC接入,而Stratum-2則從Stratum-1獲取時間,Stratum-3從Stratum-2獲取時間,以此類推,但Stratum層的總數限制在15以內。所有這些伺服器在邏輯上形成階梯式的架構相互連接,而Stratum-1的時間伺服器是整個系統的基礎。
計算機主機一般同多個時間伺服器連接,
利用統計學的演算法過濾來自不同伺服器的時間,以選擇最佳的路徑和來源來校正主機時間。即使主機在長時間無法與某一時間伺服器相聯系的情況下,NTP服務依然有效運轉。
為防止對時間伺服器的惡意破壞,NTP使用了識別(Authentication)機制,檢查來對時的信息是否是真正來自所宣稱的伺服器並檢查資料的返迴路徑,以提供對抗干擾的保護機制。
㈤ 如何建立linux 時間同步 伺服器
一、執行步驟:1.以root身份登錄
2.查看系統時間(date)和系統bios時間(hwclock或/sbin/hwclock)
3.在/usr/sbin下,使用命令 ntpdate 132.163.4.102 使系統時間和時間伺服器時間同步.
4.將系統時間寫入bios(hwclock -w)
5.再次查看系統時間和系統bios時間
6.以上工作僅是當前的時間同步,所以還需執行以下工作:
使用crontab -e 命令將每小時執行一次/usr/sbin/ntpdate 132.163.4.102;/sbin/hwclock -w;的任務加入到任務管理器。
假如以下內容:0 1 * * * /usr/sbin/ntpdate 132.163.4.102;/sbin/hwclock -w;
二、加入計劃任務:
1.使用以下命令編輯任務管理器
crontab -e
2.將以下語句加入到任務管理器中,其用途是:每小時執行一次/usr/sbin/ntpdate 132.163.4.102;/sbin/hwclock -w;
註:執行任務計劃的時間隨機訂
之上是總結,按之上步驟來即可,以下參考就行:
先進入到路徑:
/usr/sbin/下
使用其中的同步工具ntpdate,同步的時間伺服器為:asia.pool.ntp.org
使用方法:
./ntpdate asia.pool.ntp.org
標准時間同步方法:
分布操作:
察看bios時間與系統時間
hwclock
察看系統時間
date
使用ntpdate命令使系統時間與時間伺服器同步
ntpdate ntp1.nl.net
將系統時間寫入bios
hwclock -w
三、解決辦法使用:
1.使用以下命令編輯任務管理器
㈥ Linux集群系統時間同步
環境准備:
要做到伺服器集群的時間同步,集群中各台機器的時區必須相同的,我們在國內就使用中國時區,如果你的機器的時區不是"Asia/Shanghai",需要修改時區
CentOS 中時區是以文件形式存在,當前正在使用的時區文件位於
/etc/localtime ,其他時區文件則位於 /usr/share/zoneinfo 下,中國時區的文件全路徑是 /usr/share/zoneinfo/Asia/Shanghai
要更改時區,直接使用如下命令就OK
需要使用 tzselect 命令去生成時區文件,生成好的時區文件就在/usr/share/zoneinfo 目錄下,具體步驟去下:
使用 date -s 命令來修改系統時間
讓集群所有的伺服器的時間同步,就用遠程連接工具連接所有伺服器,然後在所有的伺服器中同時執行 date -s 命令設置時間,然後在所有的伺服器中執行 hwclock -w 命令即可
美國標准技術院時間伺服器:time.nist.gov(192.43.244.18)
上海交通大學網路中心NTP伺服器地址:ntp.sjtu.e.cn(202.120.2.101)
中國國家授時中心伺服器地址:cn.pool.ntp.org(210.72.145.44)
若以上提供的網路時間伺服器不可用,請自行上網尋找可用的網路時間伺服器
<1> 使用命令: crontab -e
<2> 然後往裡加入一行內容
上面的配置表示,每隔十分鍾從 202.120.2.101 該時間伺服器同步一次時間。
<3> 保存退出
以上兩步操作可以讓node01這個伺服器每隔10分鍾去指定的伺服器同步時間,如果需要讓集群中的所有伺服器(hadoop01-hadoop04)時間同步,那麼每台伺服器都要做以上兩步操作。
node01的IP為192.168.21.101,讓它作為時間伺服器,192.168.21.0區域網內的所有伺服器都向它同步時間,而node01這台時間伺服器本身,向外網時間伺服器同步時間(比如中國國家授時中心伺服器)
我用node01
我去掉了所有的默認注釋,對其中的修改寫了自己的注釋,沒有寫注釋的是默認配置
因為ntpd服務開啟之後,就不能手動同步時間了,那麼為什麼要先手動同步時間呢?
當server(中國國家授時中心伺服器)與client(node01)之間的時間誤差過大時(可能是1000秒),node01去同步時間可能對系統和應用帶來不可預知的問題,node01將停止時間同步!所以如果發現node01啟動之後時間並不進行同步時,應該考慮到可能是時間差過大引起的,此時需要先手動進行時間同步!
看到紅色框中的內容,表示連接和監聽已正確
這里的前4行就是我們配置的4個中國國家授時中心的伺服器的信息
最後一行就是本地時間服務的信息
下面對每個列的意義進行說明:
同樣,服務啟動後需要等待5-10分鍾才能看到這個正常的信息
到這里,我們區域網內的時間伺服器node01就已經配置完畢了
文件內容如下:
同樣,沒有寫注釋的都是默認的配置
原因同(5)
到這里,利用區域網內一台時間伺服器來同步整個集群時間的全部配置就已經完成
說明:若以上提供的網路時間伺服器不可用,請自行上網尋找可用的網路時間伺服器,另外需要關閉各伺服器的防火牆,才能進行時間同步
參考文章:
內網環境NTP服務及時間同步(CentOS6.x)配置和部署
配置NTP服務ntpd/ntp.conf(搭建Hadoop集群可參考)