다음을 사용하여 일반 계정에서 X 애플리케이션 sudo를 실행했습니다.
mylappy$ ssh -Y [email protected]
[email protected]'s password:
[me@myhost ~]$ sudo su -
[root@myhost ~]# su - me -c 'xauth list' |\
grep `echo $DISPLAY |\
cut -d ':' -f 2 |\
cut -d '.' -f 1 |\
sed -e s/^/:/` |\
xargs -n 3 xauth add
이제 -Y 플래그를 사용하여 SSH 로그인을 시도할 때마다 이 오류가 발생합니다.
mylappy$ ssh -Y [email protected]
[email protected]'s password:
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
Last login: Fri Apr 17 17:43:14 2015 from my.isp.com
분명히 이 애플리케이션을 루트로 실행하면 루트와 관련되어 있기 때문에 후속 SSH 세션이 me
실행할 수 없는 어딘가에 무언가가 기록됩니다.
~/.gnome과 ~에 포함된 의심스러운 모든 항목을 청소했습니다. nuke.Xauthority.
이 오류가 발생하는지 확인하기 위해 /etc/profile, /etc/bashrc, ~/.bashrc, ~/.bash_profile을 실행해 보았습니다. 아니요.
[me@myhost ~]$ . /etc/profile
[me@myhost ~]$ . /etc/bashrc
[me@myhost ~]$ . ~/.bash_profile
[me@myhost ~]$ . ~/.bashrc
ssh -Y가 이 오류를 일으킬 수 있는 작업을 수행하는 다른 곳은 어디입니까?
이는 -Y 플래그 없이는 발생하지 않습니다.
답변1
sshd 맨페이지에서:
~/.ssh/rc가 존재하고 sshd_config(5) PermitUserRC 옵션이 설정되어 있으면 이를 실행하고, 그렇지 않으면 /etc/ssh/sshrc가 존재하면 이를 실행하고, 그렇지 않으면 xauth를 실행하십시오. "rc" 파일에는 X11 인증 프로토콜과 표준 입력 쿠키가 제공됩니다. 아래 SSHRC를 참조하세요.