Как я могу запустить программу удаленно через SSH, но отображать локально

22

Возможно ли для меня SSH к другому серверу в Linux (Ubuntu), запустить программу там, но отображать ее локально?

И возможно ли мне подключиться к другому серверу SSH в моем терминале и настроить его так, чтобы все графические программы (Firefox, Emacs), запущенные в этом сеансе SSH, отображались локально?

Майкл
источник

Ответы:

24

При добавлении флага «-Y» в команду ssh дисплей будет автоматически перенаправлен на ваш локальный компьютер.

ssh -Y <remoteip>

Затем, если вы запустите Firefox (или любое другое приложение X) в этом сеансе ssh, он будет отображаться локально. (Если у вас есть xserver, работающий локально, конечно)

Лоран Паренто
источник
2
Очень умно. Я использовал ssh в течение многих лет и никогда не знал, что существует.
ДэйвПарилло
1
Я буду использовать, -Xтак как этот способ переадресации подвергается X11 SECURITY. Но если вы доверяете удаленной машине, то вы можете использовать -Y.
fmanco
В Unix, таких как HP UX 11i, -Y - путь из-за проблем несовместимости с -X.
Сова
это работает, когда удаленной машиной является Windows? Я могу заставить это показать.
Марк Девен
5

Вы хотите сделать удаленный X. Это хороший мини HOWTO .

mindless.panda
источник
эээ, не для чего-нибудь безголового, у которого нет X. htop например.
Маккензм
3

Вы также можете попробовать это:

ssh <hostname> -X <program-name or its full path>
Xolve
источник
2

Использование также может использовать сжатие при использовании X-forwarding:

ssh $HOSTNAME -CY $PROCESS
Вайбхав Баджпай
источник