19Aug

So konfigurieren Sie Ihren Raspberry Pi für Remote Shell, Desktop und File Transfer

click fraud protection

Sie haben also einen Raspberry Pi, und Sie möchten seinen winzigen Fußabdruck maximieren, indem Sie sich in eine völlig eigenständige Box verwandeln - ohne Monitor, Tastatur oder andere Eingabeperipheriegeräte. Lesen Sie weiter, wie wir Ihnen zeigen, wie Sie Remote-Shell-, Desktop- und Dateitransfer-Zugriff auf Ihrem Pi einrichten.

Warum möchte ich das tun?

Der Pi, sogar in einem stabilen Gehäuse, ist ein winziger Computer. Es ist perfekt, um irgendwo außerhalb der Sicht zu verschwinden, ohne dass ein Kabel daran hängen bleibt - für viele Projekte brauchen Sie einfach keinen permanenten Monitor und keine periphere Begleitung.

Dass nicht bedeutet, bedeutet jedoch, dass Sie keine Verbindung zur Box herstellen müssen, um Änderungen vorzunehmen, Dinge zu aktualisieren, Dateien zu übertragen und so weiter. Ein perfektes Beispiel dafür ist der coole kleine Regenindikator, den wir im Rahmen unseres Build a LED Indikators mit einem Raspberry Pi( für E-Mail, Wetter oder Anything) erstellt haben. Es braucht nicht alles, was daran angebracht ist, aber wir möchten immer noch die Möglichkeit haben, auf das Gerät zu springen und leicht Änderungen vorzunehmen oder neue Experimente mit dem LED-Modul auszuprobieren, ohne es in die Werkstatt zurückziehen zu müssenSchließen Sie es an einen Monitor, eine Tastatur, eine Maus usw. an. Durch die Konfiguration für Remote-Shell, Remote-Desktop und Remote-Dateiübertragung können Sie unsere Pi-Einheit bequem von unserem Desktop-Computer aus bedienenhabe das Gerät an einen vollen Arbeitsplatz angeschlossen.

instagram viewer

Was brauche ich?

Wenn Sie mit dem Raspberry Pi arbeiten, sollten Sie unbedingt den HTG-Leitfaden zum Einstieg in Raspberry Pi lesen, um sich mit den Grundlagen des Geräts vertraut zu machen und sich auf dem Laufenden zu halten.

Für dieses Tutorial benötigen Sie folgende Dinge:

  • Ein Raspberry Pi mit Raspbian.
  • Ein Desktop- oder Laptop-Computer.
  • Ein lokales Wi-Fi- oder verkabeltes Netzwerk zum Verbinden des Pi und Ihres Computers.

Zuerst sollten die meisten Schritte in diesem Tutorial mit anderen Linux-basierten Pi-Distributionen funktionieren, aber werden wir Raspbian verwenden. Sie sollten wenig Mühe haben, das Lernprogramm an andere Distributionen anzupassen.

Zweitens verwenden wir eine Windows-Maschine als unseren vernetzten Computer, um mit der Raspberry Pi-Einheit als Remote-Head / Interface zu interagieren. Gegebenenfalls werden wir unser Bestes geben, um Links zu Tutorials und Vorschlägen zum Lesen paralleler Aufgaben und Tools unter OS X und Linux zu erstellen.

Einrichten und Herstellen einer Verbindung zum SSH-Server

Der Remote-Zugriff auf die Befehlszeile Ihrer Raspbian-Installation erfolgt über die praktischsten kleinen Optimierungen, die Sie an Ihrem System vornehmen können. Es ist ganz einfach, es zu aktivieren.

Öffnen Sie das Terminal in Rasbian, die Verknüpfung lautet LXTerminal auf dem Desktop und geben Sie den folgenden Befehl ein:

sudo raspi-config

Navigieren Sie zu ssh und drücken Sie die Eingabetaste. Wenn Sie nach dem SSH-Server gefragt werden, wählen Sie aktivieren und drücken Sie die Eingabetaste erneut. Sie kehren zum Raspi-config-Panel zurück. Navigieren Sie nach unten zu Beenden Sie und drücken Sie die Eingabetaste, um das Konfigurationstool zu schließen. Das ist alles, was Sie tun müssen, um den SSH-Zugang zu Ihrem Pi zu aktivieren. Das Standard-SSH-Login und -Passwort lautet pi bzw. raspberry .

