С линуксом жизнь становится интересней, я бы даже сказал экспериментальней!
Меня потянуло на эксперименты с ssh, и то, что я получил в итоге - доступ с работы к домашнему компу - мне очень понравилось! Еще бы - классно управлять домашним компом, обновлять его и т.п. С девушкой даже с помощью festival разговаривал)))
Однако, захотелось пойти дальше, интересно, можно ли настроить удаленный доступ к рабочему столу, как позволяет это RAdmin в Windows? Можно конечно! Надо только настроить))
Покопался в интернете, нашел несколько статей про VNC - Virtual Network Computing, решил такое счастье сделать и у себя!
Для этого сначала необходимо было поставить несколько утилит:
sudo aptitude install vnc4-common vnc4server xvnc4viewer
Эти утилиты необходимы непосредственно для того, чтобы запускать удаленный сервер (vnc4server) и подключаться к нему с удаленного клиента (xvnc4viewer).
Установили! Теперь дело остается за малым: сначала нужно запустить vnc-сервер, а потом подключиться к нему.
Для запуска удаленного сервера, нужно в консоли набрать vncserver
Если это первый запуск vncserver в системе с этой учётной записью пользователя, тогда вы должны ввести пароль, который клиенты будут использовать при подключении, после чего запустится сервер, который будет доступен на порту 5901. Кстати, при запуске сервера в консоль выведется номер дисплея (виртуального), на котором он будет доступен, отсчет ведется с 1 (так как 0 - текущий дисплей). Пример запуска: igor@Voyageur:~$ vncserver
Здесь строчка New 'Voyageur:1 (igor)' desktop is Voyageur:1 как раз говорит о том, что у меня компе запустился сервер на дисплее 1, доступен он на порту 5901.
New 'Voyageur:1 (igor)' desktop is Voyageur:1
Starting applications specified in /home/igor/.vnc/xstartup
Log file is /home/igor/.vnc/Voyageur:1.log
Если vncserver запустить еще раз, то загрузится новый терминальный сервер :2 на порту 5902 и т.д.
Теперь попробуем зайти на этот сервер с удаленной машины. Для этого необходимо в консоли удаленного клиента ввести команду: vncviewer __hostname__:1
В этой команде __hostname__ - это имя или ip машины, на которой запущен удаленный сервер. Далее необходимо будет ввести пароль и в результате появится приблизительно вот такое окно:
Немного не то я ожидал увидеть если честно)) Начал разбираться, и оказалось, что vncserver запускает лишь новую сессию, а не подключается к текущей, именно для этого и нужны виртуальные дисплеи. А в этой сессии запущены twm (Tab Window Manager for the X Window System) и xterm.
Между прочим это все добро запускается из скрипта ~/.vnc/xtartup, который можно редактировать, удаляя ненужные и добавляя свои строчки запуска необходимых приложений. В самом верху скрипта есть небольшой комментарий: # Uncomment the following two lines for normal desktop:
То есть, чтобы получить нормальный рабочий стол, нужно раскомментировать 2 строчки. Я их раскомментировал, но ничего хорошего из этого у меня не вышло.
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
Посмотрел я на этот twm, и решил, что с этим убожеством работать нельзя. Я установил fluxbox (занимает всего 6 Мб) и в скрипте xstartup заменил строчку twm &
наfluxbox &
В итоге у меня получилось вот так:
Нормально для работы. Но не айс! Оперу можно запустить, еще некоторые приложения, но далеко не все (приложения kde выламываются)! Пробовал я вместо fluxbox'a запустить kde, но не пошло...Играет приветствие входа в систему, но вылетает окно с крахом плазмы и все, черный экран, занавес...
В итоге я получил удаленный доступ, но не такой как хотел! Мне-то хотелось иметь доступ к текущему рабочему столу, а не к мифическому дисплею 1, на котором загружается fluxbox, но не kde.
Что делать? Надо копать еще!!!
Я поискал в репозиториях пакеты, в названии которых присутствует "vnc", список оказался не очень большой, я начал читать комментарии к утилитам и библиотекам...В самом конце списка я увидел такую строчку: p xvnc4viewer - Virtual network computing client software for X
Очень похоже на то, что мне нужно!
Я установил x11vnc...man у этой утилиты знатный, несколько тысяч строк)) После небольшого его изучения я более менее разобрался с процедурой запуска и назначением утилиты.
Итак, x11vnc является фактически удаленным сервером (как и vncserver), но позволяет получать доступ к уже существующей X-сессии!
На машине, к которой необходимо подключиться: x11vnc -storepasswd
Эта команда позволит позаимствовать пароль для подключения к серверу из файла ~/.vnc/passwd (тут лежит пароль, который был задан при первом запуске vncserver). Далее непосредственно запустим x11vnc: x11vnc -usepw -display :0
Опция -usepw задействует использования пароля при подключении к серверу, -display :0 - запускает сервер на нулевом дисплее (так, где открыта текущая X-сессия).
Теперь мы с удаленной машины можем подключиться к текущей X-сессии, выполнив vncviewer __hostaname__:0
и введя пароль.
При закрытии окна удаленного рабочего стола, завершается и работа x11vnc (на сервере)
Таким образом, я получил то, что хотел))))
Напоследок приведу несколько опций для утилит vncserver, x11vnc и vncviewer, облегчающих траффик и жизнь))
vncserver
x11vnc
vncviewer
P.S. Кстати, если нужно, чтобы x11vnc запускался автоматически, то для этого его нужно добавить в автозагрузку: в Настройках системы выбрать пункт Автозагрузка (на второй вкладке), там добавить скрипт x11vnc -usepw -display :0 -q -forever &
и указать, что он должен запускаться до старта KDE!
Комментарии (72)
+1 Большое спасибо за статью. Пригодится!
А мне уже пригодилось. Я теперь ваще попы от стула не отрываю. Раньше хоть вставал фильм сменить а сейчас все это делаю со своего компа. Игорь, ещё раз благодарю :)
Отличная статья, прям целый детектив! Пиши еще! =)
=))) Ага, прям А.Кристи...
пользуюсь давненько... т.к. часто нужно с дома подключаться к рабочему ноуту.
Не решил единственную проблему подключения к :0 экрану до logon пользователя ... но думаю это не реально так как экран наверно появляется только при логоне. Тем более что ключик -usepw не будет знать где брать пароль.
Но встает вопрос:
можно ли средствами ssh\vnc авторизовать\залогонить пользователя чтоб в последствии залогонится по
x11vnc -usepw -display :0
Вообще экран должен появиться при старте kdm'a. Я пробовал добавить автозапуск в /etc/rc.local, но не стартует почему-то, возможно из-за того, что отработка /etc/rc.local проходит на этапе загрузки системы и до старта kdm.
А по поводу вопроса можно немного подробнее? Я просто не совсем понял, что имеется ввиду...
Нашел, как можно залогиниться удаленно через kdm. Для этого в файле /etc/kde4/kdm/kdmrc нужно поправить секцию Xdmcp:
[Xdmcp]
А затем в файл /etc/kde4/kdm/Xsetup добавить строчку запуска x11vnc:.....
#Enable=false
.....
KeyFile=/etc/kde4/kdm/kdmkeys
.....
KeyFile=/etc/kde4/kdm/kdmkeys
/usr/bin/x11vnc -dontdisconnect -forever -bg -o /var/log/x11vnc.log -rfbauth /home/<em>__имя_пользователя__</em>/.vnc/passwd
Теперь удаленно подключаться можно будет если работает только kdm.Вай, напарился я с этим VNC, но может и мой опыт поможет кому-то.
Сделал все по совету Voyageur, но ничего не работало, а когда таким же макаром пытался запустить из консоли вылазила ошибка с методами ее устранения. Так вот, заработало все таким макаром:
Система Debian Squeeze, оболочка KDE4.
Секцию Xdmcp поправил так:
[Xdmcp]
.....
#Enable=false
.....
KeyFile=/etc/kde4/kdm/kdmkeys
Aайл /etc/kde4/kdm/Xsetup отредактировал таким образом:
#! /bin/sh
Где USERNAME имя пользователя. Существенное различие, если вы заметили, в наличии параметров -env FD_XDM=1 -auth guess. Об их значениях можно прочитать набрав строку: man x11vnc ;).Xsetup - run as root before the login dialog appears
#xconsole -geometry 480x130-0-0 -notify -verbose -fn fixed -exitOnFail -file /dev/xconsole &
/usr/bin/x11vnc -env FD_XDM=1 -auth guess -dontdisconnect -usepw -display :0 -geometry 1024x768 -q -forever -reopen -noxfixes -bg -o /var/log/x11vnc.log -rfbauth /home/USERNAME/.vnc/passwd
Voyageur-у отдельное спасибо!
А маштабировать вьювер умеет? я чтото не нашел
Масштабировать - в каком смысле? Опция -geometry - не то?
P.S. А в остальном работает?))
Да работает, правда wow играть всеравно неполучилось слишком медленно катринка меняется.
Нет вроде она же делает размер окошка XxY а в окошке приходится прокручивать, в гуевых (krdc и тд) есть кнопочка маштабировать, и в этом окошке получается весь целиком рабочий стол просто маленький.
да кстате проверил гуевые вьюверы работают нормально теперь, только медленно картинка меняется. Дело в сервере значет
Google разрабатывает на базе freenx свой движок neatx (http://code.google.com/p/neatx/). Пока он нормально не доступен (можно из сырцов компилить, но еще много недоработок).
Зато скорость показывает изумительную. Значительно обгоняет и vnc и rdp.
Так что будем ждать.
да, умеет
Игорь, ну могу сказать только большое человеческое спасибо!
Давно поднял ssh с авторизацией по ключам. Так что хоть не приходилось бегать к серверу. Но вот побороть графику не получалось. Перепробовал много чего (и встроенных глючные КДЕшные krdc/krfb и несколько дней угробил на nx от nomachine и еще много чего). Либо глючит, либо не проберешься через доводку кувалдой.
А здесь все так просто. За 15 минут сделал.
Еще раз спасибо. Жалко, пока карму поднимать не могу :)
А мы с ним несколько дней страдали-страдали, ну что ни делаем, подключаешься только к тёмному экрану и всё... И главно даже куда копать не знаем...
1. Нужно проверить на сервере, не установлены ли другие пакеты vnc. В частности, по умолчанию с Кедами инсталлируется krdc и krfb. krdb - это тоже vnc сервер, только пока глючный. Он висит на тех же портах. И возможно ты коннектишься именно к нему. Итак, на сервере в консоль,
sudo aptitude
и поехал удалять krdc и krfb. А также поищи по слову vnc (с умом), может быть ты во время экспериментов еще каких-то пакетов поставил. После этого лучше перезапустить машину (ну или проверь, что демон точно убился, т.к. по умолчанию он остается висеть до следующей сессии).
После этого проверь, что остались нужные пакеты, а еще лучше дай команду
sudo aptitude install vnc4-common vnc4server xvnc4viewer x11vnc
2. На сервере в каталог ~/.vnc могло при экспериментах набраться всякого мусора + неправильно дать права. Быстрый способ: удали этот каталог с помощью
rm -R ~/.vnc
.После этого подряд дай две команды:
vncserver
sudo vncserver
Именно в такой последовательности, первая без sudo. Первая нужна, чтобы правильно установить владельца и права на создаваемый каталог ~/.vnc. Вторая как бы и не нужна, но перестрахуйся. При этом у тебя спросит пароль для подключения.
Проверь с помощью
ls -la ~/ | grep vnc
ls -la ~/.vnc
что твой пользователь имеет права на каталог и файлы. Если чего - chmod, chown
3. На сервере в консоли:
x11vnc -usepw -display :0 -q -forever &
Больше ничего не надо на сервере делать или править.
Бежишь к компьютеру, пробуешь подключиться с помощью:
vncviewer имя_сервера
или даже лучше:
vncviewer айпи_адрес_сервера
Заметь, что в конце можно поставить :0 как советовал Игорь, но не обязательно. И так работает. Должно спросить пароль на вход - значит достучался до сервера.
Если получил ожидаемый результат - удаленный экран - значит все в порядке и можешь делать скрипт автостарта. При этом заметь, что нужно именно создать отдельный файл со скриптом, а не просто вписать команду в автозагрузку.
4. Если и сейчас не работает - то пойдут уже глупые советы :) Попробуй еще проверить на сервере владельца и права каталога ~/.Xauthority - зачастую они не правильны. Дай своему пользователю с помощью chmod, chown разрешения. Т.к. возможно vnc сервер просто не может авторизироваться в текущей сессии. И повтори п.3.
Просто нет слов, отличное сообщение. При таких исчерпывающих инструкциях, очень мало есть вероятности не настроить...
Да и мне кажется, что если после всего этого не получится, то настраивать нужно будет уже не компьютер :-)
Вообщем, на неделе будет времени побольше (что-то под пятницу у-у-узвери работой закидали), попробую и отпишусь.
Все шло славно до ввода команды:
x11vnc -usepw -display :0 -q -forever &
на что консоль мне выплюнула:
~$ x11vnc -usepw -display :0 -q -forever &
[1] 1590
ibergard@ibergard-linux:~$ No protocol specified
No protocol specified
29/10/2010 10:19:13 ***************************************
29/10/2010 10:19:13 *** XOpenDisplay failed (:0)
*** x11vnc was unable to open the X DISPLAY: ":0", it cannot continue.
*** There may be "Xlib:" error messages above with details about the failure.
Some tips and guidelines:
** An X server (the one you wish to view) must be running before x11vnc is
started: x11vnc does not start the X server. (however, see the -create
option if that is what you really want).
** You must use -display <disp>, -OR- set and export your $DISPLAY
environment variable to refer to the display of the desired X server.
- Usually the display is simply ":0" (in fact x11vnc uses this if you forget
to specify it), but in some multi-user situations it could be ":1", ":2",
or even ":137". Ask your administrator or a guru if you are having
difficulty determining what your X DISPLAY is.
** Next, you need to have sufficient permissions (Xauthority)
to connect to the X DISPLAY. Here are some Tips:
- Often, you just need to run x11vnc as the user logged into the X session.
So make sure to be that user when you type x11vnc.
- Being root is usually not enough because the incorrect MIT-MAGIC-COOKIE
file will be accessed. The cookie file contains the secret key that
allows x11vnc to connect to the desired X DISPLAY.
- You can explicitly indicate which MIT-MAGIC-COOKIE file should be used
by the -auth option, e.g.:
x11vnc -auth /home/someuser/.Xauthority -display :0
x11vnc -auth /tmp/.gdmzndVlR -display :0
you must have read permission for the auth file.
** If NO ONE is logged into an X session yet, but there is a greeter login
program like "gdm", "kdm", "xdm", or "dtlogin" running, you will need
to find and use the raw display manager MIT-MAGIC-COOKIE file.
Some examples for various display managers:
gdm: -auth /var/gdm/:0.Xauth
-auth /var/lib/gdm/:0.Xauth
kdm: -auth /var/lib/kdm/A:0-crWk72
-auth /var/run/xauth/A:0-crWk72
xdm: -auth /var/lib/xdm/authdir/authfiles/A:0-XQvaJk
dtlogin: -auth /var/dt/A:0-UgaaXa
Sometimes the command "ps wwwwaux | grep auth" can reveal the file location.
Only root will have read permission for the file, and so x11vnc must be run
as root (or copy it). The random characters in the filenames will of course
change and the directory the cookie file resides in is system dependent.
See also: http://www.karlrunge.com/x11vnc/faq.html
Чего то я не вкуриваю что консоль от меня желает получить? Подскажите плз куда копать?
Спустя 10 лет ответ на эту проблему был таки найден. Правда, это стоило мне половины рабочего дня.
Проблема эта возникает в случае, когда на удаленном компе не был осуществлен вход локально пользователем. Чтобы войти глобально, нам нужно знать mit-magic-cookie, которым sddm авторизуется на XOrg. Для этого выполняем команду:
На нее выйдет ответ что-то типа:
Волшебной печенькой в этом ответе будет "-auth /var/run/sddm/{333eff87-e82e-442d-9f1b-ded03ce76909}".
После этого выполняем команду:
Причем делать это в первый раз нужно обязательно через sudo, иначе не сработает.
После этого логинимся в vnc-клиенте как обычно.
P.S. Если после этого грохнуть вот этот запущенный от рута внц-сервер, а потом запустить его как обычно, без печеньки, то можно логиниться как обычно, но при условии, что локальный сеанс уже был авторизован.
P.S. Не совсем про это, но на всякий случай положу это тут. Проблема с кириллицей в ВНЦ решается командой setxkbmap -display :0 us,ru, правда, тоже не без геморроя.
Я зарегистрировался только потому, что хотел поблагодарить вас.Спасибо вы ооооооооочень помогли.
А как в X11VNC включить SSH?
Каким образом решил проблему с русскими буквами?
а как решить проблему. в школе устанавливаем параллельно с ХР линукс. все установили. а как сделать так, чтобы через терминальный сервер можно было работать на другом компьютере.
KRDP вам в помощь!
Добрый день, подскажите как мне с помощью KRDP подключиться к удаленному столу ( Windows 7), или ссылку где это можно понять что сделать в Кубунту и что надо сделать в Windows 7.
Огромное спасибо
на виндозной банке надо запустить службу удаленного рабочего стола и переправерить, для каких пользователей разрешен доступ. Всё...
Спасибо за статью, все заработало, но вот такая проблемка: цепляюсь к удаленному рабочему столу через krdc, все нормально, но если не трогаешь мышь 5 секунд эгран гаснет, двинешь мышь, все работает... Никто не сталкивался с такой засадой?
Тоже такая проблемка: цепляюсь к удаленному рабочему столу через krdc но комп переходит в спящий режим через несколько секунд.
К сожалению, я проверить работу krdc не могу, поэтому и посоветовать что-либо дельное тоже) Но может быть кто-то еще сталкивался с такой проблемой?
Хорошая статья! Тоже VNC, с картинками, Archlinux+Ubuntu по wifi ad-hoc - Vinagre-просмотр удаленных Рабочих столов
Как на автозапуск вывести не решено еще?
У меня Xubunta... Автозапуск нужен позпрез!
Можно использовать upstart. по событию запуска kdm. Если ещё интересно - могу наваять скрипт.
Вот такой вопросик:
Vncviewer ругается, мол не может найти дисплей...
Запускаю сервер так:
x11vnc -usepw -display :0 -q -forever &
В консоли появляется следующее:
Вроде удачно...
Больше ничего в данной консоли сделать не удается. Цепляюсь вновь по ssh...
Проверяю слушают ли порт 5900
sudo netstat -a |grep 5900
tcp 0 0 *:5900 *:* LISTEN
tcp6 0 0 [::]:5900 [::]:* LISTEN
Вроде как да...
Дальше запускаю:
danila@danila-work-pc:~$ vncviewer 192.168.0.94
VNC Viewer Free Edition 4.1.1 for X - built Apr 9 2010 15:52:37
Copyright (C) 2002-2005 RealVNC Ltd.
See http://www.realvnc.com for information on VNC.
vncviewer: unable to open display ""
danila@danila-work-pc:~$
или
danila@danila-work-pc:~$ vncviewer 192.168.0.94:0
VNC Viewer Free Edition 4.1.1 for X - built Apr 9 2010 15:52:37
Copyright (C) 2002-2005 RealVNC Ltd.
See http://www.realvnc.com for information on VNC.
vncviewer: unable to open display ""
danila@danila-work-pc:~$
Так полагаю на пограничном маршрутизаторе необходимо организовывать DNAT для порта vnc-сервера, который запущен на удаленном ПК или так должно всё должно работать?
Как с Gnom можно обойти проблему с логином?
Если прально понял как залогиницо после перезагрузки ? недобавляя автозауск? что то типа так (ну я так делал) захлжу по ssh, дальше sudo x11vnc -auth /var/gdm/:0.Xauth -display :0 и x11vnc -usepw -display :0 -q -forever & потом ууже VNC клиентом.
Для подключения к удалённому компу на котором не залогинен пользователь работает такая комбинация:
ssh <IP>
su
x11vnc -auth /var/gdm/:0.Xauth -display :0 -forever &
exit
exit
vncviewer <IP>
Здравствуйте!
Подскажите после этой команды vncviewer __hostname__:1 у вас на картинки горит окно а в нём ещё а уменя горит только серый фон и всё !
Как исправить?
Игорь с п а с и б о !
Вопрос:
Как запустить x11vnc на другом порту, отличном от 5900?
Ответ:
$ x11vnc -usepw -display :0 -rfbport 5999
и подключаться так: ip_adres:5999:0
Именно IP, а не имя сервера?
А, если IP динамический?
Без прямого IP не получится подключиться.
"Спасибо за статью", но лучше чем TeamViewer я пока ненашол
Ну хз хз... Под Linux'ом TeamViewer ни что иное, как УГ.
IMHO.
Не хотят запилить нативную версию...
Насчёт тим-вьюера: могу только согласиться с предыдущим оратором. К сожалению, порой всё равно приходится на работе использовать эту проприетарную дрянь:(
А статья очень годная - СПАСИБО! Я хоть и юзаю только Debian+Gnome, очень благодарен, ибо подходит и для моего случая, и для Sun Solaris у меня на терминальном сервере (только там пришлось вручную бинарники собирать). С праздником вас, кстати.
все отлично, не хватает одной функции как в тим-вьюере, сервера на который мог бы клиент обратиться и зарегистрироваться. Есть мысли?
подскажите, а как в автозагрузку засунуть.
Чтоб к компу этому вообще не подходить.
Типа загрузился комп и сразу по удалёнке цепляешься.
OS ubuntu 11.04
как в статье написано загружается только после как залогинишся, а надо сразу чтоб на сервере кнопки не нажимать!
Попробуйте проделать манипуляции из вот этого комментария, а также из следующего за ним.
Дело в том что там прописано для KDE 4? А как сделать для Gnome?
Сам пробую под гномом. вроде зацепился, по крайней мере в процессах есть. делал по этой методике.
и думаю что надо добавить gvncviewer как описано здесь.
спасибо за статью, но меня есть пару вопросов.
как прописать размеры дисплея? -geometry 800x600 не совсем понятно, можно каманду целиком. И есчё место русского языка какие то иегоргифы, как исправить, зарание спасибо!
в ~/.vnc/xtartup дописать
gnome-session &
и все пашет без всякого x11vnc
а как быть, если у меня Xface ?
gnome-session его запустит автоматом ?
Все сделал, но приконнектится можно только если руками ввести в терминале
x11vnc -usepw -display :0 -q -forever &
и терминал не закрывать. Если терминал закрыть, то све коннекта нет. Тоже самое если перезагрузиться, придется зайти TeamViewer'ром запустить терминал и запуститьx11vnc -usepw -display :0 -q -forever &
. Главное не закрывать терминал, а свернуть, закроешь все, коннекта нет :(Куда капать?
Проверяю chkconfig загружен -> x11vnc
Система Xubuntu 11.10
Допер, у меня же в Xubuntu 11.10 не gdm, LightDM :) Создал файл /etc/init/x11vnc.conf прописал скрипт и все стало ОК.
А у меня в Альт Линуксе 6.0 открывается черный экран с серым окошком, тремя полями и тремя кнопками. Ни текста, ни графики нету. Куда копаться? :(
Товарищи, помогите начинающему!
Я пытался настроить доступ к своему серверу на Kubuntu 12 по этой инструкции. В качестве клиента у меня Windows 7 - Real VNC. Я вобщем-то многого не делал:
Настроил startup task: x11vnc -usepw -display :0 -q -forever
Поставил разрешение 800x600 в кубунте (чтобы влезало в экран ноута)
Поставил auto login + lock, иначе Real VNC не видит сервера (потому что он не запущен, как я понимаю).
Все работало чудесно, пока я не:
Отключил монитор от сервера (сервер же!)
Перезагрузил сервер
После этого я подключиться все еще могу, но экран скукожился до очень маленьких размеров.
На сколько я понимаю, это из-за того, что икс сервер не видит монитор (его нет!) и не может поставить разрешение. Но я начинающий могу ошибаться.
Помогите, пожалуйста. Если возможно, пишите максимально подробные комменты, то что вам очевидно, ламеру может быть вообще не понятно...
Присоединяюсь. Только у меня (Kubuntu 12.10) если системник грузится без подключенного монитора, с Win7 VNC просто не подключается, хотя пинг идёт. И если к загруженному таким образом системнику подключать клавиатуру-мышь-монитор, он на них никак не реагирует. Видимо, после изучения интернетов, не стартует X-сервер. Думаю, как бы обойти это, чтобы не пеерсаживаться на Windows XP...
За статью спасибо!
Rabinovich, у меня та же проблема.
Только на сервере стоит Lubuntu , при загрузке сервера с монитором, к столу по удаленке цепляюсь, все отлично работает, но если загрузить сервер без подключенного монитора, то X-сервер не запускается на Display.
А vncserver выдает:
Куда копать, пока не нашел :(
В общем нашел хоть какой-то способ запуска без монитора.
Для задачи "Управление сканером" хватает.
Вот здесь подсмотрел решение, может кому пригодится:
http://romanrm.ru/persistent-apps-in-vnc
Привет.
У меня ноутбук, и надо было отключить экран, чтобы можно было с ним работать только через VNC. Если я просто отключал экран (xrandr --output LVDS --off), то у меня тоже был маленький экранчик в VNC-клиенте.
Я решил эту проблему вот таким образом: сделал скрипт, который выполняется после старта X-сервера. Он должен выполняться последним, чтобы среда успела прогрузиться.
x11vnc -forever -bg
sleep 5
xrandr --fb 1280x800
sleep 1
xrandr --output LVDS --off
sleep 1
xrandr --fb 1280x800
Вместо LVDS должно стоять название того устройства, которое соответствует Вашему монитору (его показывает запуск xrandr без параметров). Значения для Sleep-ов придумал из головы. Первый запуск xrandr --fb возможно и не нужен, но я уже не хочу проверять, и так работает.
Смысл в том, что раз экран маленький, значит, он есть, а если он есть, то его можно расширить - это и делает команда xrandr --fb <разрешение>. Разрешение, наверное, может быть любым, я поставил то, что у меня на ноутбуке.
фух... спасибо огромное, кучу статей перечитал, никак не мог понять какого фига серверная часть вырубается при отключении клиента... благодаря этой статье - всё таки настроил на нормальную работу.
Это самая годная статья во всем интернете на эту тему!
Большая просьба добавить в статью следующее
---------------------------------------------
Дополнение для Ubuntu 11.10
В Ubuntu 11.10 и новее вместо gdm по-умолчанию используется LightDM, поэтому настройка x11vnc в этой версии Ubuntu немного отличается от предыдущих.
После установки x11vnc создайте файл /etc/init/x11vnc.conf, в который добавьте следующий код:
start on login-session-start
script
x11vnc -dontdisconnect -display :0 -auth /var/run/lightdm/root/:0 -notruecolor -noxfixes -shared -forever -rfbport 5900 -bg -o /var/log/x11vnc.log -rfbauth /home/USERNAME/.vnc/passwd
end script
Соответственно, измените путь к файлу с паролем и параметры запуска x11vnc. После перезагрузки x11vnc будет готов к работе.
-------------------------------------------------------------------
а то эта статья в поиске находиться первой а потом долго приходиться искать как все это запустить для последних версий системы
Никак не могу понять как получить неискаженное изображение при следующей ситуации
монитор на сервере 1680x1050
а на клиенте 1280x1024
я так понимаю что это как то связано с параметрами x11vnc: scale и geometry?
или я вообще не туда смотрю?
я так понимаю что это как то связано с тем что здесь уже спрашивалось чуть раньше:
----------------------------------------------------------------------------------------
в гуевых (krdc и тд) есть кнопочка маштабировать, и в этом окошке получается весь целиком рабочий стол просто маленький.
----------------------------------------------------------------------------------------
у меня пароль взяло командой
-rfbauth /путькпаролю
, созданному командой-storepasswd
Огромное спасибо много всего перепробовал самый лучший вариант
Присоединяюсь! Спасибо! Поскольку /etc/rc.local видимо стал не модным, то этот вариант идеален!
__________________________
Ubuntu 18.04
KDE 5.44.0 / Plasma 5.12.7
Единственное дополню с учетом нынешней ситуации.
Файла /etc/kde4/kdm/kdmrc нет. В /etc/ нет даже директории kde*,
а сей файл /etc/kde4/kdm/Xsetup находится по адресу /usr/share/sddm/scripts/Xsetup
Вот к его правке сразу и переходим!
Пользую связку Remmina + TightVNC (на клиентах). И не редко, при открытии всяческих всплывающих меню, на клиенте падает сервер и соединение рвётся. Сервер перегружается сам и через минуту/полторы можно снова подключаться. Иногда, реально утомляет. Кто-нибудь наступал на такие грабли?
Сам спросил, сам ответил. Рецепт:
wget http://x11vnc.sourceforge.net/dev/x11vnc-0.9.14-dev.tar.gz
gzip -dc x11vnc-0.9.14-dev.tar.gz | tar -xvf -
cd x11vnc-0.9.14/
./configure --prefix=/usr/local CFLAGS='-g -O2 -fno-stack-protector -Wall'
Всё, что не нашлось, доустанавливаем. Всякие libx11-dev, libjpeg, etc ...
make
sudo systemctl stop x11vnc.service
Если был из реп, удаляем - sudo apt remove x11vnc
Правим файл /lib/systemd/system/x11vnc.service, т.к. у нас теперь путь /usr/local/bin/x11vnc
sudo systemctl daemon-reload
sudo systemctl start x11vnc.service
Profit!
Вот здесь сказано:
Прописываю путь, однако, консоль отвечает, что такой директории, или файла нет!
У меня только это не работает?
Оказалось, что название файла с паролем нельзя прописывать с большой буквы!
Добрый день.
Кто-то сталкивался с такой ситуацией:
- за компьютером работает несколько человек
- первый не завершил сеанс, а второй переключился на другую учетку
- в результе подключаемся к "зависшей" первой сессии с черным экраном.
Как бы подключаться к активной?
p.s. Требуется подключаться для сопровождения пользователей
нужно узнать номер дисплея активного и к нему подключатся
Отправить комментарий