Linux

在 Linux 啟動時停止程序執行

  • April 5, 2022

如何停止在 Linux 中啟動時執行的程序。我想從啟動中刪除一些應用程序以允許它們由supervisord例如 apache2管理

根據您的發行版,使用 chkconfig 或 update-rc.d 工具來啟用/禁用系統服務。

在 redhat/suse/mandrake 風格的系統上:

sudo chkconfig apache2 off 

在 Debian 上:

sudo update-rc.d -f apache2 remove

查看他們的手冊頁以獲取更多資訊。

如果您正在處理現代 Ubuntu 系統和其他一些發行版,您可能必須同時處理傳統的 init 腳本和 upstart 腳本。其他答案涵蓋了管理初始化腳本。以下是阻止 upstart 服務在啟動時啟動的一種方法:

# mv /etc/init/servicename.conf /etc/init/servicename.conf.disabled

此方法的問題在於它不允許您使用以下方式啟動服務:

# service start servicename

另一種方法是servicename.conf在您喜歡的編輯器中打開文件並註釋掉任何以以下開頭的行:

start on

也就是說,將其更改為

#start on ...

其中“…”是之前“開始”之後的內容。這樣,當您想重新啟用它時,您不必記住“開始”參數是什麼。

最後,如果您有新版本的 upstart,您只需在配置文件的末尾添加“手動”一詞即可。您可以直接從 shell 執行此操作:

# echo "manual" >> /etc/init/servicename.conf

這將導致 upstart 忽略文件中前面的任何“start on”片語。

引用自:https://unix.stackexchange.com/questions/13