web-dev-qa-db-fra.com

Activer le VNC distant à partir de la ligne de commande?

J'ai un ordinateur sous Ubuntu 10.04, et il tourne Vino , le serveur VNC par défaut.

J'ai une deuxième machine Windows qui exécute un client VNC, mais ne dispose pas de capacités X11. Je suis ssh'd dans l'hôte Ubuntu à partir de l'hôte Windows, mais j'ai oublié d'activer l'accès VNC sur l'hôte Ubuntu.

Sur l'hôte Ubuntu, puis-je activer les connexions VNC à partir de la ligne de commande Ubuntu?

Mettre à jour:

Comme @koanhead l'indique ci-dessous, il n'y a pas de page de manuel pour vino (par exemple man -k vino et info vino ne renvoie rien), et vino --help ne montre aucune aide).

63
Stefan Lasiewski

Juste courir

/usr/lib/vino/vino-server

devrait faire le travail.

Une fois que vous avez accès à votre serveur, je vous recommande de l'ajouter aux applications à démarrage automatique afin qu'il soit toujours démarré.

Vous aimerez probablement changer certains paramètres avec:

vino-preferences

soyez très prudent lorsque vous exécutez la préférence vino sur une machine distante. Si vous décochez la case "Autoriser les autres utilisateurs à contrôler votre bureau", vous ne pourrez pas le vérifier.

ou pour éditer:

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

Voici un exemple de fichier:

<?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>

Attention, le mot de passe est codé en base64. Pour ce fichier, le mot de passe est qwerty. Je vois sur certains forums que les gens ont réussi à le changer, mais cela me posait problème.

Voici un encodeur base64 en ligne:

http://www.motobit.com/util/base64-decoder-encoder.asp

24
Guillaume Coté

Réponse courte:

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

comme le mentionne la réponse acceptée, si vino n'est pas démarré sur la machine distante, utilisez

/usr/lib/vino/vino-server

Réponse longue et plus d'infos:

Comme indiqué, un sous-ensemble des paramètres du serveur d'accès à distance intégré (vino) intégré peut être visualisé à partir des préférences de vino. Une liste complète des drapeaux gconf peut être vue avec la commande gconf-editor, listée sous/desktop/gnome/remote_access. Vous pouvez également voir les autres clés remote_access avec cette commande (ou une variante de celle-ci):

gconftool-2 -a /desktop/gnome/remote_access

(Pour une raison quelconque, -R fonctionnera également.)

Vous pouvez également obtenir la documentation de la clé de schéma via le --long-docs arg.

Par exemple, pour la clé 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.

Ainsi, par exemple, voici comment modifier le port par défaut via une ligne de commande:

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 vous donnera les clés sous un répertoire donné. Voici la section '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

