meta data for this page
- de-informal
Linux Best Practices
Auf dieser Seite findest du eine Reihe von Tipps und Tools rund um den Gebrauch von Linux.
Tipps
Allgemeines
Tutorial und Cheat Sheets
Für blutige Anfänger sind dieses interaktive Linux-Tutorial und dieses Linux Cheat Sheet eine hilfeiche Unterstützung.
Installation
Im Normalfall ist zur Installation zusätzlicher Software immer die Verwendung des Paketmanagers des jeweiligen Betriebssystems zu bevorzugen. Dieser kümmert sich - anders als bei einer Installation aus einem beliebigen Download - immer um die Auflösung eventueller Abhängigkeiten und ermöglicht eine problemlose Entfernung nicht mehr benötigter Pakete.
Bei dem von uns verwendeten Ubuntu-Linux hört der Paketmanager auf den Befehl apt bzw. apt-get.
Beispiele:
- Lokalen Katalog der verfügbaren Pakete aktualisieren:
apt update
- Installierte Pakete upgraden:
apt upgrade
- Pakete zur Installation von nmap suchen:
apt search nmap
- Paket nmap installieren:
apt install nmap
- Paket nmap wieder entfernen:
apt remove nmap
(Konfiguration behalten) oderapt purge nmap
(Konfiguration auch entfernen)
- Nicht mehr benötigte Pakete entfernen:
apt autoremove
Schreibarbeit auf der Kommandozeile sparen
Tabulatorergänzung
Verwende die Tabulatorergänzung. Viele Befehle und Pfade lassen sich durch das Drücken der Tabulatortaste vervollständigen oder du erhältst zumindest eine Auflistung verschiedener Ergänzungsmöglichkeiten.
Die häufige Verwendung von Tabulatorergänzung hilft auch dabei Tippfehler zu vermeiden.
Pfeiltasten
Verwende die Pfeil-nach-oben- und Pfeil-nach-unten-Tasten um durch bereits verwendete Befehle zu scrollen und spare dadurch Schreibarbeit.
Befehlssuche
Wenn du einen Befehl vor längerer Zeit eingegeben hast und der Weg mit der Pfeil-nach-oben-Taste zu mühsam ist, dann drücke Strg
+r
. Dadurch öffnet sich der interaktive Suchmodus der Kommandozeile. Wenn du jetzt ein Stück Text eingibst, dass du früher schon mal in einem Befehl verwendet hast, dann wird der ganze Befehl automatisch eingefügt.
Mit Enter
kannst du ihn dann verwenden. Mit den Pfeil-nach-links- und Pfeil-nach-rechts-Tasten kannst du den Befehl zuvor noch bearbeiten.
Wenn der gefundene Befehl nicht der richtige ist und der gesuchte noch länger her ist, kannst du durch erneutes Drücken von Strg
+r
nach und nach alle Fundstellen durchsuchen.
Tools
Screen
Screen ermöglicht es dir mit mehreren virtuellen Fenstern auf der Kommandozeile zu arbeiten und auch bei instabilen Verbindungen Programme zuverlässig weiterlaufen zu lassen.
Nano
Nano ist einer der Standard-Texteditoren unter Linux. Er ist für alle Windows-Umsteiger vermutlich die am einfachsten zu bedienende Variante. Um eine Datei zu bearbeiten braucht man nur nano /pfad/zur/datei.txt
eingeben und der Editor öffnet sich. Die Steuerung erfolgt über Tastaturkürzel, welche in Kombination mit der Steuerungstaste eingeleitet werden. Die wichtigsten davon werden am unteren Bildschirmrand angezeigt. Beispielsweise bedeutet die Angabe ^X
, dass Strg
und X
zu drücken sind um den Editor zu beenden.
Wie immer ist es hilfreich, die Ausgaben des Editors zu lesen, bevor man weitere Tastenkombinationen drückt.
VIM
Der Texteditor VIM ist eine mächtige Alternative zu Nano. Er ist am Anfang etwas gewöhnungsbedürftig, weil er ein etwas eigenwilliges Bedienkonzept verfolgt. Hat man sich aber erst einmal daran gewöhnt, arbeitet man mit VIM auf der Kommandozeile extrem schnell und effizient.
Markantestes Merkmal ist die Unterscheidung von Kommandomodus und Einfügemodus. Solange man nicht in den Einfügemodus gewechselt hat, werden alle Tastenanschläge als Kommandos interpretiert.
Hat man als ungeübter Anwender einmal eine Datei beim Bearbeiten beschädigt, kommt man durch
- mehrmaliges Drücken der
Escape
-Taste - Eingabe von
:q!
- und Abschließendes Drücken der
Enter
-Taste
wieder aus der Datei heraus ohne die Änderungen zu speichern.
SSH
Der Umgang mit SSH als entfernte interaktive Kommandozeile wird vorausgesetzt.
Bei Bedarf kann diese Anleitung für Root-Login per SSH mit Passwort zu Hilfe genommen werden.
SCP
SSH kann man auch dazu verwenden, um über eine SSH-Verbindungen Dateien zu kopieren. Die Angaben für Quelle oder Ziel folgen dabei einem vorgegebenen Schema.
Möchte man z. B. die Datei /etc/ssh/sshd_config
als Nutzer root
von dem entfernten Host 10.2.3.4
in das Unterverzeichnis myconf
im lokalen Verzeichnis kopieren, dann lautet der Befehl dazu:
scp root@10.2.3.4:/etc/ssh/sshd_config ./myconf/
Um die Datei notizen.txt
aus dem lokalen Verzeichnis auf den entfernten Host 10.2.3.4
ins Verzeichnis /var/www/html/
zu kopieren, lautet der Befehl:
scp notizen.txt root@10.2.3.4:/var/www/html/
SSH-Tunnel
SSH kann nicht nur dazu verwendet werden um Kommandozeilenbefehle auf einem entfernten Host anzugeben. Ebenfalls sehr praktisch ist die Verwendung eines SSH-Tunnels, über den Netzwerkverkehr durch eine SSH-Verbindung in andere Netzwerke übertragen werden kann, die ansonsten nicht erreichbar wären. Genauere Ausführungen zum SSH-Tunnel gibt es hier.
Netzwerkkonfiguration
Zur Anzeige der aktuellen Netzwerkeinstellungen sowie zur temporären Veränderung der Netzwerkkonfiguration können Kommandozeilenbefehle direkt eingesetzt werden. Unter Ubuntu ist das ip-Kommando (z. B. ip address
bzw. ip ad
oder ip route
) der aktuelle Standard. Das ältere ifconfig-Kommando gilt als veraltet.
Ebenso gelten /etc/network/interfaces und verwandte Dateien als veraltet. Stattdessen wird unter Ubuntu mittlerweile auf netplan gesetzt.
Netplan
Seit einiger Zeit ist die Netzwerkkonfiguration via Netplan bei Ubuntu zum Standard geworden. Die Konfiguration erfolgt über YAML-Dateien, welche sich im Verzeichnis /etc/netplan/
befinden. Veränderungen an den Konfigurationsdateien werden mit dem Befehl netplan apply
angewendet.
Hier findest du ein Beispiel für eine /etc/netplan/config.yaml
mit statischer IPv4-Adresse und dynamischer IPv6-Adresskonfiguration.
network: version: 2 renderer: networkd ethernets: eth0: addresses: - 10.0.123.4/16 routes: - to: default via: 10.0.0.1 nameservers: addresses: - 9.9.9.9 - 2620:fe::fe dhcp6: yes accept-ra: yes