web-dev-qa-db-fra.com

Impossible d'utiliser gedit sur plusieurs machines distantes à l'aide de ssh

Après avoir installé la dernière de mes 5 machines distantes, j'ai décidé de vérifier que le réseau fonctionnait bien en vous connectant à chacune d'elles et en ouvrant gedit.

À mon grand désarroi, lorsque j'ai essayé d'ouvrir gedit sur la deuxième machine, j'ai été accueilli avec:

** (gedit:1862): WARNING **; Could not connect: Connection refused

** (gedit:1862): WARNING **; Could not connect to session bus

Fermer gedit n'a pas aidé, mais lorsque j'ai fermé ma connexion ssh à la première machine distante, j'ai pu ouvrir gedit sur la seconde. J'ai décidé de vérifier s'il s'agissait d'un problème avec tous les programmes X, mais j'ai pu ouvrir xeyes sur plusieurs ordinateurs distants.

Ma question est la suivante: pourquoi l'ouverture à distance de gedit sur une machine m'empêche-t-elle de l'ouvrir sur une autre jusqu'à la fermeture de la première session ssh? Et y a-t-il un moyen de résoudre ceci ou une solution de contournement? Je n'ai pas besoin de avoir plusieurs gedits ouverts en même temps, mais j'aimerais moins pouvoir ne pas avoir à fermer la connexion à l'un des les machines avant que je puisse l'ouvrir sur un autre.

Ssh_config est configuré avec 'ForwardX11' et 'ForwardX11Trusted' tous deux sur yes, au cas où cela serait pertinent.

Mise à jour: j'ai décidé d'essayer quelques programmes supplémentaires et j'ai constaté que, même si je peux ouvrir Nautilus via SSH sur plusieurs machines, un certain nombre d'avertissements de connexion refusés m'arrivent avant son ouverture.

6
StephenTG

export $(dbus-launch) sur la machine distante a résolu ce problème pour moi.

5
sha

Ceci est un problème avec tout ce qui agit en tant que gestionnaire d’affichage X (ou serveur X) sur le PC/ordinateur portable à partir duquel vous testez gedit. Alors, quel système d'exploitation et quel logiciel de serveur X utilisez-vous?

Généralement, le processus d’affichage d’une application X distante sur votre PC local implique:

  • Serveur X sur le PC local, configuré pour autoriser les connexions à distance
  • Tunnel SSH vers le système distant
  • définir une variable d'environnement DISPLAY pour qu'elle pointe vers votre PC local (par nom ou adresse IP)

Si vous êtes dans Windows, Xming fonctionne bien comme serveur X avec un client PuTTY ou ssh de ssh.com .. Il vous permettrait de gérer vos affichages X locaux et d'autoriser les applications distantes à s'afficher sur votre ordinateur. système local.

1
Chux Uzoeto

1) Utilisez un éditeur de texte en ligne de commande

ssh sur la machine distante via le terminal et utilisez nano ou vi pour ouvrir le fichier texte et le modifier.

Je trouve que nano est plus convivial pour les débutants, en partie parce qu’il vous montre les combinaisons de touches correspondant à diverses actions directement dans la fenêtre de votre terminal.

Pour ouvrir un fichier à l'aide de nano: nano filename.txt ou Sudo nano filename.txt (si vous avez besoin des privilèges root)


2) Utilisez Nautilus/Gedit sur une machine locale

Ouvrez une fenêtre du navigateur de fichiers Nautilus et sélectionnez "se connecter au serveur" dans le menu du panneau supérieur.

enter image description here

Entrez les informations du serveur (utilisez ssh: // ou sftp: // pour les connexions ssh).

enter image description here

Une fois connecté, vous pouvez marquer l’emplacement avec un signet en utilisant ctrl+d. Puis double-cliquez sur le fichier que vous voulez éditer dans gedit et partez de là.

n inconvénient: à moins que vous n'ayez ssh en tant que root, l'ouverture de fichiers nécessitant des privilèges root est moins simple avec cette approche. Une chose que vous pouvez faire, si vous avez nautilus-open-terminal installé, est de cliquer avec le bouton droit de la souris sur la fenêtre Nautile où se trouve le fichier et de sélectionner "Ouvrir dans le terminal distant", puis d'utiliser Sudo nano filename.txt comme ci-dessus.

1
amc