Включить удаленный VNC из командной строки?

61

У меня есть один компьютер с Ubuntu 10.04 и работает Vino - сервер VNC по умолчанию.

У меня есть второй ящик Windows, в котором работает клиент VNC, но у него нет возможностей X11. Я ssh'd в хост Ubuntu с хоста Windows, но я забыл включить доступ VNC на хосте Ubuntu.

На хосте Ubuntu есть ли способ включить VNC-соединения из командной строки Ubuntu?

Update:

Как сообщает @koanhead, нет man-страницы для vino (например, man -k vino и info vino ничего не возвращает), а vino --help не показывает никакой помощи).

    
задан Stefan Lasiewski 21.09.2010 в 05:29
источник

10 ответов

25

Просто запустите

/usr/lib/vino/vino-server

должен выполнить эту работу.

Как только у вас будет доступ к вашему серверу, я рекомендую вам добавить его в Autostarted Apps, чтобы он всегда запускался.

Вам, вероятно, понравится изменить некоторые настройки с помощью:

vino-preferences

Будьте очень осторожны при запуске vino-предпочтения на удаленном компьютере, если вы снимите флажок «Разрешить другим пользователям управлять вашим рабочим столом», вы не сможете проверить его.

или для редактирования:

~/.gconf/desktop/gnome/remote_access/%gconf.xml

Вот пример файла:

<?xml version="1.0"?>
<gconf>
    <entry name="vnc_password" mtime="1289267042" type="string">
        <stringvalue>cXdlcnR5</stringvalue>
    </entry>
    <entry name="view_only" mtime="1289262982" type="bool" value="false"/>
    <entry name="prompt_enabled" mtime="1254965869" type="bool" value="false"/>
    <entry name="authentication_methods" mtime="1289267034" type="list" ltype="string">
        <li type="string">
            <stringvalue>vnc</stringvalue>
        </li>
    </entry>
    <entry name="enabled" mtime="1289263574" type="bool" value="true"/>
</gconf>

Будьте осторожны, пароль закодирован base64. Для этого файла пароль - qwerty. На каком-то форуме я вижу, что люди успешно меняют его, но у меня проблемы с ним.

Здесь онлайн-кодировщик base64:

Ссылка

    
ответ дан Guillaume Coté 08.11.2010 в 23:49
источник
27

Краткий ответ:

gconftool-2 --set --type=bool /desktop/gnome/remote_access/enabled true

, как говорится в принятом ответе, если vino не запущен на удаленной машине, используйте

/usr/lib/vino/vino-server

Длинный ответ и дополнительная информация:

Подмножество настроек для текущего встроенного сервера удаленного доступа (vino) можно увидеть, как уже упоминалось, из настроек vino. Полный список флагов gconf можно увидеть с помощью команды gconf-editor , указанной в разделе / desktop / gnome / remote_access. Вы также можете увидеть другие ключи remote_access с помощью этой команды (или вариации на ней):

gconftool-2 -a /desktop/gnome/remote_access

(По какой-то причине, -R также будет работать.)

Вы также можете получить документацию по схеме с помощью --long-docs arg.

Например, для ключа alternative_port:

gconftool-2 --long-docs /desktop/gnome/remote_access/alternative_port

       The port which the server will listen to if the
       'use_alternative_port' key is set to true.
       Valid values are in the range from 5000 to 50000.

Итак, например, как изменить порт по умолчанию через командную строку:

gconftool-2 --set --type=bool /desktop/gnome/remote_access/use_alternative_port true
gconftool-2 --set --type=int /desktop/gnome/remote_access/alternative_port 5999

gconftool предоставит вам ключи под заданным каталогом. Вот раздел «remote_access»:

gconftool-2 -a /desktop/gnome/remote_access
 use_upnp = false
 vnc_password = 
 authentication_methods = [vnc]
 network_interface = 
 require_encryption = false
 disable_background = false
 enabled = true
 use_alternative_port = false
 mailto = 
 disable_xdamage = false
 lock_screen_on_disconnect = false
 icon_visibility = always
 view_only = false
 prompt_enabled = true
 alternative_port = 5900

Ниже перечислены все документы схемы под / desk / gnome / remote / access (через командную строку / bin / bash):

for key in ' gconftool-2 -a /desktop/gnome/remote_access | awk '{print $1}'  ' ; do echo $key ; gconftool-2 --long-docs /desktop/gnome/remote_access/$key ; done
    
ответ дан belacqua 20.01.2011 в 02:08
23

Я также хотел включить vino с командной строкой, не входя в настройки vino.

Когда я запустил /usr/lib/vino/vino-server , он говорит, что у меня не было включенного доступа к рабочему столу.

С Unity gconftool больше не используется. Мы должны сделать это через gsettings .

Итак, сначала включите vino:

gsettings set org.gnome.Vino enabled true

Затем запустите vino:

/usr/lib/vino/vino-server

Теперь вы можете получить доступ к удаленному компьютеру.

Если вы хотите видеть все конфигурации, доступные для Vino:

gsettings list-keys org.gnome.Vino
    
