У меня есть следующие настройки: компьютер A (a.corp, 192.168.100.130, локальный компьютер) и компьютер B (b.corp, удаленный компьютер), и монитор подключен к каждой из этих машин. Когда я ssh из a.corp в b.corp как
Машина A, локальная машина, т. Е. A.corp настроена:
.ssh/config
Host *
ForwardX11 yes
TCPKeepAlive no
ServerAliveInterval 15
ServerAliveCountMax 10
IdentityFile ~/.ssh/id_dsa.work
/etc/ssh_config
(это OS-x, Darwin 12.2.0)
Host *
SendEnv LANG LC_*
ForwardX11 yes
MachineB, удаленный компьютер, т. Е. Настройка b.corp: (ядро Ubuntu: 3.2.0)
.ssh/config
Host *
ForwardX11 yes
IdentityFile ~/.ssh/id_dsa.work
/etc/ssh/ssh_config
Host *
SendEnv LANG LC_*
ForwardX11 yes
Случай 1:
(DISPLAY on a.corp is not set)
$ echo $DISPLAY
$ ssh -X b.corp
(DISPLAY on b.corp is not set either)
$ echo $DISPLAY
$ xclock
Error: Can't open display:
Случай 2: я попытался установить переменную DISPLAY как
(DISPLAY on a.corp is not set)
$ echo $DISPLAY
$ ssh -X b.corp
$ export DISPLAY=`echo $SSH_CLIENT|cut -f1 -d\ `:0.0
$ echo $DISPLAY
192.168.100.130:0.0
$ xclock
Дисплей xclock открывается, но на мониторе, подключенном к b.corp (удаленный компьютер), а не на мониторе, подключенном к a.corp (локальный компьютер). Есть ли способ заставить дисплей отображаться на мониторе локальной машины (a.corp)?