Próbuję zsynchronizować katalog ze zdalnego komputera na moim laptopie. Katalog na zdalnej maszynie nie jest własnością użytkownika ssh, dlatego próbuję użyć, sudo
jak wyjaśniono tutaj
Oba komputery działają pod kontrolą systemu macOS, oba mają ssh-askpass
i są XQuartz
zainstalowane. X11 Forwarding działa poprawnie, co przetestowałem, uruchamiając go xeyes
na zdalnej maszynie za pośrednictwem SSH. Następujące polecenie otworzyło okno na moim komputerze lokalnym.
ssh -X remotehost /opt/X11/bin/xeyes
Ale kiedy uruchamiam ssh-askpass
na komputerze zdalnym, monit otwiera się na komputerze zdalnym, zamiast przekazywać go na komputer lokalny.
ssh -X remotehost 'export SUDO_ASKPASS=/usr/local/bin/ssh-askpass; env; sudo -A ls'
Dlaczego ssh-askpass
monit nie jest przekazywany na mój komputer lokalny?
Aktualizacja
Na maszynie lokalnej
$ echo $DISPLAY
/private/tmp/com.apple.launchd.pHs2JQL4YE/org.macosforge.xquartz:0
Na zdalnej maszynie
$ env | fgrep DISPLAY
DISPLAY=<remote machine hostname>:10.0
$ sudo env | fgrep DISPLAY
Password:
DISPLAY=<remote machine hostname>:10.0