Arbeiten im Terminal

Nach einer kleinen Einführung in die Grundlagen des Raspberry Pi und dessen Möglichkeiten ist sicherlich bewusst, dass es sich bei dem Minicomputer nicht um den optimalen Ersatz des Notebooks oder Desktop-PC handelt. Die Stärken liegen vielmehr in der Steuerung elektronischer Geräte und Komponenten.

Dafür müssen wir Allerding noch ein paar Vorbereitungen treffen. Pakete installieren, Konfigurationsdateien ändern oder auch kleine Skripte bzw. komplexe Programme erstellen. Dafür verwenden wir das LXTerminal. Das LXTerminal ist ein Fenster zur Ausführung von Linux-Kommandos.

LXTerminal
LXTerminal

Für erfahrene Linux-Anwender ist das Arbeiten im Terminal eine Selbstverständlichkeit. Für Anwender, die von einem Windows- oder macOS-System erstmals mit Linux in Verbindung kommen, ist es anfänglich vielleicht ungewöhnlich, aber das Arbeiten mit dem Terminal lässt uns viele Aufgaben sehr effizient erledigen.

Für eine vollständige Ausführung aller Funktionen des Terminals ist das hier leider nicht der richtige Platz. Wir betrachten nur einige Basics, um die Möglichkeiten des Terminals aufzuzeigen. Wir wollen ja schließlich schnell mit dem Raspberry Pi durchstarten.


Terminal - Start

Um mit dem Terminal zu arbeiten, öffnen wir es zunächst entweder über einen Doppelklick auf das Terminal-Icon (ICON) oben im Panel oder über den Menüpfad: Zubehör > Terminal. Wenn das Terminal gestartet wurde, sehen wir ein Fenster, welches mit schwarzer Hintergrundfarbe gefüllt ist und nur wenig Text oben links in der Ecke anzeigt. Normalerweise sollte der folgende Text:

Anzeigetext im Terminal

pi@raspberrypi:~ $

pi@raspberrypi:~ $ zu sehen sein.

"pi@raspberrypi" bezeichnet den Benutzer des Computers "pi" und den Computername "raspberrypi". Nach dem Doppelpunkt steht das Arbeitsverzeichnis, worin wir uns mit dem Terminal gerade befinden. Das Verzeichnis "/home/pi" wird auch als Heimatverzeichnis bezeichnet und wird mit dem ~-Symbol gekennzeichnet. Somit wissen wir jetzt, dass wir als Nutzer "pi" auf dem Computer "raspberrypi" im Heimatverzeichnis "/home/pi" befinden.


Dateien und Verzeichnisse

Mit dem Kommando "cd" können wir in ein anderes Verzeichnis wechseln. Mit dem Kommando "ls" können wir uns die Dateien innerhalb eines Verzeichnisses ausgeben lassen. Mit dem Kommando "ls" und der zusätzlichen Option "-l" ("ls -l") können wir uns auch den Inhalt eines Verzeichnisses ausgeben lassen, allerdings erhalten wir jetzt neben den Dateinamen noch Informationen wie Lese- und Schreib- Rechte, die Dateigröße oder das Datum der letzten Änderung.

Verzeichnis wechseln

pi@raspberrypi:~ $ cd Bookshelf
Inhalt vom Verzeichnis anzeigen lassen

pi@raspberrypi:~/Bookshelf $  ls
Inhalt vom Verzeichnis mit mehr Informationen anzeigen lassen

pi@raspberrypi:~/Bookshelf $  ls -l

Zugriff auf Systemdateien

Die wichtigsten Linux-Konfigurationsdateien befinden sich im Verzeichnis /etc. Als normaler Benutzer dürfen die Dateien in diesem Verzeichnis nicht verändern, manche Dateien sind für den normalen Benutzer nicht einmal sichtbar. Um solche Dateien trotzdem bearbeiten zu können, wird das Kommando sudo vorangestellt. sudo führt das Kommando dann mit Administratorrechten aus. Zuerst wechseln wir in das Verzeichnis /etc.

Verzeichnis wechseln

pi@raspberrypi:~/Bookshelf $ cd /etc

Danach lassen wir uns alle Dateien im Verzeichnis anzeigen, die während des letzten Tages geändert wurden.

Dateien anzeigen lassen die kürzlich geändert wurden

pi@raspberrypi:~/etc $ sudo find . -type f -mtime -1

Eine der Dateien können wir uns mit "cat" im Terminal anzeigen lassen.

Dateiinhalt anzeigen lassen

pi@raspberrypi:~/etc $ cat resolv.conf

Softwareverwaltung

Wenn der Raspberry Pi mit dem Internet verbunden ist, können wir mit dem Kommando "apt-get" weitere Programme installieren und die bereits vorhandenen Programme updaten. Programme und Erweiterungen werden in Form von Paketen im Internet bereitgestellt. Der Zugriff auf diese Paketquellen erfolgt über das Kommando "apt-get". Mit dem Kommando "apt-get update" wird eine Liste mit allen aktuell verfügbaren Programmen und Versionen heruntergeladen. Mit dem Kommando "apt-get install" werden diese Pakete anschließend installiert. Mit dem Kommando "apt-get upgrade" werden alle installierten Pakete installiert. Dieser Vorgang kann einige Minuten in Anspruch nehmen.

Verfügbarkeit der Programme aktualisieren

pi@raspberrypi:~ $ sudo apt-get update
Neue Pakete werden installiert

pi@raspberrypi:~ $ sudo apt-get install
Alle Pakete werden aktualisiert

pi@raspberrypi:~ $ sudo apt-get upgrade

Hilfe