Während Sie noch immer an der Befehlszeile sitzen, ist es nun an der Zeit, die IP-Adresse Ihrer Raspberry Pi-Einheit im lokalen Netzwerk zu überprüfen. Geben Sie an der Eingabeaufforderung ifconfig ein und sehen Sie sich dann die Ausgabe des Befehls an. Wenn Sie den Ethernet-Port verwenden, den Sie suchen möchten, suchen Sie im Abschnitt eth0 nach init addr .Wenn Sie Wi-Fi verwenden, möchten Sie im Abschnitt wlan0 nach dem -Init-Addr suchen. Zusätzlich zum Überprüfen und Notieren der IP-Adresse ist dies auch ein guter Zeitpunkt, um einen statischen IP-Eintrag in Ihrem Router einzurichten, so dass Sie in Zukunft nicht mehr nach der IP suchen müssen.

Jetzt, da wir den SSH-Server aktiviert haben, kennen wir die Anmeldung, und wir kennen die IP-Adresse der Maschine. Es ist Zeit, sich über SSH anzumelden und es auszuprobieren. Um dies von Linux und OS X aus zu tun, können Sie einfach den Befehl ssh am Terminal verwenden. Windows-Benutzer benötigen jedoch einen SSH-Client wie PuTTY.

Da wir eine Windows-Box verwenden, um unser Pi fern zu verwalten, ist es PuTTY.Installieren Sie eine Kopie von PuTTY oder extrahieren Sie die portable Version und starten Sie sie. Es gibt viele von Einstellungen, mit denen du dich in PuTTY anlegen kannst, aber wir müssen uns nur um eine einzige Sache sorgen, um dich mit unserem Pi zu verbinden. Geben Sie auf der Hauptsitzung die IP-Adresse Ihres Pi ein und wählen Sie SSH darunter:

Drücken Sie Öffnen Sie unten und PuTTY startet ein Terminalfenster für Sie, stellt eine Verbindung zu Ihrem Pi her und fordert Sie aufMelden Sie sich an. Gehen Sie voran und melden Sie sich mit an. pi / himbeer :

Sobald Ihre SSH-Verbindung funktioniert, können Sie den Rest dieses Tutorials bequem von Ihrem Schreibtisch aus erledigen - obwohl wir Ihnen den Kopf und die Tastatur überlassen würdenauf Ihrem System, bis Sie das gesamte Projekt abgeschlossen haben und alles reibungslos läuft.

Bevor wir fortfahren, gibt es einige zusätzliche Funktionen, die wir aus SSH herausholen können. Neben der Remoteverwaltung der Befehlszeile können Sie Dateien auch mit Secure Copy remote übertragen. Es ist in der Befehlszeile intensiv und nicht besonders praktisch für die Übertragung einer großen Anzahl von Dateien aus mehreren Verzeichnissen, aber für eine einmalige Übertragung von Konfigurationsdateien oder andere kleine Dumps, es ist ziemlich praktisch. Lesen Sie unseren Leitfaden zum Kopieren von Dateien über SSH mit dem Befehl SCP hier.

Wir werden später im Tutorial noch benutzerfreundlichere / GUI-basierte Dateiübertragungstechniken betrachten.

Einrichten und Konfigurieren des Remote Desktop

Remote-Befehlszeilenzugriff ist großartig, aber auch Zugriff auf den Desktop für GUI-spezifische Aktivitäten. Lassen Sie uns die Kräfte der Befehlszeile und die Kräfte des Desktops zusammenbringen.

