내가 달릴 때 unshare -r
나는 얻는다.
Failed to connect to bus: Operation not permitted
ID에는 여전히 내가 루트라고 표시되어 있습니다.
❯ id
uid=0(root) gid=0(root) groups=0(root),65534(nogroup)
이 오류/경고는 무엇을 의미합니까? 그것은 무엇으로부터 생산됩니까? 해결될 수 있나요?
답변1
이 오류는 로그인 셸 중에 발생하는 문제로 인해 발생할 수 있습니다. 주의 깊게 살펴보시기 바랍니다.
# explicitly launch login shell
$> unshare -r /bin/bash -l
Failed to connect to bus: Operation not permitted
그리고
# run a regular shell
$> unshare -r /bin/bash
내 경우에는 달리기를 하고 ~/.profile
,
systemctl -q is-active graphical.target
나는 그것을 증명할 수 있다
$> unshare -r -- systemctl -q is-active graphical.target
Failed to connect to bus: Operation not permitted
쉘 시작 순서
Note는 ~/.profile
로그인할 때 쉘이 읽는 유일한 파일이 아닙니다. 자세히 알아보려면 셸 설명서를 읽어보세요.
답변2
이 메시지는 쉘 시작 파일의 일부 명령에 의해 생성될 수 있으며 메시지 내용으로 판단하면 D-Bus와 관련된 것일 수 있습니다.
어떤 명령인지 확인하려면 다음 두 명령 중 하나를 사용할 수 있습니다.
$ unshare -r /bin/bash -ix </dev/null 2>&1 | less
$ unshare -r /bin/bash -lix </dev/null 2>&1 | less
이는 쉘 시작 중에 실행된 모든 명령을 표시합니다. 전자는 일반적인 대화형 쉘 시작을 디버깅하고 후자는 로그인 쉘을 디버깅합니다. 오류 메시지를 검색 하는 데 사용됩니다 /
. 그 앞의 줄에는 오류 메시지를 생성한 명령이 포함되어야 합니다.