Alternative à la ligne de commande SSH d'Ubuntu

14

Nous avons une machine au travail qui exécute CentOS. Pour y entrer, j'utilise ssh.

Nous ne sommes pas autorisés à y installer de système de gestion de fenêtres. Parfois, j'ai besoin de faire beaucoup de travail dessus, comme éditer des configs, vérifier plusieurs journaux, etc. Tout cela devient un peu fastidieux de travailler sur la ligne de commande (pardonnez-moi, je ne suis pas un ninja en ligne de commande).

Je viens d'avoir plusieurs sessions en cours afin d'avoir tous les journaux et fichiers dont j'ai besoin, mais est-il possible que je puisse "voir" le système de fichiers de la machine distante sur ma machine locale, afin de pouvoir ouvrir et modifier les machines distantes fichiers sur ma machine locale qui a toutes mes belles fenêtres et éditeurs de texte disponibles?

ThrowsException
la source
Bonjour, désolé d'avoir mal interprété votre question. Merci d'avoir clarifié le titre pour nous.
Canadian Luke
1
Aucun problème. Aurait dû ajouter cela en premier lieu.
ThrowsException
1
Avez-vous étudié les logiciels de multiplexage de terminaux? Screen et tmux vous permettent d'ouvrir plusieurs sessions simultanément et de fournir une interface pseudo-fenêtrée sur une session ssh pure. De plus, il est presque garanti que votre boîtier CentOS a déjà au moins un écran dessus.
Fake Name
1
Le transfert X compte-t-il comme un système de gestion de fenêtres?
user253751

Réponses:

28

Regardez dans l'installation de sshfs si vous êtes sous Linux. Vous pouvez vous connecter à distance à une machine via ssh, mais il l'affichera comme faisant partie du système de fichiers sur votre machine locale, vous pouvez donc éditer des fichiers dans votre éditeur local et le traiter comme s'il s'agissait d'un fichier local. Vous n'avez même pas besoin d'installer quoi que ce soit du côté serveur, tout fonctionne juste à partir de ssh.

De même, il existe win-sshfs pour Windows, qui adopte une approche similaire à sshfs, mais monte à la place le système de fichiers en tant que lecteur réseau Windows. Merci pour la recommandation Lexi R!

Une autre alternative serait d'utiliser FTP pour récupérer les fichiers et les placer sur votre machine locale, les afficher et les modifier comme vous le souhaitez, puis utiliser FTP pour les remettre en place. Vous auriez besoin d'un serveur FTP sur la boîte CentOS, et vous pouvez utiliser quelque chose comme Filezilla pour vous connecter.

Adam
la source
2
sshfs n'est pas une alternative s'il utilise Windows. Dans ce cas, WinSCP conviendrait mieux.
Marcelo
2
sshfs était exactement ce que je cherchais. Voilà le patron.
ThrowsException
1
FileZilla a un support intégré pour SFTP, qui (confusément) n'a rien à voir avec FTP mais tout à voir avec SSH. Sur un serveur normal, si vous pouvez y accéder par SSH, vous pouvez probablement utiliser SFTP avec les mêmes informations d'identification et aucun serveur FTP ne doit être installé. (WinSCP utilise le même protocole, donc les deux fonctionneront ou aucun.)
IMSoP
2
@Marcelo win-sshfs est disponible, mon colocataire ne jure que par (et par).
Lex R
7

Si vous exécutez la connexion à partir de Windows, vous pouvez consulter WinSCP. Il est gratuit et vous donne une arborescence (de type explorateur) du système de fichiers auquel vous avez accès.

Si vous exécutez à partir d'un environnement * nix, vous devrez activer une sorte d'accès aux fichiers, tel que FTP (non sécurisé), SFTP (sécurisé), ou vous pouvez monter le système de fichiers distant en tant que CIFS, NFS ou sshfs système de fichiers. Toutes ces options sont gratuites et doivent être intégrées à votre système d'exploitation.

Canadian Luke
la source
4

Les bureaux Linux actuels ont souvent une sorte de sshfs intégré. Par exemple. dans Gnome, ouvrez le gestionnaire de fichiers (Nautilus), appuyez sur Ctrl + L pour obtenir une barre d'emplacement modifiable, entrez une URL comme sftp://example.com/et appuyez sur Entrée. Cela ouvrira une connexion SSH (en fait SFTP) à example.com et présentera son contenu dans le gestionnaire de fichiers, et vous pouvez le parcourir comme n'importe quel répertoire local.

Une fois la connexion établie, vous pouvez également accéder au répertoire distant à partir d'applications non Gnome (par exemple, les applications KDE ou même à partir de la ligne de commande). Le moyen le plus simple est probablement de faire glisser les répertoires du gestionnaire de fichiers vers l'application cible ou dans le shell. Avec une certaine expérience, vous pouvez également naviguer manuellement vers le répertoire distant: ils sont généralement montés sous ~/.gvfs/ou sous /run/user/<userid>/gvfs/.

KDE semble également avoir un mécanisme similaire.

Je n'ai aucune expérience avec sshfs, mais je suppose que sshfs et l'accès SFTP intégré à Gnome (GVFS) offrent des fonctionnalités similaires. Personnellement, j'aime GVFS pour sa facilité d'utilisation, et j'apprécie également qu'il soit assez universellement disponible de nos jours sans installer de logiciel supplémentaire ou configurer quoi que ce soit.

oliver
la source
C'est ce que je fais dans des circonstances similaires. Pour établir une connexion permanente (dans Gnome), allez dans "Lieux" et choisissez "Se connecter au serveur".
jaia
1

Dans Notepad ++, le plug-in NppFTP prend en charge SCP. Je l'utilise tout le temps pour éditer des fichiers à distance. Naviguez dans l'onglet NppFTP, double-cliquez sur un fichier pour le télécharger dans un répertoire temporaire, et il est téléchargé lorsque vous enregistrez le fichier.

GreyFairer
la source
0

Utilisez un outil de gestion de configuration (comme marionnette ou ansible). De cette façon, vous pouvez conserver vos fichiers de configuration localement et utiliser vos outils locaux. Comme bel effet "secondaire" (ce qui est probablement encore plus important), vous pouvez contrôler la version de configuration, la déployer automatiquement et la reproduire facilement (également pour les serveurs supplémentaires).

David Ongaro
la source
0

Je pense que NFS peut être une meilleure solution si la machine cliente (d'où vous éditez les fichiers). Partagez les fichiers via NFS et montez-les sur la machine cliente. Il apparaîtra comme un lecteur local. Vous pouvez utiliser n'importe lequel de vos éditeurs GUI préférés pour modifier les fichiers.

Chandrasekar
la source