Voici comment répertorier tous les documents de schéma sous/desk/gnome/remote/access (via la ligne de commande/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
27
belacqua

Je voulais aussi activer vino avec la ligne de commande sans entrer dans les préférences de vino.

Lorsque j'ai lancé /usr/lib/vino/vino-server, il est indiqué que le service de partage de bureau n'est pas activé.

Avec Unity, gconftool n'est plus utilisable. Nous devons le faire via gsettings.

Donc, premièrement, activez vino:

gsettings set org.gnome.Vino enabled true

Alors commencez vino:

/usr/lib/vino/vino-server

Vous pouvez maintenant accéder à distance à votre ordinateur.

Si vous voulez voir toutes les configurations disponibles pour Vino:

gsettings list-keys org.gnome.Vino
24
ouzmoutous

Sur Ubuntu 14.04, j'ai trouvé la variante suivante qui fonctionnait pour moi:

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

Si cela ne fonctionne pas, votre session X s'exécute peut-être sur autre chose que :0, aussi un ps aux | grep X rapide devrait afficher un :1 ou un :2

19
Taeram

Pourquoi, pour l'amour de tout ce qui est bon dans ce monde difficile, n'y a-t-il pas d'entrée man pour vino ou vino-server ou pour l'une des commandes répertoriées dans le résultat de dpkg -L vino? D'ailleurs, pourquoi devrait n'importe quel paquet du tout être installé sur un système Ubuntu, ce qui omet une page de manuel au moins pour les commandes pertinentes? Ok, fulminer. La meilleure réponse que j'ai trouvée jusqu'à présent est la suivante: http://ubuntuforums.org/archive/index.php/t-266981.html

J'espère vraiment que cela aidera et que la communauté Ubuntu documente à l'avenir toutes ces commandes orphelines. "Facilité d'utilisation" ne signifie pas l'abandon de la ligne de commande, ni certainement l'abandon d'une documentation facilement accessible. </ grumble>

13
koanhead

Cela ne semble pas fonctionner à distance via ssh à cause d’erreurs concernant l’affichage, etc. Voici ce que j'ai fait:

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

Fonctionne principalement maintenant!

9
Will Bradley

J'ai pu configurer une nouvelle installation Ubuntu 16.04 à partir d'une connexion ssh distante avec le script suivant:

 #!/bin/bash 
 export DISPLAY =: 0 
 lire -e -p "Mot de passe VNC:" -i "ubuntu" mot de passe 
 dconf écrire/org/gnome/desktop/remote-access/enabled true 
 dconf écrire/org/gnome/desktop/remote-access/Prompt-enabled false 
 dconf écrire/org/gnome/desktop/remote- méthodes d’accès/d’authentification "['vnc']" 
 dconf write/org/gnome/desktop/accès distant/require-encryption false 
 dconf write/org/gnome/desktop/remote- access/vnc-password\"\ '$ (echo -n $ mot_de_passe | base64) \' \" 
 dconf dump /org/gnome/desktop/remote-access/[.____. Services de surveillance du son Lightdm redémarrer 

La citation est importante pour n'importe quel paramètre de chaîne (ticks simples entre guillemets). Pour que dconf puisse l'écrire, il faut accéder à XWindows. C'est pourquoi la partie exportation DISPLAY est nécessaire. Je pense que vous devez toujours être connecté au bureau sur la machine Ubuntu pour vous connecter à VNC après cela. La commande dump est juste là pour confirmer que tous les paramètres ont bien pris, vous n'avez pas vraiment besoin de ça.

Vous pouvez éventuellement le faire si vous souhaitez conserver l'affichage tout le temps:

 dconf écrire/org/gnome/desktop/screensaver/lock-enabled false 
 dconf écrire/org/gnome/desktop/screensaver/ubuntu-lock-on-suspendre false 
 dconf write/org/gnome/desktop/session/idle-delay "uint32 0" 
4
Integrator

Pour tous ceux qui utilisent Linux Mint 15, je dois que tout cela fonctionne sur ma MintBox2 en procédant comme suit. Je peux maintenant utiliser la MintBox 2 sans tête avec: ssh + vino + Tight VNC.

Tapez dans PuTTY via une connexion SSH à la machine 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]

Maintenant, si vous aimez (ce n’est pas nécessaire) sur un terminal LinuxMint (c’est-à-dire pas sur PuTTY), tapez:

echo $DISPLAY

=> vous obtenez une sortie de: 1 [i.e. cela m'a causé beaucoup de mal à comprendre c'est-à-dire que ce n'est pas 0: 0 !!!!!!!!!!]

Maintenant, retournez à PuTTY et tapez:

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

=> Il est maintenant chargé et vous pouvez utiliser la fenêtre 7 Tight VNC Viewer pour accéder à Linux Mint, etc.

J'espère que cela aide quelqu'un là-bas ...

1
CMP

J'ai eu le même problème avec xubuntu après la mise à jour de 18.04. Installez d'abord vino. Le mien a été retiré lors de la mise à niveau sans préavis. Même après l'installation de vino, la commande vino-preferences ne fonctionne pas.

Voici une solution de contournement facile:

  • Installer dconf-editor

    Sudo apt install dconf-editor 
    
  • puis ouvrez-le et accédez à /org/gnome/desktop/remote access and turn off encryption.

Il existe également plusieurs autres options à distance que vous pouvez définir dans dconf-editor. Cependant, tant que vous n'avez pas installé vino, l'accès à distance ne s'affiche pas dans dconf-editor.

J'espère que quelqu'un pourra expliquer ce qui est arrivé aux préférences de vino.

1
Carol McAnulty