Obwohl wir es bis jetzt als "Remote-Desktop" bezeichnet haben, ist das Tool, das wir gerade installieren, als Virtual Network Computing( VNC) bekannt, von denen viele mit RealVNC und TightVNC vertraut sind. Für dieses Tutorial werden wir TightVNC auf dem Pi installieren. Um auf die Pi-basierte TightVNC-Sitzung zuzugreifen, benötigen Sie einen Remote-Client wie:

  • TightVNC-Desktop-Client für Windows
  • TightVNC-Desktop-Client für Linux / Unix-ähnliche Systeme
  • RealVNC-Desktop-Client für OSX

Besorgen Sie sich jetzt eine Kopie undWir werden es später in diesem Abschnitt herausfinden. Lassen Sie uns nun den TightVNC Server auf Ihrem Raspberry Pi installieren.Öffne das Terminal. Geben Sie den folgenden Befehl ein, um loszulegen:

sudo apt-get installieren tightvncserver

Hiermit werden die Installationsdateien heruntergeladen und entpackt;Wenn Sie zum Fortfahren aufgefordert werden, drücken Sie Y. Nach Abschluss der Installation kehren Sie zur Eingabeaufforderung zurück. Sie können VNC auf eine von zwei Arten starten. Führen Sie den Befehl für den Server einfach so aus:

tightvncserver

Sie werden aufgefordert, ein Kennwort für den Zugriff auf Ihren VNC-Desktop einzugeben( siehe Abbildung oben).Das Passwort muss 4-8 Zeichen lang sein. Sobald Sie das Passwort bestätigt haben, werden Sie aufgefordert, ein Passwort nur für die Ansicht festzulegen( Sie können den Schritt wie bisher deaktivieren).

Alternativ können Sie einen viel präziseren, wenn auch längeren, Befehl eingeben, der Ihnen mehr Kontrolle darüber gibt, wie der Remotecomputer den Desktop sehen wird - vor allem, welche Auflösung der Desktop anzeigt, damit Sie eine Vollbildansicht genießen könnenauf dem Remotecomputer. Verwenden Sie den folgenden Befehl, um die Auflösung des VNC-Desktops anzugeben, indem Sie den Auflösungswert( das vierte Element im Befehl) für die Auflösung des Remote-Desktops austauschen:

vncserver: 1 -geometrie 1600 × 900 -tiefe 16 -pixelformat rgb565:

Wenn Sie zu irgendeinem Zeitpunkt einen Fehler bei der Einrichtung Ihrer VNC-Serverinstanz machen und / oder den VNC-Server herunterfahren möchten, geben Sie einfach Folgendes ein( Ändern der Nummer nach dem Doppelpunkt auf die Nummer der gewünschten VNC-Instanz)kill):

vncserver -kill: 1

Jetzt, da der VNC-Server läuft und läuft, verbinden wir uns von unserem Remote-Desktop aus. Starten Sie den TightVNC-Viewer auf Ihrem Computer und schließen Sie die IP-Adresse der Raspberry Pi-Einheit an, gefolgt von: 1 so:

Und hier ist unsere Belohnung für die erfolgreiche Konfiguration unseres VNC-Servers - eine schöne Vollbildansicht unserer Remote-Raspberry-Pi-Einheit:

Es gibt ein bekanntes Problem mit TightVNC und Rasbian, das, dank einer wackeligen Erlaubnisänderung, Probleme mit dem eigentlichen Desktop mit angeschlossenem Monitor verursacht( während die vom VNC-Server bereitgestellte Remote-Desktop-Schnittstelle unberührt bleibt).Um dieses Problem zu beheben, bevor es sogar zu einem Problem für Sie wird, gehen Sie direkt zur Befehlszeile und geben Sie den folgenden Befehl ein:

sudo chown pi /home/pi/. XAuthority

Dieser Befehl ändert den Besitz der. Xauthority-Datei zurück in den Benutzer pi-fordie seltsame, die. Xauthority-Datei wird vom X-Windows-System in Rasbian und etwas während des TightVNC-Server-Installation und Konfiguration Prozess verursacht, dass kleine Berechtigungen Schluckauf.

Mit diesem kleinen, kleinen Umweg, kommen wir zurück zu unserer Remote-Desktop-Konfiguration.

