酷!學園

技術討論區 => Linux 討論版 => 主題作者是: dino7778 於 2008-07-06 17:21

主題: Ubuntu中,快被update-rc.d 打敗了..求救
作者: dino77782008-07-06 17:21
新手在下我

寫了一個簡單的script想要在開機執行
我先把script chmod 775後,cp到/etc/init.d目錄下

後我下
update-rc.d -f restort defaults

開機是有執行了,但該死的是關機也該我執行,後來我改下
update-rc.d restort start 90 2 . stop 90 1 3 4 5 6.
也是一樣,開機、關機都執行

我去rc2.d(ubuntu預定)下看明明就是S90,S開頭的(START) 關機居然也會run

有人知道原因嗎
主題: 回覆: Ubuntu中,快被update-rc.d 打敗了..求救
作者: Darkhero2008-07-06 20:28
init.d 裡面的東西好像並不是只是讓你作所謂開機的時候執行這件事情...

我想你應該先看看其他在 init.d 裡面的 script 是怎麼做的...

通常很多放在 init.d 裡面的 script 都有 start , stop , status  等幾種參數傳入處理..
而在關機的時候通常都是會去跑 stop 的...

主題: 回覆: Ubuntu中,快被update-rc.d 打敗了..求救
作者: pippeng2008-07-06 21:54
為什麼不在rc.local做?
主題: 回覆: Ubuntu中,快被update-rc.d 打敗了..求救
作者: kenduest2008-07-07 05:17
新手在下我

寫了一個簡單的script想要在開機執行
我先把script chmod 775後,cp到/etc/init.d目錄下

後我下
update-rc.d -f restort defaults

開機是有執行了,但該死的是關機也該我執行,後來我改下
update-rc.d restort start 90 2 . stop 90 1 3 4 5 6.
也是一樣,開機、關機都執行

我去rc2.d(ubuntu預定)下看明明就是S90,S開頭的(START) 關機居然也會run

有人知道原因嗎

你的 script 接收 start 與 stop 這類參數嗎 ?

--
主題: 回覆: Ubuntu中,快被update-rc.d 打敗了..求救
作者: dino77782008-07-07 10:23
謝各位熱心回答

根據官網的update-rc指令
https://wiki.ubuntu.com/TIPs_of_use_ubuntu (https://wiki.ubuntu.com/TIPs_of_use_ubuntu)

S是指START 開機執行的程序,K則是KILL
因為ubuntu是用startup管理而不是用inittab

所以我把scrip cp到/etc/event.d/ 後用加link到rc2.d(預定runlevel) 的S90***** (<<我的script)
結果不管是開關相都會執行

結論應該是上面某大想的,要在script寫加 start stop等參數判斷式...
(ps 寫在rc.loacl 也是開關機執行)
主題: 回覆: Ubuntu中,快被update-rc.d 打敗了..求救
作者: harrier2008-07-07 11:47
關機時,跑的不是 rc0.d 裡面的東西嗎?先 K 後 S...