web-dev-qa-db-ja.com

アップスタートのランレベルで無限ループを倒してください

私のアプリケーションの1つは、RunLevel 1の無限ループにあります1プロトコルが指定されていませんstartx -- :1を実行してから継続的に指定されていません。実行レベルは、実行レベルで指定されたコマンドを聞きません。私はもちろんカーネルマジック* Bを与えることができますが、それは私が望んでいない他のすべてのランレベルを閉じます。 Magic * Kが機能していません。

ランレベルを停止する1つの厄介な方法は、/etc/rc1.d/*.*bluetooth.*などのコンポーネントを削除することです。しかし、私はこれが長期的には良い方法を見ません。

指定されたランレベルで開いているプロンプトに属する実行レベル1ですべてのプロセスを強制するにはどうすればよいですか?

これを行うためのクリーンな方法は、 update-rc.d を使用することです。ランレベル1の間にすべて実行されないようにプログラムを設定できます。

$ update-rc.d script_name停止1。

script_nameはinit.dスクリプトです。たとえば、RunLevel 1でApacheが実行を停止するには1:

$ update-rc.d apache2停止1。

を完全に無効にしたい場合指定されたサービス:

$ update-rc.d -f script_name削除します

サービスを無効にしようとすると、すべてのランレベルで実行中に停止する必要があります。次回サービスがアップグレードされたときに、init.dスクリプトを再作成し、本質的にあなたのサービスを再可能にすることができます。

すべてのランレベルで無効にするには:

$ update-rc.d script_name停止80 0 1 2 3 4 5 6。
3
John T