su: 他のユーザーに接続し、D-BUS を有効にします。

su: 他のユーザーに接続し、D-BUS を有効にします。

タイマーとサービスを実行しているユーザーを作成しましたsystemctl --user。ログインしようとするとssh問題はありませんsystemctl --user。ただし、以下を使用してこのユーザーに接続すると、suバスエラーが発生します。

me@some_host / $ sudo su -l some_user -                       
some_user@some_host / $ systemctl --user status a_random.service
Failed to connect to bus: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=<user>@.host --user to connect to bus of other user)

それからこれを試しました。

me@some_host / $ systemctl [email protected] --user status a_random.service               
Cannot access user instance remotely.

私はこれをDebianで実行しています。私はそれpam.dと関係があると思いますが、わかりません。この問題を解決する方法についてのアイデアはありますか?

答え1

XDG_RUNTIME_DIR私のアイテムにカスタム変数を追加しました。.bashrc

このために、まずUIDを決定しました。

$ echo $UID
1002

次に変数を作成します。

$ export XDG_RUNTIME_DIR="/run/user/1002"

myに最後のコマンドを追加しても持続します.bashrc。望むより! :)

関連情報