web-dev-qa-db-fra.com

Comment accéder à mon serveur Ubuntu distant via X-windows à partir de mon Mac?

J'ai un serveur Ubuntu (12.04 LTS) qui s'exécute à distance sur un service d'hébergement en nuage. J'ai installé ubuntu-desktop via apt-get:

$ Sudo apt-get install ubuntu-desktop

Il semble avoir installé aucun problème.

J'ai confirmé que /etc/ssh/ssh_config sur le serveur contient les lignes

ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes

et que /etc/ssh/sshd_config sur le serveur contient la ligne:

X11Forwarding yes

J'ai ensuite redémarré le serveur. Il est remonté sans problème.

Maintenant, en démarrant X11.app sur mon Mac, on me présente un Xterm.

Je me connecte à mon serveur depuis ce terminal en utilisant:

$ ssh -X <myhost>

et je me connecte au serveur, pas de problème.

À ce stade, je ne sais pas quoi faire. j'ai essayé

$ Sudo startx

mais j'obtiens une erreur "pas d'écrans trouvés".

Je n'ai pas d'écran parce que c'est un serveur cloud sans tête, mais je veux simplement y accéder depuis mon Mac via X.

Et maintenant?

35
Magooda

Il existe plusieurs méthodes pour y parvenir, en fonction de ce que vous devez réellement faire.

Pour transférer des applications distantes vers un environnement X local, vous devez installer X11 sur votre Mac (vous pouvez le trouver sur le site de support Apple): http://support.Apple.com/ Ko/DL1605? viewlocale = en_US & locale = en_US

Depuis l'application X11, ouvrez le terminal, puis accédez à l'hôte distant avec:

    ssh -XC user@Host

Ensuite, une fois connecté, exécutez simplement la commande de l'application souhaitée, par exemple: firefox, nautilus, Thunderbird, etc.

Vous pouvez même lancer uniquement le menu principal du système (Ubuntu, Xubuntu, Mint, etc.) et interagir avec le système distant à partir de cet emplacement, sans avoir besoin d'une interface graphique complète. Sur une env. Distante de Linux Mint, je lance simplement:

    mintmenu&

Si vous en avez vraiment besoin, vous pouvez même démarrer l'environnement graphique distant localement sur votre Mac X11 en exécutant simplement:

    ubuntu-session
    xubuntu-session
    etc... (depends of your remote environment)

Mieux qu’un VNC, encore mieux qu’une connexion X11VNC! Connexion sécurisée et comprimée FTW.

21
undertuga

Sur votre Mac, vous devrez installer XQuartz, si vous ne l’avez pas déjà fait (voir http://xquartz.macosforge.org ). Une fois installé, redémarrez et ouvrez une fenêtre de terminal XQuartz et SSH sur votre système Ubuntu Server:

ssh -X yourubuntuserver

Si lightdm est en cours d'exécution (voir https://askubuntu.com/a/153423/66799 pour savoir comment l'activer ou le désactiver, le cas échéant), exécutez cette commande pour que Ubuntu Unity soit connecté à votre Mac par-dessus X11:

gnome-session --session=ubuntu-2d

Cela fonctionne pour moi avec Ubuntu Server 12.04 LTS et Mac OS X Mountain Lion 10.8.2, mais des erreurs Composiz se produisent parfois. Cela dit, j'ai toujours des erreurs Composiz lorsque j'exécute Ubuntu Desktop localement. (-:

Vous pouvez vous déconnecter de Unity pour fermer les fenêtres du bureau Ubuntu.

7
Steve HHH