Die üblichen Kommandos wie "ls", oder "cp" reagieren nicht auf den Hilferuf über die Taste F1. Hilfe gibt es, wie sollte es anders sein, über Kommandos. Mit dem kommando "--help" wird bei vielen Kommandos eine Liste mit Optionen angezeigt, die die jeweilige Funktion erklären. Mit "man Kommando" kann bei vielen Kommandos ein Hilfetext aufgerufen werden, der aufzeigt, wie die Funktion verwendet werden kann.


Tastenkürzel

Bei der Arbeit im Terminal gibt es zahlreiche Tastenkürzel, die ein effizientes Arbeiten ermöglichen. Mit den Pfeiltasten , (links und rechts) können wir uns auf der Zeile nach links und rechts bewegen. Die Tasten , (hoch und runter) hingegen dienen dazu, die zuletzt geschriebenen Kommandos erneut anzuzeigen. Das kann sehr hilfreich sein, wenn ein fehlerhaftes Kommando nur leicht verändert und anschließend neu ausgeführt werden soll. Betrachten wir noch ein paar andere Tastenkürzel und die dazugehörigen Funktionen.

Tastenkürzel Bedeutung
Tab Vervollständigt ein Kommando oder eine Zeile.
Strg + A Setzt den Cursor an den Zeilenanfang.
Strg + C Bricht die Eingabe ab, bzw. stoppt das laufende Kommando.
Strg + D Löscht das Zeichen an der Position des Cursors.
Strg + E Setzt den Cursor an das Zeilenende.
Strg + K Löscht alles bis zum Zeilenende.
Strg + R + abc Sucht nach einen früheren ausgeführten Kommando.
Strg + Y Fügt den zuletzt gelöschten Text wieder ein.
Shift + Strg + C Kopiert den markierten Text in die Zwischenablage.
Shift + Strg + Y Fügt die Zwischenablage an Stelle des Cursors ein.
Alt + Backwards Löscht ein Wort Rückwärts
Alt + B Bewegt den Cursor ein Wort zurück.
Alt + F Bewegt den Cursor ein Wort Vorwärts.
Esc + . Fügt den letzten Parameter des vorherigen Kommandos ein.

Arbeiten mit Administratorrechten

Normalerweise arbeiten wir mit dem Benutzer "pi", der uns den vollen Zugriff auf unser Arbeitsverzeichnis "/home/pi" gibt. Auch viele Dateien aus anderen Verzeichnissen können wir uns anschauen oder sogar verändern. Aus Sicherheitsgründen dürfen wir als Benutzer "pi" aber nicht alle Dateien sehen oder verändern. Das ist meist den Benutzer "root" überlassen. Der Benutzer "root" hat Administratorrechte und kann damit viel mehr als der Benutzer "pi". Auch der Zugriff mancher Hardware-Funktion unterliegt nur dem Benutzer "root". Um als "root" arbeiten zu können, stellen wir einfach vor dem Kommando das Wort "sudo".

Ausführen mit Administratorrechte

pi@raspberrypi:~ $ sudo Kommando
Im Raspberry Pi OS ist sudo so konfiguriert, dass der Benutzer "pi" ohne eine weitere Passwortabfrage das Kommando so übergibt, als hätte "root" das Kommando übergeben. Dieses Verhalten ist zwar bequem, aber gleichzeitig auch ein Sicherheitsrisiko.


Textdateien lesen und ändern

Die meisten Konfigurationen werden in Linux über Dateien im Textformat gesteuert. Auch für Mess- oder Logging-Daten sind Textdateien ein wichtiges Instrument.

cat

Mit dem Kommando cat können wir ganz einfach Textdateien ausgeben lassen.

Textdateien ausgeben lassen

pi@raspberrypi:~ $ cat Textdatei

eil cat immer die gesamte Textdatei ausgibt, kann es durchaus vorkommen, dass bei langen Texten nur die letzten Zeilen im Terminal zu sehen sind.

Texteditoren

Neben den Texteditoren mit grafischer Benutzeroberfläche gibt es auch Texteditoren, die im Terminal laufen. Diese Programme sind zwar nicht so schön anzusehen und etwas komplizierter in der Steuerung. Aber dafür sind sie blitzschnell und sie funktionieren auch in Textkonsolen und via SSH, was wir später noch genauer betrachten.

nano

Das Programm nano bietet zwar nur wenige Funktionen, ist dafür aber leicht zu erlernen.

Dateien mit nano bearbeiten

pi@raspberrypi:~ $ nano Textdatei

Die Tastenkürzel für die Steuerung erscheinen am unteren Rand des Terminalfensters.

Vi

Der Editor Vi hat zwar eine gewöhnungsbedürftige Steuerung, aber mehr Funktionen zu bieten als der nano-editor. Die Steuerung des Vi-Editors erfolgt im sogenannten Complex-Command-Modus, der mit dem Doppelpunkt: Aktiviert wird.

Kommando Funktion
:w Dateiname Speichert den Text unter den neuen Namen.
:wq Speichert und beendet den Vi-Editor.
:q! Beendet den Vi-Editor ohne zu speichern.
:help Startet die Online-Hilfe.
I Wechselt in den Insert-Modus.
Esc Beendet den Insert-Modus.
H Bewegt den Cursor nach links.
L Bewegt den Cursor nach rechts.
J Bewegt den Cursor nach oben.
K Bewegt den Cursor nach unten.
X Löscht ein Zeichen.
DD Löscht die aktuelle Zeile.
P Fügt die gelöschte Zeile an der Cursorposition ein.
U Macht die letzte Änderung Rückgängig.
: Wechselt in den Complex-Command-Modus.

Weiter mit Verzeichnisse und Dateien