"Perl/Tk를 사용할 수 없으며 "sudo"로 실행할 때 기본 창을 만들 수 없습니다."

"Perl/Tk를 사용할 수 없으며 "sudo"로 실행할 때 기본 창을 만들 수 없습니다."

sudo /usr/local/bin/tlmgr -guiGnome 3을 사용하여 OpenSUSE Tumbleweed에서 받은 전체 오류 메시지(TeX Live 2017 관리자):

No protocol specified
perl/Tk unusable, cannot create main windows.
That could be a consequence of not having X Windows installed or started!
Error message from creating MainWindow:
  couldn't connect to display ":0" at /usr/lib/perl5/vendor_perl/5.24.1/x86_64-linux-thread-multi/Tk/MainWindow.pm line 53.
Tk::MainWindow->new() at /usr/local/bin/tlmgr line 4704.

시작할 때 그런 오류 메시지가 없습니다 sudo(시스템 전체에 설치했지만 이 방법으로는 사용할 수 없습니다).

같은 결과라면

그런 다음 X 권한 파일을 가지고 영리하게 놀려고 했습니다(다음과 같은 것에서).https://unix.stackexchange.com/a/8250):

ln -s /run/user/1000/gdm/Xauthority /root/.Xauthority

# inside sudo -i then
export XAUTHORITY=/root/.Xauthority

이후 처음 두 줄에 대해 다음과 같은 오류 메시지가 표시됩니다(나머지는 이전과 동일).

Invalid MIT-MAGIC-COOKIE-1 keyperl/Tk unusable, cannot create main windows.
That could be a consequence of not having X Windows installed or started!

출력 xauth list:

linux-q1xc/unix:  MIT-MAGIC-COOKIE-1  fa445a3c038b19300e8e45d4ae0ae55a
#ffff#6c696e75782d71317863#:  MIT-MAGIC-COOKIE-1  fa445a3c038b19300e8e45d4ae0ae55a

을 위한 sudo xauth list:

linux-q1xc/unix:10  MIT-MAGIC-COOKIE-1  7e608058d97a6bf4ae346879f4f5fd46

을 위한 ssh -X localhost xauth list:

linux-q1xc/unix:10  MIT-MAGIC-COOKIE-1  faaf2ba1724d5efe85aa5ef6cb4fcc52

을 위한 ssh -X root@localhost xauth list:

linux-q1xc/unix:10  MIT-MAGIC-COOKIE-1  e8168ff05f56458663f187ec38f744fe

뒤쪽에sudo ln -sf ~/.Xauthority /root

출력 xauth list:

linux-q1xc/unix:  MIT-MAGIC-COOKIE-1  fa445a3c038b19300e8e45d4ae0ae55a
#ffff#6c696e75782d71317863#:  MIT-MAGIC-COOKIE-1  fa445a3c038b19300e8e45d4ae0ae55a

출력 sudo xauth list:

linux-q1xc/unix:10  MIT-MAGIC-COOKIE-1  faaf2ba1724d5efe85aa5ef6cb4fcc52

오류 메시지가 다시 첫 번째 메시지입니다.

xauth list내부적으로 su -또는 출력 사용 sudo -E(둘 다 유효함):

linux-q1xc/unix:  MIT-MAGIC-COOKIE-1  fa445a3c038b19300e8e45d4ae0ae55a                                                                                                                        
#ffff#6c696e75782d71317863#:  MIT-MAGIC-COOKIE-1  fa445a3c038b19300e8e45d4ae0ae55a

(처음과 동일합니다.)


작업 ssh -X localhost tlmgr -gui. 내부적으로 사용할 수도 su -있고 사용할 수도 있습니다 sudo -E.

근본적인 문제는 무엇이며 어떻게 해결합니까?

답변1

DISPLAY의견에서 논의한 것처럼 문제는 유지하지 않는 것과 관련되어 있으므로 sudo사용하는 것이 sudo -E가능한 해결책입니다.

관련 정보