Jetzt, da wir vollen Zugriff auf die Befehlszeile und den Desktop des Raspberry Pi haben, gibt es eine nicht ganz so triviale Optimierung, die wir vornehmen müssen. Das Raspi-config-Tool hat festgelegt, dass der SSH-Server beim Booten automatisch gestartet wird, aber der VNC-Server ist noch nicht auf diese Weise konfiguriert. Sie können diesen Schritt überspringen und den Server manuell über die Befehlszeile über SSH starten, wenn Sie ihn benötigen, aber wir versuchen, dies für die zukünftige Verwendung so unkompliziert wie möglich zu gestalten. Lassen Sie uns jetzt eine Minute dauern und erstellen Sie eine Startup-Datei für den VNC-Server.

Um den VNC-Server automatisch zu starten, müssen wir eine Init- oder Initialisierungsdatei erstellen, die Raspbian zum sauberen Starten und Herunterfahren des Servers während des Boot- und Herunterfahrens verwendet. Lassen Sie uns jetzt die Init-Datei erstellen. Geben Sie in der Befehlszeile den folgenden Befehl ein:

sudo nano /etc/init.d/ tightvnc

Dadurch wird eine Datei im Initialisierungsverzeichnis namens "tightvnc" erstellt und der Nano-Editor geöffnet, damit wir unser Skript einfügen können. Fügen Sie im Nano-Editor den folgenden Code ein( stellen Sie sicher, dass der Auflösungwert 1600 × 900 so geändert wird, dass er dem Bildschirm Ihres Remote-Computers entspricht:

#! /bin/ sh
### ANFANG INFO INFO
# Bietet: tightvncserver
# Erforderlich-Start:
# Erforderlich-Stop:
# Standard-Start: 2 3 4 5
# Standard-Stop: 0 1 6
# Kurzbezeichnung: vnc Server starten
# Beschreibung:
### ENDE INIT INFO

Fall "$ 1 "in
Start)
su pi -c 'VNC-Server: 1 -Geometrie 1600 × 900 -längliche 16-Pixelformat rgb565:'
echo" VNC gestartet "
; ;
stop)
pkill Xtightvnc
echo "VNC beendet"
; ;
*)
echo "Verwendung: /etc/init.d/ tightvnc{ start | stop}"
Ausgang 1
; ;
esac

Neben dem Ändern des Bildschirmauflösungsteils des Skripts gibt es noch eine weitere Möglichkeit, die Sie ändern können. In Zeile 14 können Sie den Befehl "su pi -c" zu jedem anderen Benutzerkonto außer "pi" ändern, wenn Sie VNC für den spezifischen Desktop für dieses Konto wünschen.

Nachdem Sie den Code eingefügt und geändert haben, ist es an der Zeit, ihn zu speichern. Drücken Sie STRG + X, um Ihre Arbeit in Nano zu beenden und zu speichern. Sobald Sie wieder an der Befehlszeile sind, müssen wir ein paar schnelle Änderungen an den Berechtigungen der Datei vornehmen:

sudo chmod 755 /etc/init.d/ tightvnc

Jetzt ist die Initialisierungsdatei ausführbar. Wir können es von der Eingabeaufforderung aus testen:

sudo /etc/init.d/ tightvnc

starten sudo /etc/init.d/ tightvnc stoppen

Die letzte Änderung, die wir vornehmen werden, besteht darin, die rc.d-Datei zu aktualisieren( welche verfolgt, welche Initialisierungsskripte sich im /init.d/-Ordner befinden):

sudo update-rc.d tightvnc Standardeinstellungen

Nachdem Sie diesen Befehl eingegeben haben, erhalten Sie eine Bestätigung, dass die Datei aktualisiert wurde. Jetzt ist es Zeit für den echten Test: Wird die Datei nach dem Neustart korrekt geladen? Geben Sie Folgendes in der Befehlszeile ein, um neu zu starten, und bereiten Sie sich mit Ihrem VNC-Client vor, um die Verbindung sofort zu testen:

sudo reboot

Wenn das System neu gestartet wurde, melden Sie sich bei Ihrem VNC-Client an. Wenn Ihre VNC-Sitzung fehlschlägt, rufen Sie die Eingabeaufforderung auf, und führen Sie den Befehl tightvnc start( aus dem Testabschnitt oben) erneut aus, um zu überprüfen, ob die Datei ausführbar ist und das Kennwort ordnungsgemäß gespeichert wurde.

