"bash -i"を使用するのと同じ方法でrunuserに対話型シェルを起動させるにはどうすればよいですか?

mruserrootで次のコマンドを実行する必要があります

systemctl --user status myservice

このために私はrunuserを使用します

runuser -l mruser -c "systemctl --user status myservice"

これはRHEL展開ではうまく機能しますが、Ubuntuでは失敗します。これは、Ubuntuのデフォルトファイルに次の行があるためです.bashrc(RHEL .bashrcファイルにはありません)。

case $- in
    *i*) ;;
      *) return;;
esac

これには、bashがファイルの値と-i対話して使用する必要があります。.bashrcこの行を削除すると、runuserUbuntuで私のコマンドが正しく実行されます。しかし、私はこの行を削除したくありません。

コマンドの実行時にどのように送信できますかrunuser-i

ベストアンサー1

おすすめ記事