在 Linux 中停止啟動時運行的程序

在 Linux 中停止啟動時運行的程序

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

答案1

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

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

sudo chkconfig apache2 off 

在 Debian 上:

sudo update-rc.d -f apache2 remove

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

答案2

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

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

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

# service start servicename

另一種方法是在您喜歡的編輯器中開啟servicename.conf檔案並註解掉以以下內容開頭的所有行:

start on

也就是說,將其更改為

#start on ...

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

最後,如果您有新版本的 upstart,您只需將“手動”一詞添加到設定檔的末尾即可。您可以直接從 shell 執行此操作:

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

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

答案3

列出所有啟動服務

    systemctl

停止服務在啟動時運行

    sudo systemctl disable servicename

例如,如果我們需要在啟動時停止執行 ssh 伺服器

    sudo systemctl disable sshd.service

我們可以使用以下命令再次啟用此功能

    sudo systemctl enable sshd.service

幾乎每個 Linux 發行版都會使用 systemd 來引導啟動服務。所以上面的指令適用於大多數發行版。

答案4

在 Ubuntu 10.04 上,您可以從 GUI 控制一些啟動程式。

SystemPreferencesStartup Applications

啟動應用程式首選項

相關內容