Centos
centos6/rhel上的ptp時間同步
我需要使用 PTP(精確時間協議)設置時間同步。我會得到伺服器地址。我找到了 ptpd server (version 2.1)。我在 /etc/init.d 中創建了啟動文件。但是想知道除了在哪個界面上顯示我應該收聽我應該使用的廣播之外還有哪些選項。有沒有人有設置這個的經驗?
以下是我已經完成的步驟,並讓 ptp 作為奴隸工作。我在 Centos 6.0 上使用過 ptpd2,但應該可以在任何地方使用。我在網上某處找到的啟動腳本 - 今天再也找不到那個連結了。
從 sourceforge下載ptpd2 源包。
下載後編譯:
tar xzfv ptpd-2.1.0.tar.gz cd ptpd-2.1.0/src make sudo cp ptpd2 /usr/bin/ptpd2
為 ptpd2 創建啟動腳本
/etc/rc.d/init.d/ptpd2
#!/bin/sh # # ptpd Precision Time Protocol daemon # # chkconfig: - 30 70 # description: ptpd implements a sub ms time coordination of LAN connected computers \ # implementing IEEE 1588 # Source function library. . /etc/rc.d/init.d/functions exec="/usr/bin/ptpd2" prog="ptpd2" [ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog lockfile=/var/lock/subsys/$prog start() { [ -x $exec ] || exit 5 echo -n $"Starting $prog: " # if not running, start it up here, usually something like "daemon $exec" daemon --user root $exec $PTPDARGS retval=$? echo [ $retval -eq 0 ] && touch $lockfile return $retval } stop() { echo -n $"Stopping $prog: " # stop it here, often "killproc $prog" killproc $prog retval=$? echo [ $retval -eq 0 ] && rm -f $lockfile return $retval } restart() { stop start } reload() { restart } force_reload() { restart } rh_status() { # run checks to determine if the service is running or use generic status status $prog } rh_status_q() { rh_status >/dev/null 2>&1 } case "$1" in start) rh_status_q && exit 0 $1 ;; stop) rh_status_q || exit 0 $1 ;; restart) $1 ;; reload) rh_status_q || exit 7 $1 ;; force-reload) force_reload ;; status) rh_status ;; condrestart|try-restart) rh_status_q || exit 0 restart ;; *) echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" exit 2 esac exit $?
在以下位置創建配置文件
/etc/sysconfig/ptpd2
:# # PTPD Configuration # PTPDARGS="-D -b eth2 -f /var/log/ptpd.log"
添加要在系統啟動時啟動的 ptpd:
/sbin/chkconfig --level 35 ptpd2 on
並啟動 ptpd 守護程序:
service start ptpd2
享受。
如果您有更好的解決方案,請告訴我。