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サービスが開始されないようにする1つの方法は次のとおりです。

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

この方法の問題は、以下を使用してサービスを開始できないことです。

# service start servicename

別の方法は、お気に入りのエディタでファイルを開き、次servicename.confから始まるすべての行をコメントアウトすることです。

start on

つまり、次のように変更します。

#start on ...

ここで、「...」は前の「start on」以降の内容です。これにより、「開始」パラメータを再度有効にしたときにそのパラメータが何であるかを覚える必要がなくなります。

最後に、新しいバージョンのupstartがある場合は、設定ファイルの最後に「manual」という単語を追加します。これはシェルで直接実行できます。

# 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でいくつかの起動プログラムを制御できます。

System→→PreferencesStartup Applications

アプリケーション設定の実行

関連情報