An diesem Punkt sind wir noch weiter in unserer Mission, unsere Raspberry Pi-Einheit vollständig fern zu steuern. Mit Remote-Zugriff auf die Befehlszeile über SSH und Remote-Desktop-Zugriff über VNC können wir die Übertragung von Dateien zwischen unserem Pi und Desktop-Computer vereinfachen.

Einrichten und Konfigurieren der Dateiübertragungs-Tools

Da wir bereits SSH eingerichtet haben, besteht die einfachste Möglichkeit, eine einfache Dateiübertragung zwischen unseren Pi und Remote-Computern einzurichten, darin, eine GUI-Schnittstelle auf der SSH-Verbindung aufzubauen. Erinnern Sie sich, wie wir früher im Tutorial über die Verwendung von SCP über SSH gesprochen haben? Es von der Kommandozeile aus zu starten wird wirklich langweilig, wirklich schnell. Mit einem GUI-Wrapper können wir mehr Zeit mit dem Verschieben von Dateien und dem Spielen mit unserem Pi und weniger Zeit für das Picken auf der Tastatur verbringen.

Obwohl es eine Vielzahl von GUI-Wrappern für den SCP-Befehl gibt, werden wir ein plattformübergreifendes Tool verwenden, das viele Leute bereits kennen, haben und lieben( und vielleicht sogar nicht wissen, dass es SCP-Übertragungen ausführt): FileZilla. Es ist für Windows, OS X und Linux verfügbar - Sie können hier eine Kopie herunterladen.

Nachdem Sie FileZilla installiert haben, starten Sie es und gehen Sie zu Datei - & gt;Seitenverwalter. Erstellen Sie einen neuen Site-Eintrag, benennen Sie ihn und schließen Sie den Benutzernamen und das Passwort für Ihren Pi ein.

Stellen Sie abschließend sicher, dass Sie den Port auf 22 und den Serdertype auf SFTP - SSH File Transfer Protocol setzen. Klicken Sie unten auf Verbinden und Sie werden mit einer ähnlichen Ansicht wie diese konfrontiert:

Ihre lokalen Verzeichnisse befinden sich im linken Bereich und die Remote-Verzeichnisse auf dem Pi befinden sich im rechten Bereich. Verschieben von Dateien zwischen den beiden ist so einfach wie Drag & Drop.

Die Nutzung der bestehenden SSH-Dateiübertragung ist der einfachste Weg, um die Dateien auf dem Pi ohne zusätzliche Konfiguration aber zu erhalten, wenn Sie Ihren Pi zum Empfangen und Freigeben von Dateien konfigurieren möchten, ohne dass der Remote-Benutzer irgendwelche ausgefallenen Tools benötigt( wie ein SCP-fähiger FTP-Client wie FileZilla), empfehlen wir dringend, den Samba-Konfigurationsabschnitt unseres Handbuchs zu lesen: Wie man einen Raspberry Pi in ein Low-Power-Netzwerkspeichergerät verwandelt. Wenn Sie darüber lesen, werden Sie mit dem Einrichten einer Samba-Grundfreigabe auf Pi vertraut gemacht, um einen freigegebenen Ordner zu erstellen, der für jeden Benutzer in Ihrem Netzwerk ohne zusätzliche Tools leicht zugänglich ist.

Sie haben SSH konfiguriert, Sie haben VNC konfiguriert und Sie haben einfachen SFTP- und / oder Samba-Zugriff auf Ihr Pi eingerichtet. An diesem Punkt können Sie Ihren Raspberry Pi booten, Monitor, Tastatur und Maus entfernenund verstaue es als stille und kopflose Maschine.

Haben Sie eine Idee für Raspberry Pi Projekt und Sie sterben für uns, ein Tutorial dafür zu schreiben? Ton in den Kommentaren oder schießen Sie uns eine E-Mail an [email protected] und wir werden unser Bestes tun, um zu helfen.