web-dev-qa-db-ja.com

16.04起動時に開始されたすべてのサービスを一覧表示するコマンド

Mongodb v3.4をインストールしました。これはブート時に起動します。

だから、私はこれを何が起動しているのかを知る方法(および起動時に起動を無効にする方法)を疑問に思っていますか?

以下は機能しませんでした:

システムの起動時にmongodbが起動しないようにする方法 (古い)

起動時に開始するサービスを一覧表示するコマンド? (古い)

17
Karl Morrison

現在のところ、Ubuntuではサービスが自動的に有効になっているため、Apacheなどの何かをインストールすると、起動時に開始されます。

情報を見つける

起動時に実行されたすべてのサービスを確認するには:

systemctl list-units --type service

これにより、ブート時にロードされ、現在アクティブなすべてのサービスが表示されます。アクティブであるかどうかに関係なく、すべてのサービスのリストを取得する場合:

systemctl list-units --type service --all

あなたができるもう一つのことは、実行することです:

systemctl list-dependencies --type service

次に/を押してmongodbを検索し、service/targetがそれに依存して実行するものを確認します。

また、実行することができます:

locate mongodb.service

次のようなものを生成します:

/lib/systemd/system/multi-user.target.wants/mongodb.service

その後、マルチユーザーターゲットの一部として開始されていることがわかります。これに代わるものは次のとおりです。

$ systemctl cat mongodb.service | grep -i wantedby
WantedBy=multi-user.target

無効にする

アクティブかどうかを確認するには(起動/起動時に実行されます):

systemctl is-active mongodb

activeまたはinactiveのいずれかです。あなたの場合、それはactiveでなければなりません。

起動時に起動を停止するには、無効にする必要があります。

Sudo systemctl disable mongodb

そして、他に何も(他のサービスが)開始できないように、マスクします:

systemctl mask mongodb

そのため/dev/nullにリンクされ、自動または手動で開始できなくなります。

mongodbサービス名がわからないので、タブを押して完了させてください。mongodb;)

37
Ravexina

ブート時にサービスが有効になっているかどうかを知るための正しいコマンドは次のとおりです。

systemctl is-enabled Apache2
enabled

状態を変更して自分で試すことができます

systemctl enable Apache2
systemctl disable Apache2

(これは答えになることを意図していません)

7
BitLegacy01

また、[設定]-> [セッションとスタートアップ]-> [アプリケーションの自動起動]を見て、アプリケーションがそこに記載されているかどうかを確認します。

0
user680858