Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: как запустить программу на другом tty?  (Прочитано 5076 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн vit3000

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
собственно стоит задача зайти на машину через ssh и запустить в gnome сессии (tty7) программу, которая имеет графическую оболочку

Оффлайн Charles Malaheenee

  • Активист
  • *
  • Сообщений: 756
  • Учтите, мы можем дать и вредный совет.
    • Просмотр профиля
Re: как запустить программу на другом tty?
« Ответ #1 : 25 Декабря 2010, 11:11:14 »
man ssh
А там:
Цитировать
     -X      Enables X11 forwarding.  This can also be specified on a per-host basis in a configuration file.

             X11 forwarding should be enabled with caution.  Users with the ability to bypass file permissions on
             the remote host (for the user's X authorization database) can access the local X11 display through the
             forwarded connection.  An attacker may then be able to perform activities such as keystroke monitoring.

             For this reason, X11 forwarding is subjected to X11 SECURITY extension restrictions by default.  Please
             refer to the ssh -Y option and the ForwardX11Trusted directive in ssh_config(5) for more information.
Все мы где-то, когда-то и в чем-то были новичками.

Оффлайн vit3000

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: как запустить программу на другом tty?
« Ответ #2 : 25 Декабря 2010, 12:14:35 »
Если честно, то ничего не происходит после манипуляций описанных выше.
P.S.
Пробую запускать teamviewr

-
Вернее ошибок нет, но и не запускается программа

Оффлайн gregory5

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5085
    • Просмотр профиля
Re: как запустить программу на другом tty?
« Ответ #3 : 25 Декабря 2010, 12:21:02 »


я что то не так делаю?

Оффлайн Charles Malaheenee

  • Активист
  • *
  • Сообщений: 756
  • Учтите, мы можем дать и вредный совет.
    • Просмотр профиля
Re: как запустить программу на другом tty?
« Ответ #4 : 25 Декабря 2010, 12:48:08 »
Тогда объяснение поподробнее:
1. на клиентской машине в файле ssh_config должны быть следующие строки:
ForwardX11 yes
ForwardX11Trusted yes

2. на серверной (туда, куда подключаетесь) в файле sshd_config должны быть следующие строки:
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

3. Вот тогда можно подключаться и без ключа -X.
Все мы где-то, когда-то и в чем-то были новичками.

Оффлайн vit3000

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: как запустить программу на другом tty?
« Ответ #5 : 25 Декабря 2010, 16:37:07 »
Перепроверил несколько раз - все включено в настройках sshd_config.
Переустановил ssh на обоих машинах (из за чего пришлось благополучно добираться до второй машины). Непомогло.
Я понимаю - чудес на свете не бывает, но не запускает, зараза, в гноме программы и всё тут.

На обоих машинах стоит 10.04. Кстати, после переустановки ssh файл /etc/ssh/ssh_config не создался (восстановил из арх.)

может будут какие-то мысли?

Пользователь решил продолжить мысль 25 Декабря 2010, 18:02:55:
После манипуляций из этого поста https://forum.ubuntu.ru/index.php?topic=120715.msg894500#msg894500
стали запускаться программы, но не на удаленном терминале, а почему-то на локальном

Пользователь решил продолжить мысль 25 Декабря 2010, 20:38:56:
Все, я понял, что вы мне хотели показать.
Мне не нужны были производные vnc, и загружать на "мой" gnome удалленные программы. Это было бы слишком при мобайл соединении.
Поэтому уточню, чтоли, свой вопрос.

стоит задача зайти на машину через ssh и запустить в gnome сессии (tty7) удаленной машины программу, которая имеет графическую оболочку, и вообщем то видеть мне ее не надо
« Последнее редактирование: 25 Декабря 2010, 20:40:15 от vit3000 »

Оффлайн Vitsliputsli

  • Старожил
  • *
  • Сообщений: 1293
    • Просмотр профиля
Re: как запустить программу на другом tty?
« Ответ #6 : 25 Декабря 2010, 21:37:02 »
Цитировать
стоит задача зайти на машину через ssh и запустить в gnome сессии (tty7) удаленной машины программу, которая имеет графическую оболочку, и вообщем то видеть мне ее не надо
Ну так просто нужно указать программе где запускаться, и все...
export DISPLAY=":0.0"

Оффлайн vit3000

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: как запустить программу на другом tty?
« Ответ #7 : 26 Декабря 2010, 14:39:35 »

Ну так просто нужно указать программе где запускаться, и все...
export DISPLAY=":0.0"

Не вышло.

user@pc:~$ export DISPLAY=":0.0"
user@pc:~$ echo $DISPLAY
.0:0
user@pc:~$ xclock
Error: Can't open display: .0:0

В гноме
user@pc:~$ echo $DISPLAY
.0:0



Пользователь решил продолжить мысль 26 Декабря 2010, 15:48:15:
Vitsliputsli я был не прав в части не получилось.

Напишу все что делал, может кому пригодится.
Актуально для 10.04, в других версиях может быть как то по другому.

В конфиге /etc/ssh/sshd_config
X11Forwarding yes
X11DisplayOffset 10

Из этого поста https://forum.ubuntu.ru/index.php?topic=120715.msg894500#msg894500

Цитировать
скрипт запуска ssh портировали на upstart, да не полностью. Теперь /etc/default/ssh не участвует. Правь /etc/init/ssh.conf в части:
exec /usr/sbin/sshd -4

Заходить с ключом  -Х.
Далее
export DISPLAY=":0.0"
Запускать нужную софтину.
Правда у меня получается это все при условии, что подключился под логином активного юзера на удаленном пк.
« Последнее редактирование: 26 Декабря 2010, 15:50:11 от vit3000 »

Оффлайн Vitsliputsli

  • Старожил
  • *
  • Сообщений: 1293
    • Просмотр профиля
Re: как запустить программу на другом tty?
« Ответ #8 : 27 Декабря 2010, 00:07:13 »
Цитировать
user@pc:~$ export DISPLAY=":0.0"
user@pc:~$ echo $DISPLAY
.0:0
user@pc:~$ xclock
Error: Can't open display: .0:0
Так и не понял как ":0.0" превратилось в ".0:0". Разумеется никакого дисплея .0:0 не существует.

Цитировать
Правда у меня получается это все при условии, что подключился под логином активного юзера на удаленном пк.
А где же вы хотите запустить приложение, если пользователь не то что не запустил иксы, а даже не авторизировался?

Оффлайн BartleBy2

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: как запустить программу на другом tty?
« Ответ #9 : 28 Февраля 2011, 04:11:48 »
Заранее извиняюсь за то что поднимаю давно уже почившую тему, но новенький еще в линуксе...
задался вопросом смены изображения на фоне рабочего стола гнома.
делаю у себя на машине : gconftool-2 -s /desktop/gnome/background/picture_filename /tmp/jpg.jpg -t string все прекрасно...

подключаюсь к консоли удаленной машины через ssh... делаю то же самое там, но к сожалению картинка не меняется. есть мнение (основанное на каких-то домыслах своего мозга), что команду нужно отправлять на tty7... возможно не прав. помогите с решением вопроса, а то не могу никак приколоться над товарищем...
(пробовал так же вкинуть скрипт на машину и запустить удалено sh script.sh - не работает =( )

 

Страница сгенерирована за 0.018 секунд. Запросов: 20.