2010-01-12 39 views
1

不應該遵循命令運行myScript只在運行級別2.我注意到它也在重新啓動時執行。我只想在啓動時運行它。試圖只在啓動時運行我的腳本,而不是在重新啓動?

update-rc.d myScript start 01 2 . stop 01 0 1 6 . 
+0

您是否以標準方式使用「rebo​​ot」和「startup」兩個字?這些詞在這裏意味着什麼? – 2010-01-13 02:23:26

+0

對不起,'重啓'我其實只是說'關機'。 – baltoro 2010-01-13 07:30:13

回答

1

沒錯。您需要檢查傳遞給腳本的第一個參數(開始,停止等)以決定發生了什麼。這在Debian Policy Manual'9.3.2編寫腳本'部分中有解釋。

或者,您可以通過將腳本放在/etc/init.d/rc.local文件中運行腳本,或者在update-rc.d中不包含任何停止級別。

+0

是的,我找到了相同的解決方案,即不包含任何停止級別。謝謝 – baltoro 2010-01-15 05:48:12

+0

很棒有人可以在這裏添加實際的行.. – geotheory 2016-01-25 13:00:35

0

您應該認識到myScript中的不同運行級別,並根據情況做一些不同的操作。在運行級別6中,您應該編寫一些文件,以便在下次運行級別爲2時被發現。 但是,您可能需要修改設計,因爲這是非常奇怪的要求。 你需要做什麼?

+0

對不起dtmilano,造成混亂。我不想說'重啓'。我想說的是腳本在我關閉電腦時運行。我發現我在做什麼錯誤,即僅在啓動時啓動腳本,我不應該使用update-rc.d的'stop'選項。 – baltoro 2010-01-13 07:34:06

0

啓動和重啓的方式有什麼不同?如果這臺機器是雙啓動機器,你可以從linux重新啓動,但是之後啓動進入windows一段時間,比如說一個小時,然後重新啓動並啓動linux。這與將機器關閉一小時有什麼不同?您無法在關機時檢測或預測重啓後會發生什麼情況。

我想你實際上想檢查的是當你的機器啓動linux時,你的腳本必須檢查自上次機器關閉以來的時間。如果時間很短,比如說5分鐘,則將其視爲重新啓動。否則,你把它算作一個啓動。

+0

對不起,爲創造混亂。我不想說'重啓'。我想說的是腳本在我關閉電腦時運行。我發現我在做什麼錯誤,即僅在啓動時啓動腳本,我不應該使用update-rc.d的'stop'選項。 – baltoro 2010-01-13 07:33:11

相關問題