重新啟動網路的『script』...



贊助商連結


頁 : 1 [2]

ADJ
2001-12-30, 02:55 PM
這個問題之前也曾遇過..找了一些資料..
可以讓ADSL不斷線的script..大家可以
參考看看..

ADSL不斷線script (http://www.adj.idv.tw/phpBB2/viewforum.php?f=7)

贊助商連結


VBird
2002-01-01, 09:57 PM
最初由 rs125 發表

如果直接修改的話並不會馬上載入新值...要等到下次重開後才會載入新值...
而用"-e"參數修改則直接載入新值...
如果要啟用最新的設定可用ps指令找出cron的job number將其kill則系統會在載入新值...
你好:

似乎並非如此,只要你在 /etc/crontab 內修改完成,並且儲存之後,你的 cron 設定,就已經開始在跑了!而不需要重新開機。

另外,/etc/crontab 這個檔案主要是給系統在作運作的,這點沒有疑問,而crontab -e 這個指令是給一般用戶進行 cron 的時間排成設定的,當然囉, root 也可以使用。不過 crontab -e 這個指令下達之後,如果你真的有編寫指令的話,那麼你的設定檔好像是存在 /tmp 底下吧!

如果對於 crontab 有興趣的話,不妨來底下的網頁看看:
http://aerosol.ev.ncku.edu.tw/~vbird/linux/linux_11cron.html

VBird
2002-01-01, 10:05 PM
喔!忘了提到了!如果你是使用動態 IP 架站的話,那麼登錄到動態 DNS 主機的 scripts 絕對是必須的,果真如此的話,建議到底下的網頁上看看:

動態 DNS 偵測技巧 (http://aerosol.ev.ncku.edu.tw/~vbird/linux/linux_23dynamicDNS.html)

repsol
2002-01-02, 12:04 AM
最初由 VBird 發表

你好:

似乎並非如此,只要你在 /etc/crontab 內修改完成,並且儲存之後,你的 cron 設定,就已經開始在跑了!而不需要重新開機。

另外,/etc/crontab 這個檔案主要是給系統在作運作的,這點沒有疑問,而crontab -e 這個指令是給一般用戶進行 cron 的時間排成設定的,當然囉, root 也可以使用。不過 crontab -e 這個指令下達之後,如果你真的有編寫指令的話,那麼你的設定檔好像是存在 /tmp 底下吧!

如果對於 crontab 有興趣的話,不妨來底下的網頁看看:
http://aerosol.ev.ncku.edu.tw/~vbird/linux/linux_11cron.html

crontab -e 存下來的東西會出現在/var/spool/cron這個目錄下(必須要用root身分,才能進到這個目錄),會以ID的方式存放出現..可以用more去看他的內容...會發現就是crontab -e 編輯出來的東西,,

舉個例子來說..如果是以pczone這個id 執行crontab -e 編輯自己的cron job...
0 23 * * * df -k > /tmp/df.txt
存檔後離開...
/var/spool/cron/下...就會出現一個pczone這樣一個file...
用more去看他的內容...
就會出現這樣的結果
0 23 * * * df -k > /tmp/df.txt
也就是用crontab -e 出來的結果...

相對的...FreeBSD的cron job (crontab -e )會存放在/var/cron/tabs下(一樣要用root才能進去這個目錄)..其他都都一樣..


如果我有說錯..請不吝指教..thx

VBird
2002-01-02, 12:18 AM
最初由 repsol 發表

crontab -e 存下來的東西會出現在/var/spool/cron這個目錄下(必須要用root身分,才能進到這個目錄),會以ID的方式存放出現..可以用more去看他的內容...會發現就是crontab -e 編輯出來的東西,,
舉個例子來說..如果是以pczone這個id 執行crontab -e 編輯自己的cron job...
0 23 * * * df -k > /tmp/df.txt
存檔後離開...
/var/spool/cron/下...就會出現一個pczone這樣一個file...
用more去看他的內容...
就會出現這樣的結果
0 23 * * * df -k > /tmp/df.txt
也就是用crontab -e 出來的結果...
相對的...FreeBSD的cron job (crontab -e )會存放在/var/cron/tabs下(一樣要用root才能進去這個目錄)..其他都都一樣..
如果我有說錯..請不吝指教..thx
阿!很抱歉,存放目錄搞錯了!真抱歉.... ^_^"

基本上是這樣,當使用 more file 去看 /var/spool/cron 這個目錄下的 file 時,會發現如下的一段文字:

# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.16593 installed on Wed Jan 2 00:15:38 2002)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)

檔案直接告訴我們不需要修改這個檔案,否則需要 reinstall !因此,盡量以 crontab -e 的方式來修正你所需要的排程。但是 /etc/crontab 這個檔案則是 cron 這支服務一直在讀取的資料,因此,如果你以 root 的身份修改之後,那不用重新啟動cron就可以直接執行了。兩者的差異大概在這裡吧我想。若有錯誤,敬請不吝指正!謝謝!

repsol
2002-01-02, 01:09 AM
最初由 VBird 發表

阿!很抱歉,存放目錄搞錯了!真抱歉.... ^_^"

基本上是這樣,當使用 more file 去看 /var/spool/cron 這個目錄下的 file 時,會發現如下的一段文字:

# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.16593 installed on Wed Jan 2 00:15:38 2002)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)

檔案直接告訴我們不需要修改這個檔案,否則需要 reinstall !因此,盡量以 crontab -e 的方式來修正你所需要的排程。但是 /etc/crontab 這個檔案則是 cron 這支服務一直在讀取的資料,因此,如果你以 root 的身份修改之後,那不用重新啟動cron就可以直接執行了。兩者的差異大概在這裡吧我想。若有錯誤,敬請不吝指正!謝謝!



小弟上一篇只有指出crontab -e 的存放位置..忘記說明請各位網友請不要修改此檔
也謝謝VBird兄的指正

說詳細一點
crontab -e 後..會把cron job重新load進memory去執行...所以會有看到這一行

(/tmp/crontab.16593 installed on Wed Jan 2 00:15:38 2002)

就告訴你說...這個cron job最後一次load進memory去執行的時間點

也就是說..如果修改這個/var/spool/cron這個目錄下的file...
他並不會自動將修改過的cron job重新load進memory去執行
可以直接做個測試就知道了...
假設要修改pczone這個id的cron job

1.先修改/var/spool/cron/pczone,存檔後離開

2.再以pczone的這個 id 下一道指令
crontab -l


將會發現並沒有剛剛修改過的東西

所以要修改cron job...請用crontab -e去edit

==============================================================================

至於cron daemon


這個cron daemon會每分鐘去check /etc/crontab這個file
因為cron job的最小單位是1分鐘...
如果有修改過/etc/crontab...並不用重新reload cron的daemoon...
因為他本來就是每分鐘會check /etc/crontab這個file..有要執行的就會執行
cron daemon不會lose掉/etc/crontab有修改的部分

repsol
2002-01-02, 01:15 AM
cron這個daemon這個隨著開機就會執行一直服務
用 top或是 ps 就可以看到了


Linux和FreeBSD啟動檔或是設定如下
Linux :

/etc/rc?.d/??cron??
start cron daemon的script


FreeBSD
/etc/defaults/rc.conf


cron_enable="YES" # Run the periodic job daemon.
cron_program="/usr/sbin/cron" # Which cron executable to run (if enabled).
cron_flags="" # Which options to pass to the cron daemon

Man
2002-01-02, 04:49 PM
嗯~真是多謝各位前輩的指點指點~
現在對 crontab 的瞭解深了許多呢!:rolleyes: