Wie arbeite ich mit GUI-Tools über einen Remote-Server?

25

Ich habe einen Ubuntu-Server auf EC2 (den ich nicht selbst installiert habe, sondern nur ein AMI gekauft habe). Bisher arbeite ich puttydamit, aber ich frage mich, wie ich mit GUI-Tools daran arbeiten soll (ich bin nicht mit Linux-UI-Tools vertraut, möchte aber lernen). Blöd, mir fehlt der Komfort des Windows Explorers.

Ich habe momentan nur Windows zu Hause. Wie richte ich GUI-Tools für die Arbeit mit einem Remote-Server ein? Sollte ich das überhaupt tun oder sollte ich mich an die Kommandozeile halten? Ändern sich die Antworten, wenn ich einen lokalen Linux-Computer zum Spielen habe?

ripper234
quelle
Wenn die X11-Weiterleitung schnell genug ist (es gibt Fälle, in denen dies nicht der Fall ist), sollte dies in Ordnung sein. Die CLI ist immer leistungsfähiger, daher ist es nützlich, sie nicht zu ignorieren, aber das bedeutet nicht, dass GUIs niemals nützlich sind :)
sakisk
Aber welche Art von Aufgaben möchten Sie auf dem Server ausführen? Welche Tools möchten Sie verwenden? Es ist eine wichtige Information für eine Antwort. Angenommen, Sie haben etwas mit dem Namen "Windows Explorer" erwähnt. Aber es gibt wahrscheinlich keinen "Windows Explorer" auf Ubuntu, so dass die Lösung, die vorschlägt, dass einige X-Programme remote ausgeführt werden, nicht passt.
imz - Ivan Zakharyaschev
Es gibt kein Explorer-Äquivalent für Ubuntu? Ernst?
Ripper234
1
@imz - momentan interessiere ich mich für das allgemeine Problem. Ich habe überhaupt keine Erfahrung mit Linux-GUI-Apps, daher habe ich keine Ahnung, was ich gerade möchte. Die erste Verwendung, die mir in den Sinn kommt, ist das Navigieren in Ordnern in einem Explorer wie Mode und vielleicht das Bearbeiten.
Ripper234
1
@ ripper234: Zum Navigieren in Verzeichnissen checken Sie mc aus.
Faheem Mitha

Antworten:

30

Sie können die X11-Weiterleitung über SSH verwenden. Stellen Sie die Option sicher

X11Forwarding yes

ist /etc/ssh/sshd_configauf dem Remote-Server aktiviert und aktiviert entweder die X11-Weiterleitung von Hand mit

ssh -X remoteserver

oder fügen Sie eine Zeile hinzu, die sagt

ForwardX11 yes

zum entsprechenden Hosteintrag in ~/.ssh/config

Dies setzt natürlich eine funktionierende X-Anzeige am lokalen Ende voraus. Wenn Sie also Windows verwenden, müssen Sie etwas wie XMing installieren und dann die X11-Weiterleitung in PuTTY einrichten, wie in den folgenden Referenzen gezeigt:

ETA: Wenn Sie noch einmal lesen und Ihre Erläuterungen in den Kommentaren sehen, entspricht FTP möglicherweise noch besser Ihren Anforderungen, da Sie SFTP-Ordner so „mounten“ können, als wären sie normale Netzwerklaufwerke. Sehen Sie hier , hier , hier (für Windows XP / 7 / Vista) oder hier (für Windows 8) .

Shadur
quelle
6

Shadur ging auf die Aktivierung von X ein. Beachten Sie, dass sich das /etc/ssh/sshd_configauf der Serverseite und das ~/.ssh/configauf der Clientseite befindet, sodass es sich im Allgemeinen um zwei verschiedene Computer handelt. Die X-Weiterleitung zeigt Ihre Remote-Anwendung auf dem lokalen X-Display an. Daher müssen die beiden Konfigurationen der Remote- und der Local-Instanz mitteilen, dass dieser Vorgang ausgeführt werden soll.

Ob Sie X verwenden sollten, hängt davon ab. Sie müssen (mindestens) die folgenden Faktoren berücksichtigen.

  • Welche Bandbreite hast du? Wie schnell ist es? Wird es gemessen? Gibt es eine Kappe? Wenn Sie eine sehr schnelle Verbindung zum Netz und keine Einschränkungen haben, ist dieses X besser verwendbar, andernfalls kann es sehr langsam sein. Denken Sie daran, dass X im Allgemeinen ein Netzwerkfresser ist. Es ist nicht bandbreitenoptimiert (oder was auch immer der richtige Ausdruck ist).

  • Welche Tools möchten Sie über X verwenden? Gibt es Nicht-GUI-Ersetzungen / -Äquivalente? Wenn Sie Beispiele für die Arten von Tools nennen, die Sie verwenden möchten, können die Leute Alternativen vorschlagen, sofern diese verfügbar sind. Beachten Sie auch, dass einige bekannte Tools sowohl in GUI- als auch in Befehlszeilen- / Konsolenform verfügbar sind. Z.B. Emacs, Begabung, Reportbug.

Im Allgemeinen empfehle ich, Befehlszeilen- (apt, wget, rsync) oder Fluchanwendungen (wie aptitude oder mc) zu verwenden, sofern diese verfügbar sind und die von Ihnen benötigten Aktionen ausführen. Solche Apps sind nicht unbedingt schlechter als X-Apps. Einige davon sind feine Anwendungen. Z.B. Die Software von John Davis, z. B. jed und slrn, beide Konsolen-Apps, zeigen seine unverwechselbare Ästhetik und sind Kunstwerke. Übrigens ist es eine Option, einen X-Server auf einem Windows-Client auszuführen, um eine Verbindung zu einem Linux-Server herzustellen, wenn auch keine besonders gute.

Wenn Sie einen lokalen Linux-Server haben, verschwinden die Bandbreitenprobleme und X ist eine viel praktikablere Option.

Faheem Mitha
quelle
Ich stimme zu, dass es im Allgemeinen besser ist, Befehlszeilentools zu verwenden, wenn diese verfügbar sind, es sei denn, Sie arbeiten über eine relativ schnelle Verbindung (geringe Latenz ist etwas wichtiger als Bandbreite).
Shadur
1
@ Shadur - meine Latenz ist kein großes Ereignis auf der Kommandozeile, vielleicht sollte ich nicht einmal ein UI-Tool ausprobieren, weil es wahrscheinlich zu langsam sein wird.
Ripper234
5

Ich habe herausgefunden, dass freenxund nxclienteine sehr leistungsstarke Remotedesktoplösung ist, die weitaus besser als vncoder ist X11. Ich würde es versuchen.

Steve
quelle
3

Sie sollten in Betracht ziehen, sich an die Befehlszeile zu halten, da a) auf den meisten Servern nicht einmal eine grafische Benutzeroberfläche installiert ist und b) alle grafischen Benutzeroberflächen über Netzwerke nur langsam verwendet werden.

Trotzdem würde ich vorschlagen, einen Blick auf VNC zu werfen. Es gibt native Clients für Windows und Server für Linux, sodass Sie X11 nicht auf Ihrer Windows-Box einrichten müssen.

kuhkatz
quelle
1

Wenn Sie Emacs verwendet haben, können Sie einen lokal installierten Emacs unter Windows ausführen und Dateibearbeitung, Datei- und Verzeichnisverwaltung ( dired ), Versionskontrolle, Kompilierung sowie einige andere zufällige Arbeiten in der Shell ( M-xshelloder M-xeshell) und möglicherweise weitere Aufgaben ausführen über TRAMP in Ihrem lokalen Emacs. (Einige leicht auffindbare Demo-Videos, die eine Person möglicherweise nicht so verängstigen können, wie der unbekannte Emacs und TRAMP usw .: 1 , 2. )

Dies zeigt, dass Remote-X-Programme möglicherweise nicht die richtige Lösung für Sie sind. Im Gegensatz zur Remote-X-Client-Methode ist bei der TRAMP-Methode kein schwerer "grafischer" Datenverkehr über die Remoteverbindung erforderlich. Sie verwendet die ssh-Verbindung nur zum Senden von Verzeichnislisten, Dateien und Befehlsausgaben hin und her.

Wenn Sie beispielsweise mit "Windows Explorer" arbeiten möchten, ist auf dem Ubuntu-Server immer noch kein "Windows Explorer" vorhanden, sodass Sie ihn nicht remote ausführen können.

Aber wenn "Windows Explorer" so etwas wie TRAMP als Funktion hätte (für Fernzugriffe über SSH), könnten Sie weiterhin Ihren lokalen "Windows Explorer" verwenden, wenn das alles ist, was Sie brauchen.

imz - Ivan Zakharyaschev
quelle
Er fragt nach GUI-Tools, nicht nach einem GUI-Editor für Konfigurationsdateien. [ xkcd.com/378/] abgesehen davon ist Emacs nicht die Antwort für alles, und in diesem Fall schwingt man einen Hammer, nur um das Problem als Nagel zu beschreiben.
Shadur
@ Shadur: (lacht mich an.) Er hat noch nicht festgelegt, welche Art von Werkzeug er braucht. GUI-Editor ist auch ein GUI-Tool, nicht wahr? Oder haben Sie ein besonderes Verständnis dafür, was ein "Werkzeug" ist?
imz - Ivan Zakharyaschev
@Shadur BTW, der Punkt meiner Antwort ist, einen möglichen Lösungsansatz vorzuschlagen, der seinen Anforderungen so genau wie möglich entspricht, ohne dass wir genau wissen, welche Aufgaben er lösen möchte. Meine Logik ist: 1) er mag "Windows Explorer" 2) wir wissen nicht, welche Funktionen von "Windows Explorer" er mag, weil er dies nicht angegeben hat. ==> Wenn also "Windows Explorer" so etwas wie TRAMP hätte, wäre das eine Art ideale Lösung und Antwort: Die Funktionen, die er mag, sind vorhanden und funktionieren mit seinem Remote-Server.
imz - Ivan Zakharyaschev
Ist meine Antwort für diese Frage irrelevant? .. :) Nein, das glaube ich nicht, denn ripper234 sucht nach Ideen - (s) er schreibt: "Soll ich das überhaupt machen, oder soll ich mich an die Kommandozeile halten?" Und das ist eine neue Idee: Suchen Sie auch nach TRAMP-ähnlichen Lösungen. Das ähnelt meiner persönlichen Erfahrung: Als ich über eine bequeme Möglichkeit nachdachte, auf einem Remote-Server zu arbeiten, sagte ein Freund von mir, dass er TRAMP gerne in Emacs verwenden würde. und ich fing an, dies auch als Option in Betracht zu ziehen.
imz - Ivan Zakharyaschev
1
Und gelegentlich verwende ich das Äquivalent in gedit über die ssh / sftp-Backends für gnome-vfs. Wiederum ist "eine Möglichkeit, einen GUI-Editor zum Ändern von Konfigurationsdateien auf einem Remote-System zu verwenden" eine andere Frage als "Remote-Verwendung von GUI-Administrations-Frontends"
Shadur
1

Im Gegensatz zu RDP verliert X die Sitzung, wenn die Verbindung zum Server oder zum SSH-Tunnel getrennt wird. Sie können XVNC verwenden, das den Client-Programmen einen X-Server präsentiert und eine Verbindung zu einem VNC-Client herstellt. Dadurch bleibt die X-Sitzung am Leben und Sie können eine Verbindung herstellen und die VNC-Sitzung trennen.

Ich habe erfolgreich über eine 128k / 128k Jetstart DSL-Verbindung arbeiten lassen (Ja, Telecom NZ hat früher wirklich einen 128k / 128k DSL-Dienst angeboten!). Es reagierte ziemlich schnell und wurde nur langsamer, als eine große Bitmap auf den VNC-Client heruntergeladen werden musste.

In diesem Artikel erfahren Sie, wie Sie VNC über ssh tunneln können .

Betroffen vonTunbridgeWells
quelle
0

Ich verwende nautilus --no-desktopauf Ubuntu Server 11.04 für den MS Windows Explorer Typ Funktionalität.

bschafer
quelle
Wie hilft dies beim Fernzugriff?
reinierpost
0

Ich fand den gvfs-treeBefehl oder in einigen Linux-Versionen nur treehilfreich, um eine CLI-Darstellung des Verzeichnisbaums zu sehen.

jkm
quelle
2
Willkommen bei U & L! Ich werde die Formatierung Ihrer Antwort danach korrigieren, aber ich werde darauf hinweisen, dass zwar gvfs-treeund treemöglicherweise nützliche Befehle, wie diese Frage angesprochen wird: "Wie richte ich GUI-Tools für die Arbeit mit einem Remote-Server ein? " ?
Jeff Schaller
Sein Beitrag hatte mehrere Fragen: "Ich bin nicht mit Linux-UI-Tools vertraut, aber ich möchte lernen" und "Sollte ich das überhaupt tun oder mich an die Befehlszeile halten?" Wenn er sich des Befehls gvfs-tree bewusst ist, wird er sich möglicherweise in der CLI wohler fühlen, was eine GUI weniger notwendig macht.
jkm