crontab可以定時去執行你要做的動作
直接用crontab命令編輯
crontab -u //設定某個使用者的cron服務,一般root使用者在執行這個命令的時候需要此參數
crontab -l //列出某個使用者cron服務的詳細內容
crontab -r //刪除某個使用者的cron服務
crontab -e //編輯某個使用者的cron服務
crontab檔案的一些例子:
| 代碼如下 |
複製代碼 |
30 21 * * * /etc/init.d/smb restart 上面的例子表示每晚的21:30重啟smb 。 45 4 1,10,22 * * /etc/init.d/smb restart 上面的例子表示每月1、10、22日的4 : 45重啟smb 。 10 1 * * 6,0 /etc/init.d/smb restart 上面的例子表示每周六、周日的1 : 10重啟smb 。 0,30 18-23 * * * /etc/init.d/smb restart 上面的例子表示在每天18 : 00至23 : 00之間每隔30分鐘重啟smb 。 0 23 * * 6 /etc/init.d/smb restart 上面的例子表示每星期六的11 : 00 pm重啟smb 。 * */1 * * * /etc/init.d/smb restart 每一小時重啟smb * 23-7/1 * * * /etc/init.d/smb restart 晚上11點到早上7點之間,每隔一小時重啟smb 0 11 4 * mon-wed /etc/init.d/smb restart 每月的4號與每周一到周三的11點重啟smb 0 4 1 jan * /etc/init.d/smb restart 一月一號的4點重啟smb |
附後了crontab之外下面是附加方法
兩種辦法
第一,可以從時間伺服器time.nist.gov同步。
在vi /etc/crontab中加入:
| 代碼如下 |
複製代碼 |
00 0 1 * * root rdate -s time.nist.gov time.nist.gov 是一個時間伺服器. |
第二,自己建個時間伺服器(192.168.10.1)
| 代碼如下 |
複製代碼 |
1). # rpm -ivh ntp-4.1.2-4.EL3.1.i386.rpm rpm -ivh ntp-4.2.0.a.20040617-4.EL4.1.i386.rpm 2). # vi /etc/ntp.conf 注釋一行 restrict default ignore 加入一行 restrict 192.168.10.0 mask 255.255.255.0 notrust nomodify notrap |
3). # vi /etc/ntp/step-tickers
加入一行
pool.ntp.org
這樣每次ntpd啟動時,會自動連接該國際標準時間伺服器;
4). # service ntpd start
5). # netstat -an |grep 123
確保該連接埠以udp方式開放
時間用戶端配置(192.168.10.2)
| 代碼如下 |
複製代碼 |
1). # ntpdate 192.168.10.2 應該顯示同步成功 2). # crond -e 加入 0-59/60 * * * * /usr/sbin/ntpdate 192.168.10.1 10.31.0.53 |
表示每隔10分鐘同步一次時間
如何設定伺服器之間時間同步
Posted in Operating System on April 11th, 2006
HP-UX系統的伺服器之間的時間需要同步,利用內建的NTPD可以很好的達到目的。
假設我們要host1作時間伺服器,host2定期去跟host1的系統時間同步,那麼需要作以下設定,全部用root使用者執行。
1。設定host1機器
編輯/etc/rc.config.d/netdaemons,修改下面行
| 代碼如下 |
複製代碼 |
export NTPDATE_SERVER= –因為這台機器將作為伺服器,所以這個參數保持為空白值即可 export XNTPD=1 –預設是0,改為1表示ntp進程將隨系統啟動自動啟動 export XNTPD_ARGS= |
編輯/etc/ntp.conf,添加下面行
這個檔案預設是全部注釋的,可以當成ntp的文檔來閱讀,我們只需要在最後添加,表示將用本地系統時間作為伺服器時間
| 代碼如下 |
複製代碼 |
server 127.127.1.1 fudge 127.127.1.1 stratum 10 啟動ntp守護進程 /sbin/init.d/xntpd start |
檢查進程情況
ntpq -p
2。設定host2機器
編輯/etc/rc.config.d/netdaemons,修改下面行
| 代碼如下 |
複製代碼 |
export NTPDATE_SERVER=host1 –因為這台機器將作為用戶端,所以這個參數設定為伺服器機器名host1 export XNTPD=1 export XNTPD_ARGS= |
編輯/etc/ntp.conf,添加下面行
| 代碼如下 |
複製代碼 |
server host1 driftfile /etc/ntp.drift –可以理解為快取檔案,減少跟ntp伺服器之間的網路流量 |
建立driftfile
| 代碼如下 |
複製代碼 |
| touch /etc/ntp.drift |
測試同步,因為ntpd啟動需要很長時間,大概6分鐘左右,所以需要等一段時間再測試
ntpdate host1
正常的話輸出應該如下
11 Apr 13:35:38 ntpdate[27692]: adjust time server 10.48.52.5 offset -0.002519 se
如果報伺服器無法找到的錯誤 no server www.111cn.net suitable for synchronization found,那麼通常是因為機器之間設定了防火牆的原因,可以嘗試使用-u選項來作ntpdate
ntpdate -u host1
如果仍然不行,恐怕只有讓網路系統管理員去開啟ntpdate需要的防火牆連接埠了。
測試成功以後,啟動ntp守護進程,這樣系統會自動定期跟伺服器進行同步。當然我們也可以使用cron來手動指定同步時間,比如在cron中設定每天夜裡2點執行下面的指令碼,也可以達到目的。
| 代碼如下 |
複製代碼 |
#!/sbin/sh LOGDIR=/tmp LOGFILE=”$LOGDIR/ntpdate.log”
|
/usr/sbin/ntpdate -u host1 | tee -a $LOGFILE
下面補充一下系統時間的設定
date -s可以直接設定系統時間
比如將系統時間設定成1996年6月10日的命令如下。
#date -s 06/10/96
將系統時間設定成下午1點12分0秒的命令如下。
#date -s 13:12:00