Linux時區設定及NTP時間同步
文章蒐集自:http://publishblog.blogchina.com/blog/tb.b?diaryID=2745968 一、背景 機器裝的是busybox,使用的是最小集合的linux。硬體時鐘是本地時間,而核心時鐘是UTC時間,沒有設定時區,也沒有任何時區設定的選項。 二、需求 這臺機器需要定時進行NTP時間同步。同步之後顯示給使用者的是本地時間。 三、過程 1.時區的支援 (1)hwclock 為了檢視硬體時鐘是否為本地時間,執行命令hwclock –r。結果系統提示:“Could not open RTC: No such file or directory”,即找不到RTC檔案。 (2)/dev/rtc 由於核心在編譯過程中沒有提供RTC支援,需要重新編譯核心(或為核心增加一個module)。方法為,在make menuconfig階段,選中“Character device”的“Enhanced Real Time Clock Support”一項的支援。 為核心增加了該模組後,目錄/proc/drive/下已出現了rtc檔案,cat也能檢視到正常的內容。但/dev/目錄下仍沒有rtc檔案。 於是透過mknod命令在/dev目錄下增加rtc檔案。透過man rtc可以得知,RTC為只讀字元裝置,主10,從135。因此命令為“mknod /dev/rtc c 10 執行hwclock –r,能夠看到硬體時間為本地時間。透過date命令檢視系統時間,卻為UTC時間。這說明系統沒有進行本地時間的設定。 (3)/etc/localtime Linux的系統時區是透過符號連線/etc/localtime來得到的。可以透過tzset命令來設定時區。如果沒有該命令,可以透過命令“ln –s /etc/localtime /usr/share/zoneinfo/Asia/Shanghai”來將時區設定為亞洲的上海。 由於最初構建系統的時候沒有包含zoneinfo資訊,因此/usr/share目錄下不存在zoneinfo目錄及其檔案。所以將包含zoneinfo資訊的機器的/usr/share目錄下的整個zoneinfo目錄複製到本機的/usr/share目錄下。 透過date命令檢查時間,發現已變成了正常的本地時間: Mon Aug 29 13:14:29 CST 2005 (4)/etc/sysconfig/clock 該配置檔案可用來設定使用者選擇何種方式顯示時間。如果硬體時鐘為本地時間,則UTC設為0,並且不用設定環境變數TZ。如果硬體時鐘為UTC時間,則要設定UTC為1,並設定環境變數TZ(或配置檔案/etc/TZ)為時區資訊,如“Asia/Shanghai”。 我機器的硬體時間為本地時間,因此該配置檔案內容為: ZONE="Asia/Shanghai" UTC=0 ARC=0 2.NTP同步設定 (1)ntpdate 如果只是透過NTP伺服器同步系統時間,可以使用命令ntpdate(位於/usr/sbin/下,使用ntpd會提供更佳全面的功能)。Ntpdate用到的庫包括:libcap.so.1 => /lib/libcap.so.1、libc.so.6 => /lib/tls/libc.so.6、 /lib/ld-linux.so.2 (0xf6fdf000)。將該命令檔案及相關的庫都複製到這臺機器上,並找到一個最近的穩定的NTP伺服器。我使用的是nets.org.sg(IP:203.117.180.36)。執行命令“ntpdate 203.117. 四、相關知識 Linux時鐘 Linux機器裡有兩個時鐘,一個是硬體時鐘(CMOS時鐘),一個是核心時鐘。硬體時鐘是電池驅動的,透過專門的晶片工作。可以透過BIOS設定屏或一些系統命令(如hwclock)進行設定。核心時鐘是由核心維護的,啟動時從硬體讀取時間,之後獨立執行。 RTC(Real Time Clock) 即Linux實時的時鐘驅動,通常它們被嵌在計算機的晶片中,也有一些是在主機板上使用Motorola MC146818(或clone)實現的。該硬體裝置可對映到/dev/rtc,供root程式設計訪問。 NTP(Network time protocol) NTP為一種網路時間協議,是一種確保網路上的主機調整時間的方法。很多地方都會提供NTP伺服器(ISP或網管,也可以在~mills/ntp/clock |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24790158/viewspace-1040770/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux的時間設定與同步(NTP)Linux
- Windows區域網通過NTP設定時間同步Windows
- linux ntp時間同步Linux
- Ubuntu 時間不準,怎麼設定NTP時間同步?Ubuntu
- Windows ntp時間同步設定(bat指令碼)WindowsBAT指令碼
- NTP時間同步
- Linux使用ntp時間伺服器同步時間Linux伺服器
- NTP配置時間同步
- NTP時間同步 For AIXAI
- 【Linux-時間設定】-設定時區並調整時間Linux
- Ubuntu的NTP同步時鐘設定方法Ubuntu
- LINUX 解決時間同步問題(NTP)Linux
- NTP時間同步伺服器(區域網時鐘同步)解決方案伺服器
- Oracle RAC時間同步(NTP/CTSS)Oracle
- Linux系統時間同步方法小結(NTP)Linux
- 關於Linux下ntp 時間同步錯誤Linux
- Linux設定和修改時間與時區Linux
- ubuntu 修改時區或時間 及網路同步時間Ubuntu
- 使用NTP原理進行時間同步
- Linux:設定時間與同步的方法Linux
- NTP時鐘同步
- NTP時間同步伺服器(時鐘同步)工作原理介紹伺服器
- ECS設定時區與時間
- NTP系統時間同步-操作記錄
- 兩臺伺服器時間同步(NTP)伺服器
- 時間同步協議NTP - 原理&實踐協議
- Linux 下改變時區及時鐘同步Linux
- 雲伺服器Linux系統設定時間同步設定伺服器Linux
- Linux叢集環境下NTP伺服器時間同步Linux伺服器
- Linux時間同步+國內常用的NTP伺服器地址Linux伺服器
- oracle rac中設定時間同步Oracle
- Oracle 11G RAC ntp時間同步配置Oracle
- Oracle叢集(RAC)時間同步(ntp和CTSS)Oracle
- linux 時區設定Linux
- linux系統時間修改及同步Linux
- Linux下 ntp 時間同步服務ntpd 出現 the NTP socket is in use, exiting 解決Linux
- 論企業生產網NTP時鐘同步(網路時間同步服務)
- linux 配置ntp時間伺服器Linux伺服器