Выполнить rdesktop через ssh на удаленной машине

473
raism

У меня есть 4 разных малиновых устройства, которые я подключаю к 4 различным мониторам. Предыдущий техник из моей компании установил и включил сервер vnc для всех них, чтобы он мог удаленно подключиться к ним и запустить всего одну команду.

rdesktop -f -d -k en-us -d ourdomain -u tv1 10.xxx.xxx.xx1 

Он просто подключался к каждому из них для запуска вышеуказанной команды, но, конечно, с другим пользователем и терминальным сервером. Я искал более удобный способ, чтобы все вышеперечисленное из моей коробки fedora сочетало в себе мощь sshpass и ssh. Итак, сначала я попробовал

sshpass -p 'somepass' ssh pi@10.xxx.xxx.xx1 

а затем из сеанса я бегу

rdesktop -f -d -k en-us -d ourdomain -u tv1 10.xxx.xxx.xx1 

но я получил сообщение об ошибке «Не удалось открыть порт дисплея». Теперь я знаю, что результаты этой команды или любой другой команды будут отображаться в моем терминале. Поэтому я попробовал несколько вариантов команды ssh, но в результате я увидел rdsektop на моем экране или вышеприведенную ошибку.

sshpass -p 'somepass' ssh pi@10.xxx.xxx.xx1 -t rdesktop -f -d -k en-us -d ourdomain -u tv1 10.xxx.xxx.xx1 

или же

sshpass -p 'somepass' ssh pi@10.xxx.xxx.xx1 -t -X rdesktop -f -d -k en-us -d ourdomain -u tv1 10.xxx.xxx.xx1 

Здесь я ожидаю выполнить команду rdesktop на удаленной машине и показать на этом экране телевизора сеанс, который я создал ранее. В нескольких словах. Обходи вход в vnc и делай все это из ssh. Там в любом случае? Я знаю, что где-то я не прав, но я не могу понять, где я не прав.

0
Вы проверили историю? Canadian Luke 8 лет назад 0

1 ответ на вопрос

1
Zoredache

не удалось открыть порт дисплея

Эта команда указывает на то, что вы, вероятно, не выполняете пересылку X11 автоматически. Но вы, похоже, пытаетесь запустить приложение X11 из удаленной системы.

Если вы планируете запускать rdesktop из удаленной системы, то вам нужен SSH-сервер для поддержки пересылки X11, вам нужен xauthпакет, установленный на удаленном компьютере. Вам нужно либо настроить конфигурацию клиента ssh, /etc/ssh/ssh_configлибо ~/.ssh/configперейти -Xв sshкомандную строку, чтобы включить переадресацию X11 с клиента.

Запуск rdesktopс удаленного компьютера может быть не лучшим вариантом. В основном у вас есть все издержки сеанса X11 плюс все накладные расходы сеанса RDP. Возможно, вам лучше использовать функции переадресации портов SSH, а затем запустить локальный клиент rdesktop / freerdp. Таким образом, вы можете пропустить медлительность, характерную для удаленных сеансов X11.

Конечно, последнее замечание, я настоятельно рекомендую вам пересмотреть использование sshpass. Если это вообще возможно, вы должны вместо этого использовать аутентификацию на основе ключей.

sshpass -p 'somepass' ssh pi@10.xxx.xxx.xx1 -t -X rdesktop -f -d -k en-us -d наш домен -u tv1 10.xxx.xxx.xx1 raism 8 лет назад 0
Приведенная выше команда выводит сеанс rdesktop на мой экран ... все, что я пытаюсь сделать, это выполнить rdesktop на этом удаленном компьютере и оставить rdesktop на экране этого удаленного компьютера. Что касается совета sshpass, большое спасибо. Я собирался перейти от этого к процедуре аутентификации на основе ключей и сертификатов. raism 8 лет назад 0
«все, что я пытаюсь сделать, это выполнить rdesktop на этом удаленном компьютере и оставить rdesktop на экране этого удаленного компьютера». - На этом компьютере работает сервер X11? Это вошло в систему? Запуск приложения в удаленной системе для отображения на удаленном X11 требует совершенно другой команды, которую я не знаю, от души. Zoredache 8 лет назад 0
да, у него есть .... это распбиан. Вот почему предыдущая технология использовала vnc, чего я пытаюсь избежать. raism 8 лет назад 0
Любые новые идеи .... Я все еще ищу решение ..... Вам нужна дополнительная информация? @zoredache raism 8 лет назад 0

Похожие вопросы