[email protected]
サーバーのすべてのユーザーが起動できるシステムがあります。systemd --user start [email protected]
ルートとしてメンテナンスを実行しながら、すべてのユーザーのサービスを停止したいと思います。
私は対立を通しても体系化された人間から道を見つけることができませんでした。 rootでユーザーサービスを停止する方法はありますか?
ベストアンサー1
--user
ルートとして、systemdはフラグの組み合わせを使用してユーザーサービスに対するアクションの実行をサポートします--machine
。
例えば
systemctl --user --machine=<user>@.host <command> <service>
または(localhostから)に短縮できます。
systemctl --user --machine=<user>@ <command> <service>
つまり
systemctl --user --machine=jtingiris@ stop a-user.service
この内容は次のように記録されます。man 1 systemctl
...
-M
、--machine=
ローカルコンテナでアクションを実行します。接続するコンテナの名前を指定します。オプションで、接続する
@
ユーザー名と区切り文字「」が前に付けられます。コンテナ名の代わりに特別な文字列 ".host
"を使用すると、ローカルシステムへの接続が確立されます(これは特定のユーザーのユーザーバスに接続するのに役立ちます: " ")。構文を使用しないと、rootユーザーとして接続されます。構文を使用している場合は、左側または右側のいずれか(両方ではない)を省略できます。この場合、ローカルユーザー名と ""は暗黙的に表示されます。--user [email protected]
@
@
.host