meta data for this page
  •  
Übersetzungen dieser Seite:
  • de-informal

Dies ist eine alte Version des Dokuments!


Linux Best Practices

Auf dieser Seite findest du eine Reihe von Tipps und Tools rund um den Gebrauch von Linux.

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.

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

  1. mehrmaliges Drücken der Escape-Taste
  2. Eingabe von :q!
  3. 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.


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.

Tipps

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.

Netzwerkkonfiguration

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