"bash -i"를 사용하는 것과 같은 방식으로 runuser가 대화형 셸을 시작하도록 하려면 어떻게 해야 합니까?

"bash -i"를 사용하는 것과 같은 방식으로 runuser가 대화형 셸을 시작하도록 하려면 어떻게 해야 합니까?

mruser루트로 다음 명령을 실행 해야 합니다

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

관련 정보