Skip to content


Удалённый запуск GUI-программ

Возникла задача - установить на удалённый Linux-сервер с CentOS 6.2 (далее по тексту будет фигурировать под именем remote.server.com) антивирус Eset NOD32. Linux-версия данного продукта имеется, но, к сожалению, установщик представляет собой бинарный файл с GUI, основанным на GTK. На сервере, естественно, никаких X-Window System нет и не планируется. Следовательно, нам нужно как-то изловчиться, чтобы графика софтины отрисовывалась на нашей рабочей машинке с монитором, а сама софтина при этом была запущена на удалённом сервере. Последовательность решения задачи следующая:

ssh-x11-forwarding

Запуск GUI-программ на удалённом сервере без монитора

1. Устанавливаем на сервер пакет xorg-x11-xauth.
2. Переносим Magic-Cookie с localhost-а на сервер с помощью команды:

  1. $ xauth extract - $DISPLAY | ssh remote.server.com 'xauth merge -'
  2. xauth:  creating new authority file /home/avz/.Xauthority

3. Проверяем, что на сервере в конфиге sshd разрешён X11-Forwarding, если нет – меняем значение на "yes" и перезапускаем ssh-демон:

  1. # grep X11Forwarding /etc/ssh/sshd_config
  2. X11Forwarding yes

4. Открываем новую SSH-сессию с ключиком -X и запускаем в ней нужную команду, которая работает с графикой:

  1. ssh -X remote.server.com /home/avz/eset_nod32av_64bit_en.linux

С этого момента программа для взаимодействия с оператором использует монитор, клавиатуру и мышь localhost-а, а другие аппаратные ресурсы (файловую систему, сеть, процессор, память и т.д.) – сервера. Конкретно в моём случае это позволило установить и сконфигурировать антивирус, что было бы невозможно одним только command-line-ом.

Если на localhost-е стоит windows, то аналогичного эффекта можно добиться с помощью Putty и Xming.

P.S. Есть у меня подозрение, что пункт 2 не совсем обязательный, но без него у меня почему-то не работало на одном сервере. А вот на другом - работало и без пункта 2.

Полезные ссылки по теме:

Предлагаем услугу: чистка от компьютерных вирусов - Ит Сервис .

Размещено в категории *nix, Howto. Теги: .

Комментариев: 1

Чтобы быть всегда в курсе здесь происходящего, Вы можете подписаться на RSS feed для комментариев на эту заметку.

  1. Есть еще xvfb - X Virtual Frame Buffer - тулза для запуска GUI-приложений на headless-серверах. В CentOS пакет называется xorg-x11-server-Xvfb.

    Хоть и немного из другой оперы, но тоже по теме.

Some HTML is OK

(required)

(required, but never shared)

, или ответить через trackback.

Страница 1 из 11