Кто-нибудь знает, как клонировать / подключиться к работающему серверу xorg, чтобы увидеть в мягком реальном времени, что показывает монитор / дисплей (дисплей находится в паре миль, но я могу добраться до него через TCP / IP)? У меня есть небольшой скрипт для получения снимка экрана, но он немного ограничен.
#!/bin/bash
REMOTE_USER=root
IP=$1
IMAGE_FILE=/tmp/host_${IP}_`date +"%Y%m%d-%H:%M:%S"`.png
ssh root@$IP 'xwd -d :0 -root | gzip' | gunzip | convert - $IMAGE_FILE
Я подумал, что было бы неплохо посмотреть, что показывает дисплей в мягком реальном времени, если, конечно, возможно. :)
Заранее спасибо,
Humber
Если вы хотите установить x11vnc на удаленном компьютере, вы можете использовать его следующим образом:
ssh remote_ip_address sudo x11vnc -auth /home/some_user/.Xauthority -display: 0
Не забудьте включить перенаправление X11 в sshd.config. И вам нужен клиент VNC.
Если вы не хотите использовать VNC, вы можете использовать любую другую программу, например Xnest:
Xnest -geometry 1024x768: 1 & DISPLAY =: 1 ssh -X gnome-session
Потребуются некоторые модификации для вашего конкретного случая, но для тех, кто использует xwd, это не должно быть проблемой.
У меня это в bin / startvnc на моих машинах:
x11vnc -display :0 -localhost -nopw -clear_mods
Если на коробке есть другие пользователи, удалите -nopw
если вы параноик по поводу безопасности.
Я вхожу в систему примерно так:
ssh -C -L 5904:localhost:5900 box
а затем запустить startvnc
затем на моем локальном компьютере запустите
xvncviewer 0:1
Это не так автоматизировано, как одиночная команда, но я всегда вхожу в сеанс экрана, поэтому, если я хочу использовать vnc, я просто открываю новое окно экрана и запускаю startvnc,
Может быть, для вашего конкретного случая это перебор. Но я все равно отправлю его на случай, если он будет полезен другим людям, которые будут задавать этот вопрос в будущем.
Другой способ подключиться к сеансу X - настроить FreeNX на машине, которой вы хотите управлять удаленно. Затем на вашем локальном компьютере вы должны запустить клиент NX, запросив теневой сеанс.
Когда клиент NX подключается к удаленному компьютеру, вам будет показан список доступных сеансов. Если вы выберете «X0 (Local)», вы сможете видеть удаленный дисплей и управлять им.
Более подробную информацию вы можете найти на Начало работы с NX (см. раздел 4.5, «Совместное использование рабочего стола и теневое копирование сеанса»)
На самом деле с некоторым дистрибутивом, таким как Opensuse 11.2, если вы собираетесь использовать x11vnc, вам, вероятно, понадобится использовать файл .Xauthority, созданный для диспетчера входа (gdm, kdm), вместо файла, созданного для самого пользователя. (что-то вроде /home/user/.Xauthority или около того), и вы можете найти его в Opensuse, посмотрев на:
/ var / lib / xdm / authdir / authfiles / что-то-имя-псевдослучайно сгенерировано
Если вы используете другой дистрибутив, вам, вероятно, следует посмотреть / var / lib / gdm, / var / lib / kdm и аналогичные каталоги.