ответ дан ouzmoutous 07.03.2013 в 09:00
17

В Ubuntu 14.04 я нашел для меня следующее изменение:

export DISPLAY=:0
gsettings set org.gnome.Vino enabled true
gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino require-encryption false
/usr/lib/vino/vino-server

Если это не сработает, ваш X-сеанс может работать на чем-то, отличном от :0 , поэтому быстрый ps aux | grep X должен показывать :1 или :2

    
ответ дан Taeram 29.09.2014 в 19:11
11

Почему, для любви ко всему, что хорошо в этом тяжелом мире, нет ли записи человека для vino или vino-сервера или для любой из команд, перечисленных в выводе dpkg -L vino ? Как бы то ни было, почему любой пакет вообще должен быть установлен в системе Ubuntu, когда-либо, который опускает справочную страницу, по крайней мере, для соответствующих команд? Хорошо, разглагольствуй. Лучший ответ, который я нашел до сих пор, здесь: Ссылка

Я действительно надеюсь, что это поможет, и я надеюсь, что в будущем сообщество Ubuntu будет документировать все эти сиротские команды. «Простота использования» не означает отказ от командной строки, и это, конечно же, не означает отказ от легкодоступной документации. & Л; / ворчать >

    
ответ дан koanhead 21.09.2010 в 06:08
9

Это не работает удаленно через ssh из-за ошибок в отображении и т. д. Вот что я сделал:

export DISPLAY=:0.0 && /usr/lib/vino/vino-server

В основном работает сейчас!

    
ответ дан Will Bradley 30.10.2013 в 23:14
4

Мне удалось установить новую установку Ubuntu 16.04 из удаленного ssh-соединения со следующим скриптом:

#!/bin/bash
export DISPLAY=:0
read -e -p "VNC Password: " -i "ubuntu" password
dconf write /org/gnome/desktop/remote-access/enabled true
dconf write /org/gnome/desktop/remote-access/prompt-enabled false
dconf write /org/gnome/desktop/remote-access/authentication-methods "['vnc']"
dconf write /org/gnome/desktop/remote-access/require-encryption false
dconf write /org/gnome/desktop/remote-access/vnc-password \"\'$(echo -n $password | base64)\'\"
dconf dump /org/gnome/desktop/remote-access/
sudo service lightdm restart

Цитата важна для любого из параметров строки (одиночные тики внутри кавычек). Для того чтобы dconf мог писать, ему нужен доступ к XWindows, поэтому требуется часть экспорта DISPLAY. Я думаю, вам все равно нужно войти на рабочий стол на самом компьютере Ubuntu для подключения к VNC после этого. Команда дампа находится там, чтобы подтвердить, что все настройки взяты, вам это действительно не нужно.

Возможно, вы захотите сделать это, если хотите постоянно отображать дисплей:

dconf write /org/gnome/desktop/screensaver/lock-enabled false
dconf write /org/gnome/desktop/screensaver/ubuntu-lock-on-suspend false
dconf write /org/gnome/desktop/session/idle-delay "uint32 0"
    
ответ дан Integrator 09.04.2017 в 03:25
1

Для всех, кто использует Linux Mint 15, я получил все, чтобы работать над своим MintBox2, выполнив следующее. Теперь я могу запустить MintBox 2 полностью безголовым с помощью: ssh + vino + Tight VNC.

Введите в putty через ssh-соединение с машиной LinuxMint MintBox2:

sudo su
[enter your root password]
echo $DISPLAY
export DISPLAY=:0.0
startx &   }This loads up LinuxMint on screen as "root" user
[press the return key again to get back to BASH prompt]

Теперь, если вам нравится (это необязательно) на терминале LinuxMint (т. е. не на putty), введите:

echo $DISPLAY

= > Вы получаете результат: 1 [т. это вызвало у меня много проблем, чтобы понять, что это не 0: 0 !!!!!!!!!!]

Теперь вернитесь к замазке и введите:

echo $DISPLAY
export DISPLAY=:1
/usr/lib/vino/vino-server

= > Он теперь загружает & amp; вы можете использовать окно 7 Tight VNC Viewer для доступа к Linux Mint и т. д.

Я надеюсь, что это поможет кому-то ...

    
ответ дан CMP 11.12.2013 в 20:43
0

У меня была такая же проблема с xubuntu после обновления 18.04. Сначала установите vino. Шахта была удалена при обновлении без какого-либо уведомления. Также даже после установки vino команда vino-preferences не работает.

Вот простой способ:

  • Установить dconf-editor

    sudo apt install dconf-editor 
    
  • затем откройте его и перейдите к /org/gnome/desktop/remote доступа и turn off encryption .

В dconf-редакторе есть несколько других удаленных параметров. Однако до установки vino удаленный доступ не отображается в dconf-редакторе.

Я надеюсь, что кто-то сможет объяснить, что случилось с предпочтениями vino.

    
ответ дан Carol McAnulty 12.10.2018 в 18:40
-1
gsettings reset-recursively org.gnome.Vino
    
ответ дан Abdennour TOUMI 17.04.2014 в 12:18