web-dev-qa-db-fra.com

Comment utiliser les outils GUI sur un serveur distant?

J'ai un serveur Ubuntu fonctionnant sur EC2 (que je n'ai pas installé moi-même, je viens de prendre une AMI). Jusqu'à présent, j'utilise PuTTY pour travailler avec, mais je me demande comment travailler avec des outils GUI (je ne connais pas les outils Linux UI, mais je veux apprendre). Idiot, je manque la commodité de l'Explorateur Windows.

Je n'ai actuellement que Windows à la maison. Comment configurer les outils GUI pour travailler avec un serveur distant? Dois-je même faire cela, ou dois-je m'en tenir à la ligne de commande? Les réponses changent-elles si j'ai une machine Linux locale avec laquelle jouer?

27
ripper234

Vous pouvez utiliser le transfert X11 via SSH; assurez-vous que l'option

X11Forwarding yes

est activé dans /etc/ssh/sshd_config sur le serveur distant, et activez manuellement le transfert X11 avec

ssh -X serveur distant

ou ajoutez une ligne disant

ForwardX11 yes

à l'entrée d'hôte appropriée dans ~/.ssh/config

Bien sûr, cela nécessite un affichage X fonctionnel à l'extrémité locale, donc si vous utilisez Windows, vous devrez installer quelque chose comme XMing , puis configurer le transfert X11 dans PuTTY comme illustré dans ces références:

ETA: En relisant et en voyant vos clarifications dans les commentaires, FTP pourrait mieux répondre à vos besoins, car il vous permettra de "monter" des dossiers SFTP comme s'il s'agissait de lecteurs réseau ordinaires. Voir ici , ici , ici (pour Windows XP/7/Vista) , ou ici (pour Windows 8)) =.

32
Shadur

Shadur a expliqué comment activer X. Notez que le /etc/ssh/sshd_config se trouve du côté serveur et le ~/.ssh/config est du côté client, donc nous parlons en général de deux machines différentes. Le transfert X affichera votre application distante sur l'écran X local. Les deux configurations doivent donc indiquer au distant et au local de permettre à cette opération de se produire, respectivement.

Quant à savoir si vous devez utiliser X, cela dépend. Vous devez considérer (au moins) les facteurs suivants.

  • De quel type de bande passante disposez-vous? Quelle est sa vitesse? Est-ce mesuré? Y a-t-il un plafond? Si vous avez une connexion très rapide au net et sans restrictions, ce X est plus utilisable, sinon il peut être très lent. Gardez à l'esprit qu'en général, X est un porc de réseau; il n'est pas optimisé en bande passante (ou quelle que soit la bonne phrase).

  • Quels outils prévoyez-vous d'utiliser sur X? Y a-t-il des remplacements/équivalents non-gui? Si vous donnez des exemples des types d'outils que vous envisagez d'utiliser, les gens pourraient suggérer des alternatives si elles sont disponibles. Sachez également que certains outils bien connus se présentent à la fois sous forme de GUI et de ligne de commande/console. Par exemple. emacs, aptitude, reportbug.

En général, ma recommandation est d'utiliser la ligne de commande (apt, wget, rsync) ou les applications curses (comme aptitude ou mc) si elles sont disponibles et faire ce dont vous avez besoin. Ces applications ne sont pas nécessairement pires que les applications X; certains d'entre eux sont de belles applications. Par exemple. Les logiciels de John Davis, par exemple jed et slrn, les deux applications de console, montrent son esthétique distinctive et sont des œuvres d'art. BTW, exécuter un serveur X sur un client Windows pour se connecter à un serveur Linux est une option, mais pas particulièrement bonne.

Si vous avez un serveur Linux local, les problèmes de bande passante disparaissent et X est une option beaucoup plus viable.

7
Faheem Mitha

J'ai trouvé que freenx et nxclient étaient une solution de bureau à distance très hautes performances, bien meilleure que vnc ou X11. J'essaierais.

6
Steve

Vous devriez envisager de vous en tenir à la ligne de commande, car a) la plupart des serveurs n'ont même pas d'interface graphique installée, et b) toutes les interfaces graphiques sont un peu lentes à utiliser sur les réseaux.

Cela dit, je suggère de jeter un œil à VNC. Il existe des clients natifs pour Windows et des serveurs pour Linux, vous n'avez donc pas à configurer X11 sur votre Windows Box.

3
kuhkatz

Contrairement à RDP, X perd la session si le serveur ou le tunnel ssh se déconnecte. Vous pouvez utiliser XVNC, qui présente un serveur X aux programmes clients et se connecte à un client VNC. Cela maintient la session X active et vous permet de vous connecter et de déconnecter la session VNC.

Je l'ai fait fonctionner avec succès sur une connexion Jetstart DSL 128k/128k (Oui, Telecom NZ avait vraiment l'habitude d'offrir un service DSL 128k/128k!). Il était assez réactif, ne ralentissant que lorsqu'il devait télécharger une grande image bitmap sur le client VNC.

Vous pouvez voir comment tunneler VNC sur ssh dans cet article.

Si vous avez utilisé Emacs, vous pouvez exécuter un Emacs installé localement sur votre Windows et effectuer la modification de fichiers, la gestion de fichiers et de répertoires ( dired ), le contrôle de version, la compilation et également d'autres travaux aléatoires dans le shell (M-xShell ou M-xeshell), et probablement d'autres choses via TRAMP dans votre Emacs local. (Quelques vidéos de démonstration faciles à trouver qui peuvent peut-être rendre une personne moins effrayée par les Emacs inconnus, et TRAMP, etc.: 1 , 2 .)

C'est une illustration que les programmes X distants peuvent ne pas être la bonne solution pour vous. Contrairement à la méthode des clients X distants, la méthode TRAMP n'implique aucun trafic "graphique" lourd sur la connexion distante, elle utilise la connexion ssh uniquement pour envoyer des listes de répertoires, des fichiers et des sorties de commande dans les deux sens.

Disons que si vous voulez travailler avec "l'Explorateur Windows", il n'y aura toujours pas d '"Explorateur Windows" sur le serveur Ubuntu, vous ne pouvez donc pas l'exécuter à distance.

Mais si "Windows Explorer" avait quelque chose comme TRAMP en tant que fonctionnalité (pour les accès à distance via SSH), vous pourriez continuer à utiliser votre "Windows Explorer" local, si c'est tout ce dont vous avez besoin.

J'ai trouvé le gvfs-tree, ou dans certaines versions de Linux simplement tree, pour être utile pour voir une représentation CLI de l'arborescence de répertoires.

0
jkm

J'utilise nautilus --no-desktop sur le serveur Ubuntu 11.04 pour la fonctionnalité de type MS Windows Explorer.

0
bschafer