Speicher, Dateisysteme und Netzwerke unter Linux

Erfahre, wo Linux seine Dateien speichert und wie seine speziellen Verzeichnisse, Links und Gerätedateien funktionieren. Untersuche Datenträger und Partitionen, hänge Dateisysteme von Hand und beim Systemstart ein und finde heraus, was einen Datenträger füllt. Lies und ändere Netzwerkeinstellungen mit dem Befehl ip, löse Namen mit DNS und der hosts-Datei auf und melde dich mit SSH und Schlüsselpaaren sicher an entfernten Rechnern an.

AnfängerEinheit 7 von 7 in Kurs: Linux – Befehlszeile, Shellskripte und Systemverwaltung

Was du lernst

  1. Wissen, wo Linux Programme, Einstellungen, Protokolle und Benutzerdateien speichert, und mit speziellen Verzeichnissen und Dateien arbeiten, die sich anders verhalten als gewöhnliche.
    • Die Inhalte der Verzeichnisse direkt unter dem Wurzelverzeichnis kennen
      Den Filesystem Hierarchy Standard nutzen, um vorherzusagen, wo Programme, Konfiguration, veränderliche Daten und Benutzerdateien liegen.
    • Temporäre Verzeichnisse und das Sticky-Bit verwenden
      Zwischen /tmp und /var/tmp wählen, erklären, wie das Sticky-Bit gemeinsam genutzte Verzeichnisse schützt, und temporäre Dateien sicher anlegen.
    • Symbolische Links und Hardlinks erstellen und verwalten
      Symbolische Links mit ln -s erstellen, tote Links erkennen und reparieren und erklären, worin sich Hardlinks unterscheiden.
    • Gerätedateien und virtuelle Dateisysteme erkennen
      Dateitypen in ls -l ablesen, die Pseudogeräte in /dev verwenden und Systeminformationen aus /proc und /sys lesen.
  2. Die Speichergeräte und Partitionen in einem Linux-System identifizieren, Dateisysteme in den Verzeichnisbaum einhängen und sie beim Systemstart automatisch einhängen lassen.
    • Datenträger, Partitionen und Dateisystemtypen identifizieren
      Speichergeräte und Partitionen benennen, die Ausgaben von lsblk, blkid und fdisk lesen und Partitionstabellen und Dateisystemtypen unterscheiden.
    • Dateisysteme einhängen und aushängen
      Ein Dateisystem mit mount in ein Verzeichnis einhängen, eingehängte Dateisysteme anzeigen und es mit umount sicher aushängen.
    • Dateisysteme beim Systemstart über /etc/fstab einhängen
      Einträge in /etc/fstab lesen und schreiben, die Dateisysteme anhand ihrer UUID identifizieren, und sie vor einem Neustart sicher testen.
  3. Prüfen, wie voll jedes Dateisystem ist, herausfinden, welche Verzeichnisse und Dateien den Speicherplatz belegen, und Speicherplatz freigeben, ohne das System zu beschädigen.
    • Freien Speicherplatz und Inodes mit df prüfen
      Die Ausgabe von df lesen, erklären, warum sich ihre Zahlen nicht einfach addieren lassen, und erkennen, wann Inodes statt Bytes ausgehen.
    • Speicherplatzverbraucher finden und sicher aufräumen
      Mit du, sort und find große Verzeichnisse und Dateien finden, erklären, warum du und df unterschiedliche Werte anzeigen, und Speicherplatz sicher freigeben.
  4. Adressen, Schnittstellen und Routen erklären, die Netzwerkkonfiguration eines Rechners mit ip und ss auslesen und ändern und den Schritt finden, an dem eine Verbindung fehlschlägt.
    • Netzwerkschnittstellen, IP-Adressen und Routen erklären
      Netzwerkschnittstellen, IPv4- und IPv6-Adressen mit Präfixen, spezielle Adressbereiche, Standardgateways und Ports beschreiben und erklären, wie Hosts ihre Einstellungen erhalten.
    • Die Netzwerkkonfiguration mit ip und ss auslesen
      Schnittstellen, Adressen und Routen mit ip addr, ip link und ip route sowie lauschende Dienste mit ss auslesen.
    • Netzwerkeinstellungen ändern und Verbindungsprobleme diagnostizieren
      Mit ip vorübergehende und mit dem Netzwerkwerkzeug der Distribution dauerhafte Änderungen vornehmen und eine Verbindung mit ping Schritt für Schritt testen.
  5. Erklären, wie Linux Namen in IP-Adressen auflöst, /etc/hosts für lokale Namen nutzen und die DNS-Clienteinstellungen prüfen und testen.
    • Erklären, wie Linux Namen in Adressen auflöst
      DNS-Namen und -Einträge, die in /etc/nsswitch.conf festgelegte Suchreihenfolge sowie die Rolle von /etc/hosts und des eigenen Hostnamens des Rechners beschreiben.
    • Die DNS-Clientkonfiguration prüfen und testen
      Die Ausgaben von /etc/resolv.conf und resolvectl lesen, Namen mit host, dig und getent abfragen und einen Fehler bei der Namensauflösung eingrenzen.
  6. Dich an entfernten Rechnern anmelden und Dateien über SSH kopieren, Passwörter durch Schlüsselpaare ersetzen und den SSH-Server mit sicheren Einstellungen betreiben.
    • Dich über SSH anmelden, Befehle ausführen und Dateien kopieren
      Mit ssh verbinden, Hostschlüssel prüfen, entfernte Befehle ausführen, Dateien mit scp, sftp und rsync übertragen und Verbindungsfehler lesen.
    • Die Anmeldung mit Schlüsseln einrichten
      Ein SSH-Schlüsselpaar mit ssh-keygen erstellen, es mit einer Passphrase und einem Agenten schützen, den öffentlichen Schlüssel auf Servern installieren und häufige Schlüsselprobleme beheben.
    • Den SSH-Server betreiben und absichern
      Den Dienst sshd verwalten, seine Einstellungen sicher ändern, Passwortanmeldungen abschalten und seine Protokolle lesen.

Dateisysteme und Netzwerke unter Linux einfach erklärt

6 Kapitel

1

Dich im Linux-Dateisystem zurechtfinden

Linux-Pfade zeigen dir, wofür eine Datei gedacht ist, doch manche Namen führen zu mehr als gewöhnlichen Dateien auf dem Datenträger. Programme, Einstellungen und veränderliche Daten haben jeweils ihren Platz im Verzeichnisbaum. Für gemeinsam genutzte temporäre Verzeichnisse gilt eine besondere Löschregel; Links geben Dateien zusätzliche Namen; Geräte- und virtuelle Dateien machen das laufende System zugänglich. Wenn du diese Unterschiede kennst, kannst du besser entscheiden, wo du deine Arbeit speicherst, und verstehen, was ein Befehl liest oder ändert.

1.1 Programme, Einstellungen und veränderliche Daten finden

Jeder Linux-Pfad beginnt in einem Verzeichnisbaum mit der Wurzel /. Ein zweiter Datenträger wird beim Einhängen über ein Verzeichnis in diesen Baum eingebunden. Der Filesystem Hierarchy Standard (FHS) beschreibt den üblichen Zweck jedes Verzeichnisses; Version 3.0 stammt aus dem Jahr 2015.

Programme und Einstellungen

Der FHS trennt statische Dateien von Dateien, die sich ändern, und gemeinsam nutzbare Dateien von rechnerspezifischen. Daher liegen installierte Programme unter /usr, veränderliche Daten unter /var und die Einstellungen dieses Rechners unter /etc.

OrtWas dort hingehört
/usr/bin, /usr/sbinBenutzer- und Verwaltungsbefehle
/usr/libBibliotheken, die Programme verwenden
/usr/shareDaten wie Handbücher und Symbole, die nicht an einen Prozessortyp gebunden sind
/usr/localVom Administrator von Hand installierte Software
/etcSystemweite Konfiguration, überwiegend Text

Die älteren Orte /bin, /sbin und /lib enthalten im FHS-Aufbau grundlegende Befehle und Bibliotheken. Viele aktuelle Distributionen verwenden die /usr-Zusammenführung: Diese Pfade sind symbolische Links nach /usr. So können /bin/ls und /usr/bin/ls dasselbe Programm erreichen. Ausführbare Binärprogramme sind in /etc ausgeschlossen, administrative Skripte dürfen dort aber liegen.

Persönliche Dateien und Laufzeitdaten

Reguläre Benutzer bewahren ihre eigenen Dateien üblicherweise in /home/NAME auf; ~ bezeichnet dein Home-Verzeichnis. Benutzereinstellungen wie ~/.bashrc sind dort versteckte Einträge. /root ist das Home-Verzeichnis des Benutzers root. Das Wurzelverzeichnis / ist der Anfang des gesamten Baums und nicht das Home-Verzeichnis dieses Benutzers.

Unter /var grenzt das zweite Verzeichnis den Zweck ein:

  • /var/log enthält Protokolle.
  • /var/cache enthält Daten, die heruntergeladen oder neu erzeugt werden können.
  • /var/lib enthält Programmzustände, darunter Datenbanken und Paketeinträge.
  • /var/spool enthält Aufgaben in Warteschlangen, etwa Druckaufträge.
  • /var/tmp enthält temporäre Dateien, die einen Neustart überdauern.

/tmp ist für kürzerlebige temporäre Dateien vorgesehen. /run enthält Daten für die aktuelle Laufzeit seit dem Systemstart, etwa Sockets und Prozess-ID-Dateien, und wird beim Neustart geleert. /boot enthält den Kernel, die initiale RAM-Disk und Bootloader-Dateien. /dev, /proc und /sys machen Geräte und aktuelle Kernelinformationen zugänglich.

Einhängungen und Dienstdaten

/mnt ist der übliche Ort für eine vorübergehende Einhängung von Hand. Desktopsysteme hängen Wechseldatenträger häufig unter /media/USER/LABEL ein, unter Fedora unter /run/media/USER/LABEL. /opt enthält Zusatzsoftware in separaten Paketverzeichnissen. /srv enthält Daten, die anderen Rechnern bereitgestellt werden; manche Distributionen verwenden für Websites Orte wie /var/www.

Betrachte einen aus einem Paket installierten nginx-Server unter Debian oder Ubuntu. Seine ausführbare Datei ist /usr/sbin/nginx, seine Haupteinstellungen stehen in /etc/nginx/nginx.conf, und Anfragen werden in /var/log/nginx/access.log protokolliert. Die Dokumentation liegt unter /usr/share/doc/nginx. Der Zweck des Verzeichnisses zeigt dir, wo du eine Änderung der Einstellungen oder ein wachsendes Protokoll untersuchen kannst.

Installiere einen eigenen Befehl unter /usr/local/bin, damit er von paketverwalteten Dateien getrennt bleibt. Ein Update kann Dateien unter /usr ersetzen. Verwende für einen systemd-Dienst den Ort für überschreibende Einstellungen unter /etc/systemd/system, statt seine mitgelieferte Unit unter /usr/lib/systemd/system zu bearbeiten.

Wichtige Erkenntnisse

  • Das Dateisystem ist ein Baum mit der Wurzel /; eingehängte Laufwerke werden über Verzeichnisse eingebunden.
  • Verwende /usr für installierte Software, /etc für Systemeinstellungen und /var für veränderliche Daten.
  • Persönliche Dateien gehören in Home-Verzeichnisse; /root und / haben unterschiedliche Zwecke.
  • /run, /dev, /proc und /sys beschreiben das laufende System.
  • Bewahre von Hand installierte Software unter /usr/local und lokale überschreibende Diensteinstellungen unter /etc auf.

1.2 Temporäre Dateien erstellen und gemeinsam genutzte Verzeichnisse schützen

Temporäre Dateien brauchen sowohl eine geeignete Lebensdauer als auch passende Rechte. Eine Datei kann einen Neustart überdauern und dennoch später zur Bereinigung vorgesehen sein. Schutz vor dem Löschen ist etwas anderes als Schutz vor dem Lesen.

Eine Lebensdauer wählen

Verwende /tmp für kurzlebige Arbeit, die ein Programm bei seiner nächsten Ausführung nicht mehr benötigt. Der FHS empfiehlt, das Verzeichnis beim Systemstart zu leeren. Fedora und Debian 13 hängen es häufig als tmpfs ein, das Arbeitsspeicher und Auslagerungsspeicher nutzt; sein Inhalt verschwindet beim Herunterfahren. Die standardmäßige Größenbegrenzung beträgt die Hälfte des physischen Arbeitsspeichers. Eine große temporäre Aufgabe kann es daher füllen, selbst wenn auf dem Hauptdatenträger noch Platz ist.

Verwende /var/tmp, wenn temporäre Arbeit einen Neustart überdauern muss. Der FHS verlangt, dass der Inhalt beim Systemstart erhalten bleibt. Es bleibt dennoch ein temporärer Speicherort: Die ursprünglichen Bereinigungsregeln von systemd entfernen üblicherweise ungenutzte Einträge nach 10 Tagen in /tmp und nach 30 Tagen in /var/tmp. Einstellungen der Distribution und lokale Einstellungen können diese Zeiträume ändern. Speichere dauerhafte Arbeit in deinem Home-Verzeichnis oder einem anderen dauerhaften Datenverzeichnis.

Die Verzeichnisrechte ablesen

Untersuche den Verzeichniseintrag selbst:

ls -ld /tmp

Eine beispielhafte Rechtezeichenfolge ist drwxrwxrwt. Das anfängliche d bedeutet Verzeichnis. Die drei Rechtegruppen erlauben allen, es zu lesen, darin zu schreiben und es zu betreten. Das abschließende t kennzeichnet das Sticky-Bit und ersetzt das übliche Zeichen für das Ausführungsrecht anderer.

Schreibrechte an einem Verzeichnis erlauben einem Benutzer normalerweise, Einträge darin zu entfernen oder umzubenennen, auch die Dateien anderer Personen. In einem Verzeichnis mit Sticky-Bit dürfen nur der Eigentümer der Datei, der Eigentümer des Verzeichnisses oder root sie löschen und umbenennen, vorbehaltlich der üblichen Zugriffsregeln. Das Bit ist gerade deshalb nützlich, weil viele Benutzer /tmp gemeinsam nutzen.

Mina erstellt zum Beispiel /tmp/draft.txt mit dem Modus 644 in einem root gehörenden Verzeichnis mit Sticky-Bit. Tomas kann die Datei lesen, weil ihre eigenen Rechte es erlauben. Er kann sie nicht allein deshalb entfernen, weil er in /tmp schreiben darf. Mina und root können sie entfernen. Änderst du den Dateimodus auf 600, schützt das den Inhalt zusätzlich vor anderen regulären Benutzern.

Das Sticky-Bit setzen und erkennen

Auf einem gemeinsam genutzten Verzeichnis, das du verwaltest:

sudo chmod 1777 /srv/shared

Die führende 1 setzt das Sticky-Bit; die übrigen 777 erlauben allen Benutzern vollen Zugriff auf das Verzeichnis. sudo chmod +t /srv/shared fügt das Bit hinzu, ohne die anderen Rechte zu ersetzen. chmod -t entfernt es, wenn du den Modus ändern darfst.

Ein kleines t bedeutet, dass sowohl das Sticky-Bit als auch das Ausführungsrecht für andere gesetzt sind. Ein großes T bedeutet, dass das Sticky-Bit gesetzt ist, anderen aber das Ausführungsrecht fehlt. Beispielsweise erscheint der Modus 1770 als drwxrwx--T. Linux ignoriert das Sticky-Bit bei regulären Dateien; sein historischer Name stammt daher, dass Programmcode im frühen Unix im Arbeitsspeicher oder Auslagerungsspeicher festgehalten wurde.

Den Namen von mktemp wählen lassen

mktemp erstellt eine Datei mit einem eindeutigen zufälligen Namen und den Rechten 600 und gibt ihren Pfad aus. mktemp -d erstellt ein privates temporäres Verzeichnis. Speichere in einem Shellskript den ausgegebenen Namen in einer Variablen, verwende diesen Namen für die Arbeit und entferne die Datei anschließend.

Ein fester Name wie /tmp/results.txt kann bereits jemand anderem gehören oder angelegt werden, bevor dein Programm startet. Ein eindeutiger Name vermeidet diese Kollision. Das Sticky-Bit macht vorhersehbare Namen nicht sicher und eine Datei mit Modus 644 nicht privat.

Wichtige Erkenntnisse

  • /tmp ist kurzlebig; /var/tmp überdauert Neustarts, wird aber ebenfalls bereinigt.
  • Das Sticky-Bit schränkt das Löschen und Umbenennen in gemeinsam genutzten Verzeichnissen ein.
  • Dateirechte steuern das Lesen; das Sticky-Bit verbirgt keine Inhalte.
  • Modus 1777 verbindet offenen Verzeichniszugriff mit dem Schutz durch das Sticky-Bit; T bedeutet, dass anderen das Ausführungsrecht fehlt.
  • mktemp erstellt eine eindeutige private Datei; mktemp -d erstellt ein Verzeichnis.

Ein Link bietet einen weiteren Weg zu einer Datei durch den Verzeichnisbaum. Ein symbolischer Link speichert einen Pfad. Ein Hardlink stellt einen weiteren Namen für dieselbe zugrunde liegende Datei bereit. Ihr unterschiedliches Verhalten ist wichtig, wenn der ursprüngliche Name verschoben wird oder verschwindet.

Einen symbolischen Link erstellen

Die Syntax lautet ln -s TARGET LINKNAME: zuerst das Ziel, dann der neue Name. Zum Beispiel:

ln -s /srv/manuals ~/manuals
ls -ld ~/manuals
readlink ~/manuals

ls -l beginnt die Rechtezeichenfolge eines symbolischen Links mit l und gibt einen Pfeil zu seinem Ziel aus. Die angezeigte Größe ist die Länge des gespeicherten Pfads in Byte, nicht die Größe des Zielverzeichnisses. Bei gewöhnlichen symbolischen Links unter Linux gewähren die angezeigten Rechte rwxrwxrwx keinen Zugriff auf das Ziel; es gelten weiterhin dessen eigene Rechte.

ls -ld /etc listet den Verzeichniseintrag und seine Rechte auf. ls -l /etc listet seinen Inhalt auf. Ein abschließender Schrägstrich bei einem symbolischen Link auf ein Verzeichnis bewirkt, dass dem Link gefolgt wird: ls -l manuals/ listet den Inhalt des verlinkten Verzeichnisses auf.

Einen relativen Zielpfad auflösen

Ein relativer Zielpfad beginnt beim Verzeichnis, das den Link enthält. Angenommen, /home/lee/notes.txt existiert und /home/lee/backup ist ein Verzeichnis. Führe von /home/lee aus Folgendes aus:

ln -s ../notes.txt backup/notes-link

Um dem Link zu folgen, beginne in backup, gehe mit .. eine Ebene nach oben und suche dann notes.txt. Schreibst du stattdessen ln -s notes.txt backup/notes-link, wird ein Pfad zu backup/notes.txt gespeichert. Dein Arbeitsverzeichnis beim Erstellen des Links wird nicht Teil dieses gespeicherten relativen Pfads. Ein absoluter Zielpfad vermeidet diese Mehrdeutigkeit.

Ein toter Link bleibt bestehen, nachdem sein Zielpfad verschoben oder gelöscht wurde. Beim Öffnen erscheint „No such file or directory.“ readlink LINK zeigt das gespeicherte Ziel; readlink -f LINK löst nach Möglichkeit den vollständigen Pfad auf. find . -xtype l findet tote Links unterhalb des aktuellen Verzeichnisses. Erstelle einen toten Link mit dem richtigen Ziel neu, zum Beispiel mit ln -sfn NEWTARGET LINKNAME.

Mit einem Hardlink vergleichen
printf 'hello\n' > original.txt
ln original.txt second.txt
ln -s original.txt shortcut.txt
rm original.txt

cat second.txt gibt weiterhin „hello“ aus. Ein Hardlink ist ein weiterer Verzeichniseintrag für denselben Inode, den Dateieintrag des Dateisystems. Es gibt keinen besonderen ursprünglichen Namen, der erhalten bleiben muss. cat shortcut.txt schlägt fehl, weil der gespeicherte Zielpfad nicht mehr existiert.

EigenschaftSymbolischer LinkHardlink
SpeichertEinen ZielpfadEinen weiteren Namen für dieselbe Datei
Kann Dateisystemgrenzen überschreitenJaNein
Kann auf ein Verzeichnis verweisenJaNein
Nach dem Entfernen des ZielnamensKann zu einem toten Link werdenDer andere Name erreicht weiterhin die Daten

ls -i zeigt für zwei Hardlinks auf einem Dateisystem dieselbe Inode-Nummer. Die zweite Spalte von ls -l zeigt ihre Linkanzahl. Wird der letzte Name entfernt, wird die Datei freigegeben, sobald kein Prozess sie mehr geöffnet hält.

Entferne einen symbolischen Link mit rm LINKNAME oder unlink LINKNAME. Lasse bei einem Link auf ein Verzeichnis den abschließenden Schrägstrich weg: rm manuals entfernt nur den Link. Ein rekursiver Befehl auf manuals/ kann den Inhalt des Ziels erreichen und löschen. Systempfade wie /bin, versionierte Befehlsnamen und aktivierte systemd-Dienste verwenden häufig symbolische Links.

Wichtige Erkenntnisse

  • ln -s TARGET LINKNAME speichert einen Pfad; relative Zielpfade beginnen beim Verzeichnis des Links.
  • Untersuche gespeicherte Ziele mit readlink; erstelle Links neu, deren Pfade nicht mehr funktionieren.
  • Hardlinks teilen sich einen Inode und bleiben nutzbar, wenn ein anderer Name entfernt wird.
  • Hardlinks bleiben innerhalb eines Dateisystems und verweisen nicht auf Verzeichnisse.
  • Entferne einen symbolischen Link auf ein Verzeichnis ohne abschließenden Schrägstrich, um den Inhalt des Ziels zu schützen.
  • Die angezeigten Rechte eines symbolischen Links ersetzen nicht die Rechte des Ziels.

1.4 Geräte und den laufenden Kernel als Dateien auslesen

Ein Pfad unter Linux kann einen Datenträger, ein Terminal oder aktuelle Kernelinformationen bezeichnen. Das erste Zeichen in ls -l zeigt dir die Art des Eintrags, bevor du ihn wie ein gewöhnliches Dokument behandelst.

Dateitypen erkennen

Die Kennzeichen sind - für eine reguläre Datei, d für ein Verzeichnis, l für einen symbolischen Link, b für ein Blockgerät, c für ein zeichenorientiertes Gerät, p für eine benannte Pipe und s für einen Socket. Ein Blockgerät wie /dev/sda1 stellt Speicher in Blöcken bereit, auf die in beliebiger Reihenfolge zugegriffen werden kann. Ein zeichenorientiertes Gerät wie /dev/tty1 stellt einen Bytestrom bereit.

Eine Geräteauflistung kann so aussehen:

brw-rw---- 1 root disk 8, 1 Oct 22 08:00 /dev/sda1

Das b bezeichnet ein Blockgerät. Die Zahlen 8, 1 ersetzen das übliche Größenfeld: Die Major- und Minor-Nummern identifizieren für den Kernel Treiber und Gerät. /dev wird normalerweise von devtmpfs im Arbeitsspeicher bereitgestellt und mithilfe von udev befüllt, sobald Hardware erscheint. Beim Einstecken eines USB-Laufwerks können /dev/sdb und /dev/sdb1 entstehen.

Schreibst du direkt auf ein Datenträgergerät, können dessen Daten ohne Rückfrage überschrieben werden. Prüfe vor einem solchen Schreibvorgang die Identität des Geräts mit lsblk.

Pseudogeräte verwenden

/dev/null verwirft geschriebene Bytes und gibt beim Lesen sofort das Dateiende zurück. Dieser Befehl unterdrückt Fehlermeldungen, während normale Ergebnisse sichtbar bleiben:

find / -name '*.conf' 2>/dev/null

2> leitet die Standardfehlerausgabe um. Alles, was dorthin gesendet wird, wird verworfen.

/dev/zero liefert Nullbytes. Beispielsweise erstellt dd if=/dev/zero of=test.img bs=1M count=100 eine reguläre, mit Nullen gefüllte Datei von 100 MiB: 104.857.600 Byte. Das Ausgabeziel ist hier test.img, kein Datenträgergerät. /dev/urandom liefert Zufallsbytes; head -c 16 /dev/urandom | base64 macht 16 davon ausgebbar.

Sobald der Zufallsgenerator von Linux initialisiert ist, liefern sowohl /dev/random als auch /dev/urandom kryptografisch sichere Zufallsbytes. Bei Kernels ab Version 5.6 wartet /dev/random in der frühen Startphase auf diese Initialisierung; /dev/urandom kann Bytes zurückgeben, bevor sie abgeschlossen ist.

Aktuelle Informationen lesen

procfs, eingehängt unter /proc, erzeugt Informationen auf Anfrage. Viele Einträge zeigen die Größe null, geben beim Lesen aber Text zurück. /proc/cpuinfo beschreibt Prozessoren, /proc/meminfo den Arbeitsspeicher und /proc/mounts listet Einhängungen auf. Nummerierte Verzeichnisse beschreiben laufende Prozesse; /proc/sys macht Kerneleinstellungen zugänglich. Werkzeuge wie ps, top und free lesen diese Informationen.

cat /proc/uptime könnte 86400.52 340000.10 ausgeben. Der erste Wert sind die Sekunden seit dem Systemstart: etwa 24 Stunden. Der zweite summiert die Leerlaufzeit über die Prozessoren und kann daher die verstrichene Zeit übersteigen.

sysfs, eingehängt unter /sys, beschreibt Geräte, Treiber und Busse. ls /sys/class/net/ listet Schnittstellen auf, ls /sys/block/ Blockgeräte und cat /sys/class/net/enp0s3/address liest die MAC-Adresse einer Schnittstelle. Schreibst du in beschreibbare Einstellungen unter /proc oder /sys, änderst du den laufenden Kernel; dafür sind normalerweise root-Rechte nötig. Konfiguriere bei einer Sicherung des gesamten Systems Ausschlüsse für /proc, /sys, /dev und /run; das laufende System erstellt sie neu.

Wichtige Erkenntnisse

  • Lies das Typkennzeichen, bevor du einen Pfad wie eine gewöhnliche Datei behandelst.
  • Blockgeräte stellen Speicher bereit; zeichenorientierte Geräte stellen Datenströme bereit.
  • /dev/null verwirft Daten, /dev/zero liefert Nullen und /dev/urandom liefert Zufallsbytes.
  • /proc und /sys machen aktuelle Kernelinformationen ohne gewöhnliche Dateien auf dem Datenträger zugänglich.
2

Datenträger, Partitionen und eingehängte Dateisysteme untersuchen

Ein Laufwerk, eine Partition und ein Dateisystem sind unterschiedliche Speicherebenen. Lies den Gerätebaum, um Vorhandenes zu identifizieren, und hänge dann das richtige Dateisystem in ein Verzeichnis ein, damit seine Dateien zugänglich werden. Eine manuelle Einhängung gilt für den aktuellen Systemzustand; ein Eintrag in der Startkonfiguration stellt sie automatisch wieder her. Wenn du diese Ebenen der Reihe nach betrachtest, vermeidest du, das falsche Gerät zu formatieren oder eine Einhängung einzurichten, die den normalen Systemstart verhindert.

2.1 Datenträger, Partitionen und Dateisystemtypen ablesen

Ein Datenträger ist ein physisches oder virtuelles Speichergerät. Eine Partition ist ein Bereich davon. Die Partitionstabelle hält diese Bereiche fest, während ein Dateisystem innerhalb einer Partition deren Dateien und Verzeichnisse organisiert. Eine Partition kann auch Auslagerungsspeicher enthalten, der den Arbeitsspeicher unterstützt, statt gewöhnliche Dateien zu speichern.

Den Gerätenamen entschlüsseln

SATA-, SAS- und USB-Laufwerke verwenden häufig /dev/sda, /dev/sdb und so weiter; ihre Partitionen erhalten eine zusätzliche Nummer, etwa /dev/sdb1. NVMe-Namen enthalten bereits Ziffern, daher erhält eine Partition zusätzlich ein p: /dev/nvme0n1p2 ist Partition 2 von /dev/nvme0n1. SD- und eMMC-Geräte verwenden Namen wie /dev/mmcblk0p1; viele virtuelle Maschinen verwenden /dev/vda1.

Die Erkennungsreihenfolge kann diese Namen ändern. Identifiziere ein Laufwerk anhand mehrerer Merkmale, nicht anhand des gestrigen Buchstabens:

lsblk -o NAME,SIZE,MODEL,RM,TYPE,MOUNTPOINTS
lsblk -f
sudo blkid
sudo fdisk -l

lsblk zeigt den Datenträger und seine Partitionen als Baum. RM=1 bezeichnet ein als entfernbar markiertes Gerät; TYPE unterscheidet disk und part. Der Einhängepunkt / bezeichnet das Wurzeldateisystem. lsblk -f ergänzt Dateisystemtypen, Bezeichnungen und UUIDs. blkid liefert Kennungen und Typen, während fdisk -l Partitionsgrenzen und den Tabellentyp zeigt. Diese Untersuchungsbefehle partitionieren nichts neu.

Tabellentyp und Dateisystemtyp unterscheiden
EbeneHäufige VariantenBedeutung
PartitionstabelleGPT, MBR/DOSBeschreibt Bereiche des Laufwerks
Dateisystemext4, XFS, Btrfs, FAT32, exFAT, NTFSOrganisiert Dateien innerhalb eines Bereichs

MBR erlaubt vier primäre Partitionen; eine davon kann eine erweiterte Partition mit logischen Partitionen ab Nummer 5 sein. Bei 512-Byte-Sektoren beträgt die Adressierungsgrenze 2 TiB. GPT verarbeitet größere Laufwerke und stellt üblicherweise 128 Partitionseinträge bereit. UEFI-Systeme starten über eine EFI-Systempartition, die mit FAT formatiert und häufig unter /boot/efi eingehängt ist.

Debian und Ubuntu verwenden häufig ext4; RHEL verwendet standardmäßig XFS; Fedora Workstation und openSUSE verwenden häufig Btrfs. FAT32 erscheint unter Linux als vfat und kann keine einzelne Datei von 4 GiB oder mehr enthalten. exFAT eignet sich für größere Dateien auf Wechselmedien; NTFS ist auf Windows-Datenträgern verbreitet. Allein das Vorhandensein einer Partition bedeutet nicht, dass sie bereits ein Dateisystem hat.

Die Größeneinheiten ablesen

lsblk, df -h und du -h verwenden binäre Einheiten: G steht für ein GiB oder 1.073.741.824 Byte. Laufwerkshersteller verwenden dezimale GB mit jeweils 1.000.000.000 Byte. Daher erscheint ein Laufwerk mit 500.107.862.016 Byte als 465.8G; 32.000.000.000 Byte entsprechen etwa 29.8G. lsblk -b zeigt die genaue Anzahl der Bytes. Dieser Unterschied in den Bezeichnungen ist keine verlorene Kapazität.

Um ein neues leeres Laufwerk vorzubereiten, musst du es zunächst partitionieren und anschließend ein Dateisystem erstellen, zum Beispiel mit sudo mkfs.ext4 /dev/sdb1. Prüfe vor dem Ändern von Partitionen oder Formatieren das Ziel anhand von Größe, Modell und Wechseldatenträgerstatus, vergewissere dich, dass seine Daten zerstört werden dürfen, und hänge es aus. fdisk -l listet nur auf; das interaktive fdisk schreibt Änderungen, wenn du w verwendest.

Wichtige Erkenntnisse

  • Datenträger, Partitionstabelle und Dateisystem beschreiben unterschiedliche Speicherebenen.
  • Bei NVMe- und SD-Partitionsnamen steht ein p vor der Partitionsnummer.
  • Untersuche Datenträger mit lsblk, blkid und fdisk -l, bevor du Änderungen vornimmst.
  • GPT und MBR bezeichnen Partitionstabellen; ext4 und XFS bezeichnen Dateisysteme.
  • Binäres G und dezimales GB messen dieselben Bytes mit unterschiedlichen Einheitsgrößen.
  • FAT32 kann keine einzelne Datei von 4 GiB oder mehr enthalten.

2.2 Ein Dateisystem einhängen und sauber aushängen

Das Einhängen verbindet ein Dateisystem mit einem Verzeichnis, seinem Einhängepunkt. Ein unter /data eingehängtes Dateisystem wird über Pfade wie /data/report.pdf zugänglich. Der Verzeichnisbaum bleibt zusammenhängend, selbst wenn mehrere Datenträger seinen Inhalt bereitstellen.

Einhängen und untersuchen

Angenommen, lsblk -f identifiziert /dev/sdb1 als das Dateisystem, das du lesen möchtest. Erstelle ein leeres Verzeichnis als Einhängepunkt und hänge es dann ein:

sudo mkdir -p /mnt/usb
sudo mount /dev/sdb1 /mnt/usb
findmnt /mnt/usb

mount erkennt den Typ normalerweise selbst. Gib -t ext4 an, wenn du ihn ausdrücklich nennen musst. findmnt zeigt TARGET, SOURCE, FSTYPE und OPTIONS. mount ohne Argumente listet Einhängungen auf, einschließlich virtueller Dateisysteme; df -h meldet deren Speicherplatz und lsblk zeigt Einhängepunkte neben den Blockgeräten.

Das Einhängen über einem Verzeichnis verbirgt dessen vorhandenen Inhalt. Lag /mnt/usb/local.txt vorher dort, ist die Datei nicht sichtbar, solange das USB-Dateisystem eingehängt ist, und erscheint nach dem Aushängen wieder. Sie wurde weder auf das Laufwerk kopiert noch gelöscht.

Optionen für die Aufgabe wählen

Verwende -o für eine durch Kommas getrennte Optionsliste. sudo mount -o ro /dev/sdb1 /mnt/usb verhindert gewöhnliche Schreibzugriffe auf Dateien über diese Einhängung. Das ist für eine Untersuchung nützlich, obwohl das Einhängen selbst noch auf das Gerät schreiben kann. rw erlaubt Schreibzugriffe.

noexec verhindert die direkte Ausführung von Dateien auf dem eingehängten Dateisystem. Es hindert einen Interpreter nicht daran, ein Skript zu lesen: bash /mnt/usb/script.sh kann weiterhin ein lesbares Skript ausführen. Betrachte dies als Einschränkung der direkten Ausführung, nicht als vollständige Sperre gegen die Ausführung des Inhalts.

FAT und exFAT speichern keine Unix-Eigentümer. Wenn root ein solches Laufwerk einhängt, gib den gewünschten Eigentümer über Einhängeoptionen an. Prüfe beide IDs mit id -u und id -g. Wenn beide 1000 ausgeben:

sudo mount -o uid=1000,gid=1000 /dev/sdb1 /mnt/usb
cp report.pdf /mnt/usb/

Dies legt die von Linux angezeigte Eigentümer- und Gruppenzuordnung für die Einhängung fest. Das Ändern von Rechten mit chmod ist nicht derselbe Mechanismus für die Eigentümerzuordnung wie bei ext4.

Die Arbeit abschließen

Verlasse das Dateisystem und schließe Programme, die es nutzen. Führe dann aus:

sudo umount /mnt/usb

Der Befehl wird umount geschrieben. Hänge Wechselspeicher aus, bevor du ihn abziehst, damit gepufferte Schreibvorgänge das Laufwerk erreichen. Auf einem Desktop erledigt die Aktion „Auswerfen“ im Dateimanager diese Aufgabe.

Meldet der Befehl „target is busy“, nutzt ein Prozess das Dateisystem noch. Eine Shell, deren aktuelles Verzeichnis /mnt/usb ist, genügt dafür. Führe cd in dieser Shell aus, schließe offene Dateien und versuche es erneut. fuser -vm /mnt/usb oder lsof /mnt/usb hilft, Nutzer des Dateisystems zu identifizieren.

Desktopsysteme richten automatische Einhängungen von Wechselmedien normalerweise über udisks2 ein, unter /media/USER/LABEL oder unter Fedora unter /run/media/USER/LABEL. Server verwenden im Allgemeinen konfigurierte Einhängungen beim Systemstart oder manuelle Befehle. Durch Einhängungen können auch ein Dateisystemabbild, Arbeitsspeicher oder eine Netzwerkfreigabe zugänglich gemacht werden. Nach dem Erstellen von /mnt/iso stellt beispielsweise sudo mount -o loop,ro ubuntu.iso /mnt/iso ein ISO-Abbild als Verzeichnis bereit.

Wichtige Erkenntnisse

  • Ein Einhängepunkt stellt das eingehängte Dateisystem dar und verbirgt vorübergehend den bisherigen Verzeichnisinhalt.
  • Untersuche tatsächliche Einhängungen mit findmnt; wähle Optionen mit -o.
  • noexec blockiert die direkte Ausführung; Interpreter können Skripte weiterhin lesen.
  • Die Eigentümer- und Gruppenzuordnung bei FAT und exFAT wird über Einhängeoptionen wie uid und gid festgelegt.
  • Beende Zugriffe auf ein Dateisystem und führe umount aus, bevor du sein Laufwerk entfernst.

2.3 Eine Einhängung nach dem Neustart wiederherstellen

Eine manuelle Einhängung erstellt keine Regel für den Systemstart. /etc/fstab liefert diese Regeln, einen Eintrag pro Dateisystem oder Auslagerungsbereich. Auf einem System mit systemd wandelt ein Generator Dateisystemeinträge in Mount-Units und Swap-Einträge in Swap-Units um.

Alle sechs Felder lesen

Ein ext4-Dateisystem für Daten kann diesen Eintrag verwenden:

UUID=3f2c9a1e-7b4d-4e8a-9c61-2d5f0b8e4a17 /data ext4 defaults,nofail 0 2

Leerzeichen oder Tabulatoren trennen die sechs Felder. Kommas verbinden Optionen innerhalb eines Feldes; setze keine Leerzeichen in diese Liste.

  1. Quelle: eine UUID, Bezeichnung oder ein Gerätepfad.
  2. Einhängepunkt: hier /data.
  3. Typ: hier ext4.
  4. Optionen: hier defaults,nofail.
  5. Dump-Kennzeichen: normalerweise 0, wodurch das alte Dump-Sicherungskennzeichen deaktiviert wird.
  6. Prüfreihenfolge der Dateisysteme: 1 für das Wurzeldateisystem, 2 für andere Dateisysteme, die geprüft werden müssen, 0 zum Überspringen; XFS und Btrfs verwenden normalerweise 0.

Eine Zeile, die mit # beginnt, ist ein Kommentar. Ein Swap-Eintrag verwendet none als Feld für den Einhängepunkt, den Typ swap und endet üblicherweise mit 0 0.

Eine dauerhafte Kennung wählen

Ermittle die UUID des Dateisystems mit lsblk -f oder sudo blkid. Anders als ein Name wie /dev/sdb1 bleibt die UUID beim Dateisystem, wenn sich die Erkennungsreihenfolge der Laufwerke ändert. Beim Neuformatieren entsteht ein neues Dateisystem mit einer neuen UUID, aktualisiere daher anschließend seinen fstab-Eintrag.

defaults umfasst Lese- und Schreibzugriff sowie automatisches Einhängen. nofail erlaubt die Fortsetzung des Systemstarts, wenn ein optionales Laufwerk fehlt. noauto überspringt das automatische Einhängen; der Eintrag kann später trotzdem sudo mount /data ermöglichen. ro bedeutet schreibgeschützt und noexec blockiert die direkte Ausführung. user erlaubt einem normalen Benutzer, den Eintrag einzuhängen.

Einen Eintrag hinzufügen und testen

Für eine bereits vorbereitete ext4-Datenpartition:

sudo cp /etc/fstab /etc/fstab.bak
lsblk -f
sudo mkdir -p /data

Bearbeite /etc/fstab und füge die Zeile mit der tatsächlich ausgegebenen UUID hinzu. Teste dann vor dem Neustart:

sudo findmnt --verify
sudo systemctl daemon-reload
sudo mount -a
findmnt /data

findmnt --verify prüft die Tabelle, auch auf Probleme mit ihren Feldern und Quellen. Durch das Neuladen liest systemd die geänderte Konfiguration erneut ein. mount -a hängt geeignete Einträge ein, die noch nicht eingehängt sind. findmnt /data bestätigt anschließend Quelle, Typ und aktuelle Optionen. Ein erfolgreiches mount -a bedeutet nicht, dass ein noauto-Eintrag getestet wurde; hänge diesen Eintrag ausdrücklich ein.

Das Wurzelverzeichnis eines neu eingehängten ext4-Dateisystems kann root gehören. Sobald das richtige Dateisystem eingehängt ist, macht sudo chown lee:lee /data Lee zum Eigentümer dieses Verzeichnisses. Führst du dies vor dem Einhängen aus, änderst du stattdessen das darunterliegende Verzeichnis des Einhängepunkts.

Eine falsche UUID, ein falscher Typ oder ein nicht verfügbares benötigtes Gerät kann den Systemstart unterbrechen und das System im Notfallmodus zurücklassen. Korrigiere solche Fehler, während das System läuft. systemctl list-units --type=mount zeigt die daraus entstandenen aktiven Mount-Units.

Wichtige Erkenntnisse

  • fstab-Einträge haben sechs Felder; Optionen bleiben in einem durch Kommas getrennten Feld zusammen.
  • Die UUID eines Dateisystems bleibt bei Änderungen des Gerätenamens stabil, ändert sich aber nach dem Neuformatieren.
  • nofail erlaubt das Fehlen eines optionalen Laufwerks; noauto überspringt das automatische Einhängen.
  • Sichere, prüfe, lade systemd neu, hänge ein und untersuche das Ergebnis vor dem Neustart.
  • Ändere den Eigentümer nach dem Einhängen, damit die Änderung das eingehängte Dateisystem betrifft.
3

Die Speicherplatzbelegung ermitteln und Speicherplatz freigeben

Eine Meldung über ein volles Gerät kann bedeuten, dass Speicherblöcke erschöpft sind oder dass das Dateisystem keine freien Dateieinträge mehr hat. Prüfe zuerst das Dateisystem, das den betroffenen Pfad enthält, und finde dann die verantwortlichen Dateien. Ein Teil des Speicherplatzes bleibt auch belegt, nachdem ein Dateiname verschwunden ist. Wenn du die Messwerte gemeinsam betrachtest, kannst du eine Bereinigungsmethode wählen, die die benötigte Ressource freigibt, ohne installierte Software oder Anwendungsdaten zu beschädigen.

3.1 Freien Speicherplatz und freie Inodes prüfen

df meldet den Speicherplatz eingehängter Dateisysteme. Es beantwortet die Frage: „Wie voll ist das Dateisystem, das diesen Pfad enthält?“ Es addiert nicht die Dateien eines Verzeichnisses. Dank dieses Unterschieds kannst du das betroffene Speichermedium identifizieren, bevor du nach seinen größten Inhalten suchst.

Einen Speicherplatzbericht lesen

Untersuche mit df -h /var/log das Dateisystem, das das Protokollverzeichnis enthält. Ein Bericht könnte Folgendes zeigen:

Filesystem Size Used Avail Use% Mounted on
/dev/vda1   98G  61G   32G  66% /
/dev/vdb1  916G 210G  660G  25% /data

Hier verwenden Protokolle unter /var/log das Wurzeldateisystem, sofern dort kein separates Dateisystem eingehängt ist. Der freie Speicherplatz des Dateisystems /data hilft einem Schreibvorgang nach /var/log nicht allein deshalb, weil beide zu einem Rechner gehören.

Die Spalten beschreiben die Größe des Dateisystems, den belegten Speicherplatz, den für normale Benutzer verfügbaren Speicherplatz, den belegten Anteil in Prozent und den Einhängepunkt. GNU df berechnet Use% als Used geteilt durch Used plus Avail und rundet auf. Im Beispiel für das Wurzeldateisystem ergibt 61 geteilt durch 93 etwa 65,6 %, angezeigt als 66%. Die menschenlesbaren Zahlen selbst sind gerundet.

Size kann größer als Used + Avail sein. Ein ext4-Dateisystem reserviert normalerweise 5 % seiner Blöcke für root, damit wichtige Dienste weiterarbeiten können, wenn Benutzer den Rest füllen. Fünf Prozent von 98G sind etwa 4,9G. Diese ungenutzten reservierten Blöcke sind im für normale Benutzer verfügbaren Avail nicht enthalten; sie sind keine Dateidaten in Used. Die Reserve kann mit tune2fs -m angepasst werden, etwa auf 1 % für ein großes Dateisystem für Daten. Auch Metadaten benötigen Speicherplatz.

Eine geeignete Ansicht wählen

df -h verwendet die binären Einheiten K, M und G. df -H verwendet dezimale Potenzen von 1000. df ohne Optionen meldet normalerweise Blöcke von 1024 Byte, und df -T ergänzt den Dateisystemtyp. Um weniger Einträge für Dateisysteme im Arbeitsspeicher anzuzeigen:

df -h -x tmpfs -x devtmpfs

Ein tmpfs-Eintrag bezeichnet Speicher im Arbeitsspeicher, während efivarfs Firmware-Variablen zugänglich macht. free misst RAM und Auslagerungsspeicher und kann daher df für die Kapazität von Datenträgern nicht ersetzen. lsblk zeigt dir, wie groß ein Datenträger oder eine Partition ist, nicht wie viel freien Speicherplatz das Dateisystem darauf hat.

Auch die Dateieinträge prüfen

Ein Inode ist ein Eintrag im Dateisystem für eine Datei oder ein Verzeichnis. Namen mit Hardlinks teilen sich einen Eintrag. Ein ext4-Dateisystem hat einen festen Vorrat an Inodes, der mit dem Dateisystem erstellt wird. Sehr viele winzige Dateien können ihn aufbrauchen, während noch Gigabytes an Datenspeicher frei bleiben.

df -i /var/log

Lies IUsed, IFree und IUse%. Ist IFree null, kann das Erstellen einer neuen Datei mit „No space left on device“ fehlschlagen, selbst wenn df -h freien Speicherplatz zeigt. Das Entfernen einiger weniger großer Dateien gibt Blöcke, aber nur sehr wenige Inodes frei; das Bereinigen vieler unerwünschter Sitzungs- oder Cache-Dateien behebt einen Inode-Mangel.

Wenn der Speicher des Wurzeldateisystems voll ist, können Datenbanken stehen bleiben, Protokollierung und Updates fehlschlagen und Anmeldungen scheitern. Prüfe frühzeitig sowohl df -h PATH als auch df -i PATH. Die Berichte zeigen, welche Ressource erschöpft ist und welches eingehängte Dateisystem Aufmerksamkeit benötigt.

Wichtige Erkenntnisse

  • df PATH meldet das Dateisystem, das den Pfad enthält, nicht die Gesamtsumme des Verzeichnisses.
  • Use% ist Used geteilt durch Used plus Avail, aufgerundet.
  • Ungenutzte reservierte ext4-Blöcke verringern den für normale Benutzer verfügbaren Speicherplatz, ohne zu belegten Dateidaten zu werden.
  • Prüfe df -i, wenn das Erstellen von Dateien trotz freier Gigabytes fehlschlägt.

3.2 Wachsende Dateien finden und Speicherplatz sicher freigeben

Sobald df das volle Dateisystem identifiziert hat, finde mit du die Verzeichnisse, die dort Speicherplatz belegen. Untersuche sie vor dem Löschen: Anwendungszustand und ersetzbare Cache-Dateien können aus sehr unterschiedlichen Gründen groß sein.

Den Verzeichnisbaum abwärts durchsuchen
sudo du -h -d 1 /var | sort -h
sudo du -sh /var/log

-d 1 liefert Summen für eine Verzeichnisebene darunter, und -s gibt eine Gesamtsumme aus. sort -h versteht Größen wie 900M und 2.1G. Verwende sudo, um Verzeichnisse einzubeziehen, die dein reguläres Konto nicht lesen kann. Ist /var/log groß, wiederhole dort den ersten Befehl, um das wachsende Unterverzeichnis zu finden.

du -sh * überspringt Namen, die mit einem Punkt beginnen, weil das Shell-Muster * nicht auf sie zutrifft. du -h -d 1 ~ | sort -h berücksichtigt bei der Untersuchung eines Home-Verzeichnisses versteckte Verzeichnisse wie .cache und .local.

Um einzelne große Dateien auf dem Wurzeldateisystem zu finden:

sudo find / -xdev -type f -size +500M 2>/dev/null

-xdev bleibt auf dem Ausgangsdateisystem; -type f wählt reguläre Dateien; M bedeutet hier MiB. ls -lhS sortiert die Dateien eines Verzeichnisses von der größten zur kleinsten.

Unterschiedliche Summen verstehen

ls -l meldet die logische Länge einer Datei. du zählt normalerweise den zugewiesenen Speicherplatz. Eine Datei mit „hi“ und einem Zeilenvorschub ist 3 Byte lang, kann aber einen 4-KiB-Block belegen, angezeigt als 4.0K. Ein Sparse-Abbild eines virtuellen Datenträgers kann eine große logische Länge haben und dabei viel weniger tatsächlichen Speicherplatz belegen. du --apparent-size meldet stattdessen logische Längen.

Eine höhere Belegung bei df als bei der Untersuchung eines Verzeichnisses kann auch durch nicht lesbare Verzeichnisse, unter Einhängepunkten verborgene Dateien oder gelöschte, noch geöffnete Dateien entstehen. Das Löschen eines Namens gibt die Daten nicht frei, solange ein Prozess die Datei geöffnet hält.

Beispielsweise kann das Entfernen eines 20G großen laufenden Anwendungsprotokolls df unverändert lassen. Untersuche solche Dateien mit sudo lsof +L1. Ein Neustart des zugehörigen Dienstes gibt seine geöffnete Datei frei, sodass der Speicherplatz freigegeben werden kann. Um ein bekanntes entbehrliches aktives Protokoll zu leeren, ohne eine geöffnete Datei ohne Verzeichniseintrag zu hinterlassen, hält sudo truncate -s 0 /var/log/app/app.log Namen und Datei an Ort und Stelle. Dies löscht den aufgezeichneten Inhalt.

Daten mit dem zuständigen Werkzeug bereinigen

Paketwerkzeuge wissen, welche heruntergeladenen Dateien ersetzt werden können. Verwende sudo apt clean unter Debian oder Ubuntu beziehungsweise sudo dnf clean all unter Fedora oder RHEL. Prüfe die von apt autoremove oder dnf autoremove vorgeschlagenen Änderungen, bevor du ungenutzte Pakete entfernst. Räume deine eigenen unerwünschten Downloads und den Papierkorb auf. Lösche keine Dateien aus /usr, /boot oder /var/lib von Hand, um Platz zu schaffen.

Bei einem wachsenden Journal entfernt sudo journalctl --vacuum-size=1G alte archivierte Journaldateien, bis ihre Gesamtsumme innerhalb der Grenze liegt. Durch aktive Dateien kann die gesamte Journalbelegung über dieser Größe bleiben. Setze für eine dauerhafte Begrenzung SystemMaxUse=1G in /etc/systemd/journald.conf und starte systemd-journald neu.

Führe nach der Bereinigung erneut df -h PATH oder df -i PATH aus, um zu bestätigen, dass die Ressource, die den Fehler verursacht hat, wieder verfügbar ist. Wächst das Journal oder ein anderes Protokoll wiederholt, untersuche sowohl die Meldungen, die das Wachstum verursachen, als auch die Aufbewahrungseinstellungen.

Wichtige Erkenntnisse

  • Grenze mit du das Wachstum von Verzeichnissen ein und finde mit find große reguläre Dateien.
  • Ein Verzeichnisargument schließt versteckte Einträge ein; das Shell-Muster * überspringt sie.
  • Logische Länge, zugewiesene Blöcke und Dateisystemsummen messen unterschiedliche Dinge.
  • Gelöschte, noch geöffnet gehaltene Dateien können weiterhin Speicherplatz belegen; finde sie mit lsof +L1.
  • Verwende Paket- und Journalwerkzeuge für deren Daten; die Journal-Bereinigung betrifft archivierte Dateien.
  • Prüfe die erschöpfte Ressource nach der Bereinigung erneut und gehe wiederholtem Wachstum nach.
4

Netzwerkeinstellungen mit ip konfigurieren und prüfen

Eine funktionierende Verbindung benötigt eine aktive Schnittstelle, eine Adresse und eine Route zum Ziel. Ein Dienst muss außerdem dort lauschen, wo Clients ihn erreichen können. Linux macht diese einzelnen Teile über ip und ss sichtbar, sodass du sie vor Änderungen prüfen kannst. Lies den aktuellen Zustand aus, unterscheide einen temporären Befehl von gespeicherter Konfiguration und teste von der lokalen Verbindung aus nach außen, um ein Verbindungsproblem einzugrenzen, ohne seine Ursache zu erraten.

4.1 Adressen, Netzwerke und Dienstports verstehen

Eine Netzwerkschnittstelle ist ein Verbindungspunkt, über den der Kernel Datenverkehr sendet. Es kann sich um Ethernet, WLAN, Loopback oder eine virtuelle Verbindung wie ein VPN handeln. Namen wie enp0s3, eno1 und wlp2s0 bezeichnen physische Adapter; lo ist Loopback. Manche virtuellen Systeme und Cloud-Systeme verwenden eth0.

IPv4 und sein Präfix lesen

Ethernet- und WLAN-Schnittstellen haben eine 48 Bit lange MAC-Adresse, die als sechs hexadezimale Paare geschrieben und für die Zustellung im lokalen Netzwerk verwendet wird. Eine IP-Adresse identifiziert einen Host für die Kommunikation über Netzwerkgrenzen hinweg. Eine Schnittstelle kann mehrere IP-Adressen haben.

IPv4 hat 32 Bit und wird als vier Zahlen von 0 bis 255 geschrieben. In 192.168.1.50/24 identifizieren die ersten 24 Bit das Netzwerk und acht Bit bleiben für Adressen darin. Das Netzwerk ist 192.168.1.0/24 mit der Netzmaske 255.255.255.0.

Diese acht Bit liefern 256 Adressen. Die erste bezeichnet das Netzwerk und die letzte, 192.168.1.255, ist dessen Broadcast-Adresse. Es bleiben 254 Hostadressen. Ein /26 hat sechs Hostbits: insgesamt 64 Adressen und 62 gewöhnliche Hostadressen. /24 zählt Netzwerkbits, keine Rechner.

Die privaten Bereiche sind 10.0.0.0/8, 172.16.0.0/12 und 192.168.0.0/16. Sie werden nicht öffentlich geroutet; ein Heimrouter verwendet häufig NAT, um privaten Datenverkehr auf seine öffentliche Adresse umzusetzen. 127.0.0.1 ist Loopback und bezeichnet den Rechner, auf dem der Befehl läuft. Eine link-lokale Adresse 169.254.x.x weist oft auf eine fehlgeschlagene DHCP-Konfiguration hin. Die Dokumentation verwendet 192.0.2.0/24, 198.51.100.0/24 und 203.0.113.0/24.

IPv6 erkennen

IPv6 hat 128 Bit in acht hexadezimalen Gruppen. Entferne führende Nullen innerhalb einer Gruppe und ersetze eine Folge von Nullgruppen durch ::: Aus 2001:0db8:0000:0000:0000:0000:0000:0042 wird 2001:db8::42. Verwende :: nur einmal in einer Adresse. ::1 ist Loopback; fe80:-Adressen sind auf IPv6-fähigen Ethernet- und WLAN-Verbindungen link-lokal. Lokale IPv6-Netzwerke verwenden häufig /64, und ein Host hat oft mehrere Adressen.

Netzwerke und Dienste erreichen

Ein Host sendet Datenverkehr direkt an Ziele in einem direkt verbundenen Netzwerk. Sein Standardgateway ist für Ziele zuständig, für die es keine spezifischere Route gibt. Das Gateway ist ein Router, der über die lokale Verbindung erreichbar ist. Ohne passende Route oder Standardroute sind andere Netzwerke unerreichbar.

Ein Port bezeichnet einen Dienst an einer Adresse: SSH verwendet TCP 22, DNS verwendet UDP und TCP 53, HTTP verwendet TCP 80 und HTTPS üblicherweise TCP 443. TCP stellt zuverlässige Verbindungen bereit; UDP überträgt unabhängige Nachrichten. Ein Socket-Endpunkt kombiniert eine Adresse und einen Port, etwa 192.168.1.50:22.

Die Konfiguration beziehen oder festlegen

DHCP für IPv4 überlässt einem Host vorübergehend eine Adresse, ein Präfix, ein Gateway und DNS-Einstellungen. Bei statischer Konfiguration werden feste Werte festgelegt, wie häufig bei Servern. IPv6-SLAAC bildet eine Adresse aus Informationen, die der Router bekannt gibt. DHCPv6 kann IPv6-Adressen und DNS-Server bereitstellen; Informationen über den IPv6-Standardrouter stammen aus Routerankündigungen. Eine DHCPv6-Adresse allein liefert diese Route nicht.

Wichtige Erkenntnisse

  • Eine Schnittstelle kann mehrere Adressen haben; MAC- und IP-Adressen erfüllen unterschiedliche Aufgaben.
  • Ein Präfix zählt Netzwerkbits: Ein gewöhnliches IPv4-/24 hat 254 nutzbare Hostadressen.
  • Loopback bezeichnet immer den Rechner, auf dem der Befehl läuft.
  • Die Standardroute ist für Ziele ohne spezifischere Route zuständig.
  • Ports bezeichnen Dienste; IP-Adressen bezeichnen Hosts und Schnittstellen.
  • IPv6 erfährt Standardrouter über Routerankündigungen.

4.2 Ausgaben zu Schnittstellen, Routen und lauschenden Sockets lesen

Der Befehl ip zeigt den aktuellen Zustand des Netzwerks. Seine Objekte beschreiben unterschiedliche Teile: addr für Adressen, link für den Schnittstellenzustand, route für das Routing und neigh für lokale Nachbarn. ss zeigt Sockets und ihre lauschenden Dienste.

Eine Schnittstelle untersuchen
ip -br addr
ip addr show dev enp0s3
ip link show

Die Kurzansicht könnte enp0s3 UP 192.168.1.50/24 fe80::a00:27ff:fe3a:5c71/64 zeigen. Die Schnittstelle ist aktiv und hat eine IPv4-Adresse und eine link-lokale IPv6-Adresse. Die längere Ausgabe trennt diese Felder:

link/ether 08:00:27:3a:5c:71 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.50/24 brd 192.168.1.255 scope global dynamic enp0s3
inet6 fe80::a00:27ff:fe3a:5c71/64 scope link

link/ether gibt die MAC-Adresse an. inet leitet IPv4 ein und inet6 IPv6. Der IPv4-Wert brd ist die Broadcast-Adresse, nicht das Gateway. dynamic weist auf eine dynamisch zugewiesene Adresse hin und valid_lft zeigt, wie lange sie gültig bleibt. UP ist der administrative Zustand; LOWER_UP zeigt eine funktionierende Verbindung auf der darunterliegenden Ebene an.

ip -4 addr und ip -6 addr wählen eine Adressfamilie. ip link lässt IP-Adressen weg. hostname -I gibt die konfigurierten Adressen des Rechners aus. Wähle nicht 127.0.0.1, wenn du einem anderen Rechner eine Adresse für diesen Host gibst.

Die Route getrennt lesen
default via 192.168.1.1 dev enp0s3 proto dhcp src 192.168.1.50 metric 100
192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.50 metric 100

ip route show erzeugt eine solche Ausgabe. Das lokale Netzwerk 192.168.1.0/24 ist direkt über enp0s3 erreichbar. Andere Ziele verwenden gemäß der Standardroute das Gateway 192.168.1.1. proto dhcp zeigt, woher diese Route stammt; src gibt die bevorzugte Quelladresse an.

Untersuche mit ip route get 203.0.113.10 den gewählten Weg zu einem Ziel. ip -6 route show listet IPv6-Routen auf. ip neigh zeigt ermittelte lokale Zuordnungen von IP- zu MAC-Adressen; ein Gateway-Eintrag mit FAILED bedeutet, dass die Nachbarauflösung die benötigte lokale Antwort nicht erhalten hat.

Prüfen, wo ein Dienst lauscht
sudo ss -tulnp

Die Optionen stehen für TCP, UDP, lauschend, numerische Adressen und Prozessdetails. Lies die Spalte für die lokale Adresse. 0.0.0.0:22 nimmt Datenverkehr an allen lokalen IPv4-Adressen an, während 127.0.0.1:5432 nur lokal erreichbar ist. [::]:80 bezeichnet alle IPv6-Adressen. Das Lauschen ist nur eine Voraussetzung; Netzwerkerreichbarkeit und Zugriffsregeln spielen weiterhin eine Rolle. ss -tn listet aktuelle TCP-Verbindungen auf, ohne nur lauschende Sockets auszuwählen.

Ältere Anleitungen verwenden ifconfig, route, arp und netstat. Ihre aktuellen Entsprechungen sind ip addr/ip link, ip route, ip neigh und ss. Fehlt ifconfig, fehlt ein Werkzeug, nicht das Netzwerk. Kurzformen wie ip a, ip r und ip l sind zulässige Abkürzungen.

Wichtige Erkenntnisse

  • Verwende getrennte ip-Objekte für Adressen, Verbindungen, Routen und Nachbarn.
  • brd ist eine Broadcast-Adresse; das Gateway findest du in ip route.
  • ip route get ADDRESS zeigt die für dieses Ziel gewählte Route.
  • Ein an Loopback gebundener lauschender Socket kann keine Verbindungen annehmen, die an die Netzwerkschnittstelle des Hosts adressiert sind.
  • ss -tulnp ordnet lauschende Ports den zugehörigen Prozessen zu.

4.3 Einstellungen ändern und einen Verbindungsfehler eingrenzen

Ein temporärer Befehl und ein gespeichertes Netzwerkprofil erfüllen unterschiedliche Zwecke. ip ändert den laufenden Kernelzustand sofort; der Netzwerkmanager der Distribution stellt gespeicherte Einstellungen beim Systemstart wieder her und kann temporäre Änderungen schon früher ersetzen.

Eine temporäre Änderung vornehmen

An einer Übungsschnittstelle namens enp0s8:

sudo ip link set dev enp0s8 up
sudo ip addr add 192.168.50.10/24 dev enp0s8
sudo ip route add default via 192.168.50.1

Gib das Präfix an. Ohne /24 erhält eine hinzugefügte IPv4-Adresse /32, sodass die erwartete Route zum lokalen /24-Netzwerk fehlt. ip addr del entfernt die angegebene Adresse, ip route del default entfernt die Standardroute und ip link set ... down deaktiviert die Schnittstelle.

Änderst du die Schnittstelle, über die eine entfernte SSH-Sitzung läuft, kann deine Verbindung abbrechen. Verwende dafür Konsolenzugriff oder ein Konfigurationswerkzeug mit Rücksetzfunktion.

Einstellungen mit dem aktiven Netzwerkmanager speichern

Fedora, RHEL und viele Desktops verwenden NetworkManager. Finde das Profil mit nmcli device status und ändere dann seine Verbindung anhand ihres Namens:

sudo nmcli connection modify "Wired connection 1" ipv4.method manual ipv4.addresses 192.168.1.60/24 ipv4.gateway 192.168.1.1 ipv4.dns 192.168.1.1
sudo nmcli connection up "Wired connection 1"

Setzt du ipv4.method auto, kehrt das Profil zu DHCP zurück. Ubuntu verwendet häufig netplan-YAML unter /etc/netplan/; andere Systeme verwenden .network-Dateien von systemd-networkd oder /etc/network/interfaces von Debians ifupdown. Cloud-Systeme nutzen oft DHCP und cloud-init.

Eine statische netplan-Konfiguration kann so aussehen:

network:
  version: 2
  ethernets:
    enp0s3:
      dhcp4: false
      addresses: [192.168.1.60/24]
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [192.168.1.1]

Verwende zum Einrücken Leerzeichen. sudo netplan try wendet die Konfiguration an und gibt dir vor dem Zurücksetzen 120 Sekunden Zeit zur Bestätigung. sudo netplan apply wendet sie direkt an.

Eine Ebene nach der anderen testen

Beginne mit ip -br link, dann ip -br addr und danach ip route. Eine fehlende aktive Verbindung, eine fehlende geeignete Adresse und eine fehlende Standardroute sind unterschiedliche Fehler. Teste das Gateway mit ping -c 3 192.168.1.1, dann eine externe Adresse und dann einen Namen. Die Anzahl bei -c lässt ping unter Linux nach einer festen Zahl von Anfragen stoppen; verwende sonst Strg+C.

Eine Antwort meldet die Umlaufzeit, während die Zusammenfassung den Paketverlust meldet. Eine ausbleibende Echoantwort kann sowohl auf ICMP-Filterung als auch auf einen ausgefallenen Host oder eine fehlerhafte Route zurückgehen. Funktioniert eine Adresse, aber ein Name führt zu „Temporary failure in name resolution“, untersuche die Namensauflösung. Gibt ping die aufgelöste Adresse aus und erhält danach keine Antworten, war die Namensauflösung bereits erfolgreich.

tracepath oder traceroute zeigt antwortende Router entlang des Pfads. Teste auch die tatsächliche Anwendung: curl -I https://example.com fragt HTTP-Header ab. Ist eine lokale Webanfrage erfolgreich, aber entfernte Anfragen schlagen fehl, untersuche sudo ss -tlnp. Ein an 127.0.0.1:80 gebundener Dienst benötigt für den entfernten Zugriff eine Bindungsadresse, die im Netzwerk erreichbar ist, sowie die nötigen Netzwerkzugriffsregeln.

Wichtige Erkenntnisse

  • Änderungen mit ip wirken sofort und sind temporär; speichere dauerhafte Einstellungen über den aktiven Netzwerkmanager.
  • Gib beim Hinzufügen einer Adresse ein Präfix an.
  • Teste der Reihe nach Verbindung, Adresse, Route, Gateway, externe Adresse, Name und Dienst.
  • Ein Fehler bei der Namensauflösung ist etwas anderes als ein aufgelöster Name, der keine ping-Antworten erhält.
  • Ein fehlgeschlagener ping allein zeigt nicht, auf welcher Verbindungsebene der Fehler liegt.
  • Verwende Konsolenzugriff oder eine Rücksetzfunktion, wenn du die Einstellungen einer entfernten Verbindung änderst.
5

Hostnamen mit DNS und der hosts-Datei auflösen

Ein Server kann über seine Adresse erreichbar sein, während sein Name nicht funktioniert, oder ein Rechner kann einen vertrauten Namen an eine veraltete Adresse leiten. Die Namensauflösung ist ein eigenständiger Teil einer Verbindung mit mehreren möglichen Quellen und Zwischenspeichern. Erfahre, wie lokale Namen, DNS-Einträge und Resolver-Einstellungen zusammenwirken, und wähle dann einen Test, der demselben Auflösungsweg wie die Anwendung folgt. Der Vergleich dieser Wege hilft, einen veralteten Eintrag oder einen fehlerhaften DNS-Dienst zu finden.

5.1 Einen Hostnamen durch lokale Dateien und DNS verfolgen

Namen ermöglichen es, web1.example.com zu verwenden, statt sich eine Adresse zu merken. DNS, das Domain Name System, speichert Einträge in einer verteilten Hierarchie von Domains. Ein kurzer Hostname wie web1 bezeichnet einen Rechner; sein vollqualifizierter Domainname identifiziert ihn innerhalb der gesamten Hierarchie.

Erkennen, was ein Eintrag beantwortet
EintragBedeutung
AIPv4-Adresse für einen Namen
AAAAIPv6-Adresse für einen Namen
CNAMEAlias, der auf einen anderen Namen zeigt
MXMailserver für eine Domain
PTRName, der bei einer Rückwärtsauflösung aus einer Adresse ermittelt wird

DNS-Server verwenden Port 53 sowohl über UDP als auch über TCP. Die Gültigkeitsdauer (TTL) eines Eintrags gibt in Sekunden an, wie lange Zwischenspeicher ihn behalten dürfen. Eine TTL von 3600 entspricht einer Stunde. Das Ändern eines Eintrags entfernt die ältere Antwort nicht sofort aus jedem Zwischenspeicher.

Der Resolver ist die Clientseite der Namensauflösung: Bibliothekscode und häufig ein Dienst wie systemd-resolved. Seine konfigurierten Nameserver sind normalerweise rekursive Resolver, die von einem Router, Anbieter, einer Organisation oder einem öffentlichen Dienst betrieben werden. Sie suchen Antworten und speichern sie für Clients zwischen.

Die Reihenfolge der Systemquellen prüfen

Linux-Anwendungen verwenden im Allgemeinen die Abfragequellen, die in der Zeile hosts: in /etc/nsswitch.conf konfiguriert sind. Ein einfaches Beispiel ist:

hosts: files dns

Hier bedeutet files die Datei /etc/hosts, die vor DNS geprüft wird. Andere Installationen enthalten Quellen wie resolve oder mdns4_minimal. Lies beim Vergleich zweier Systeme die tatsächliche Zeile.

/etc/hosts enthält eine Adresse, gefolgt von ihrem Hauptnamen und optionalen Aliasnamen:

127.0.0.1 localhost
::1 localhost ip6-localhost
192.168.1.20 nas.home.arpa nas

Bei der gezeigten Suchreihenfolge wird nas auf diesem Rechner zu 192.168.1.20 aufgelöst. home.arpa ist für Heimnetzwerke reserviert. Änderungen an der hosts-Datei werden ohne Neustart wirksam, betreffen aber nur den Rechner, dessen Datei du bearbeitest. Die Datei akzeptiert weder Platzhalter noch Portnummern: 192.168.1.20:8080 nas ist ungültig.

Lokale Einträge gezielt nutzen

Ein Eintrag in der hosts-Datei kann ein Gerät in einem kleinen Netzwerk benennen oder deinen Rechner vor einer öffentlichen DNS-Änderung auf einen Ersatz-Webserver verweisen. Die Zuordnung eines Namens zu 0.0.0.0 wird ebenfalls verwendet, um ihn lokal zu blockieren. Jede dieser Anwendungen ändert die Adressauflösung, nicht den Port oder die Konfiguration des Dienstes.

Angenommen, eine Website zieht um und funktioniert auf anderen Rechnern, aber nicht auf deinem. Ein alter Eintrag in /etc/hosts kann deinen Browser weiterhin an die frühere Adresse leiten, selbst wenn DNS korrekt ist. Vergleiche den lokalen Eintrag mit dem aktuell vorgesehenen Ziel, bevor du Netzwerkrouten änderst.

Der eigene Hostname des Rechners ist eine separate Einstellung. hostname gibt ihn aus; sudo hostnamectl set-hostname web1 ändert ihn. /etc/hostname speichert den konfigurierten Namen. Debian und Ubuntu ordnen ihn üblicherweise auch in /etc/hosts zu, zum Beispiel 127.0.1.1 web1. Aktualisiere nach einer Umbenennung auch diese Zuordnung. Eine Abweichung kann bei der Verwendung von sudo die Warnung „unable to resolve host web1“ verursachen. Das Ändern deines Hostnamens erstellt keinen öffentlichen DNS-Eintrag dafür.

Wichtige Erkenntnisse

  • DNS-Eintragstypen beantworten unterschiedliche Fragen; A steht für IPv4 und AAAA für IPv6.
  • Die TTL steuert die Speicherdauer im Cache, sodass alte Antworten nach einer Änderung bestehen bleiben können.
  • Die Zeile hosts: in nsswitch.conf steuert die Abfragequellen des Systems.
  • Ein Eintrag in der hosts-Datei gilt lokal für einen Rechner und enthält keine Portnummer.
  • Halte den konfigurierten Hostnamen und seine lokale Zuordnung in der hosts-Datei konsistent.

5.2 Resolver-Einstellungen mit tatsächlichen Abfrageergebnissen vergleichen

Verwende einen Test, der zu deiner Fragestellung passt. Eine direkte Abfrage prüft die Antwort eines DNS-Servers. Eine Systemabfrage prüft die Quellen, die Linux-Anwendungen normalerweise nutzen und die neben DNS auch lokale Dateien umfassen können.

Die Resolver-Konfiguration lesen

/etc/resolv.conf kann nameserver 192.168.1.1 und search example.com enthalten. Die Nameserver-Zeile bezeichnet einen DNS-Server; durch das Suchsuffix kann ein kurzer Name wie web1 als web1.example.com versucht werden. Der herkömmliche Resolver verwendet bis zu drei konfigurierte Nameserver, normalerweise der Reihe nach. Optionen können das Verhalten bei Zeitüberschreitungen und erneuten Versuchen einstellen.

Diese Datei wird oft von einem Netzwerkdienst erzeugt. Ein Kommentar oder symbolischer Link zeigt, wer sie verwaltet. Direkte Änderungen können bei der nächsten Netzwerkaktualisierung verschwinden. Ändere gespeicherte DNS-Werte daher über NetworkManager, netplan oder den aktiven Netzwerkmanager.

Auf einem System mit systemd-resolved verweist die Datei häufig auf /run/systemd/resolve/stub-resolv.conf und nennt 127.0.0.53. Das ist ein lokaler DNS-Stub und kein externer Server, der versehentlich durch Loopback ersetzt wurde. Er leitet Abfragen weiter und speichert Antworten zwischen. Verwende:

resolvectl status
resolvectl query example.com
resolvectl flush-caches

Der erste Befehl zeigt die tatsächlichen vorgelagerten DNS-Server einschließlich der Einstellungen pro Schnittstelle. Leere den Zwischenspeicher, wenn du bei der Untersuchung einer Änderung gespeicherte Ergebnisse verwerfen musst.

Das Abfragewerkzeug wählen

host web1.example.com fragt einen Namen bei DNS ab. host 203.0.113.10 führt eine Rückwärtsauflösung durch; host -t MX example.com fragt Maileinträge ab. dig example.com A +short gibt eine knappe IPv4-Antwort aus und dig @1.1.1.1 example.com A wählt ausdrücklich einen DNS-Server. nslookup ist ein älteres DNS-Abfragewerkzeug. Die Werkzeuge sind üblicherweise in den Paketen dnsutils oder bind-utils enthalten.

getent hosts nas folgt der Suchreihenfolge des Systems aus /etc/nsswitch.conf, wie die meisten Anwendungen. dig, host und nslookup lesen /etc/hosts nicht selbst. Eine Abfrage des Stubs von systemd-resolved kann jedoch eine Antwort zurückgeben, die der Dienst aus dieser Datei bezieht. Wähle ausdrücklich einen bekannten vorgelagerten Server, wenn du seine DNS-Daten mit der lokalen Abfrage vergleichen möchtest.

Das Ergebnis vor Änderungen auswerten

NXDOMAIN bedeutet, dass der abgefragte DNS-Server geantwortet hat, der Name existiere nicht. SERVFAIL bedeutet, dass der Server die Abfrage nicht abschließen konnte. Eine Zeitüberschreitung bedeutet, dass vor Ablauf der Frist keine brauchbare Antwort eingetroffen ist. „Name or service not known“ von einem Programm ist ein Fehler der Systemabfrage und für sich genommen kein DNS-Antwortcode.

Angenommen, ein ping an eine externe Adresse ist erfolgreich, aber die Abfrage von example.com meldet einen vorübergehenden Fehler. Untersuche den konfigurierten Resolver und vergleiche eine direkte Abfrage an ihn mit einer Abfrage an einen anderen bekannten Resolver. Eine gültige Antwort des zweiten Servers grenzt das Problem auf den konfigurierten Server, den Weg dorthin oder die lokalen Resolver-Einstellungen ein. Schlagen beide fehl, unterscheide tatsächliche Fehlerantworten von Zeitüberschreitungen, bevor du eine Firewall verantwortlich machst. DNS-Verkehr und ICMP-ping sind unterschiedlicher Datenverkehr, selbst wenn sie dasselbe Netzwerk nutzen.

Wichtige Erkenntnisse

  • Einstellungen einer erzeugten resolv.conf sollten über den zuständigen Netzwerkmanager geändert werden.
  • 127.0.0.53 bezeichnet normalerweise den lokalen Stub von systemd-resolved; resolvectl status zeigt vorgelagerte Server.
  • Verwende getent für den Abfrageweg des Systems und dig @SERVER, um einen gewählten DNS-Server abzufragen.
  • Eine DNS-Fehlerantwort, eine Zeitüberschreitung und ein Fehler der Systemabfrage liefern unterschiedliche Hinweise.
6

Mit SSH sichere Verbindungen zu entfernten Systemen herstellen

SSH bietet dir eine entfernte Shell, eine Möglichkeit zum Ausführen einzelner Befehle und sichere Dateiübertragung. Eine erfolgreiche Verbindung umfasst zwei Identitätsprüfungen: Dein Client prüft den Server und der Server prüft dein Konto. Richte Schlüssel mit diesen Rollen vor Augen ein und teste dann die Servereinstellungen, solange du noch eine funktionierende Sitzung hast. Verbindungsfehler und wirksame Konfigurationen zu lesen hilft dir, die richtige Phase zu reparieren, ohne den Schutz durch SSH zu schwächen.

6.1 Verbinden, den Server prüfen und Dateien übertragen

SSH, Secure Shell, verschlüsselt entfernte Sitzungen und Dateiübertragungen. Der Client ssh verbindet sich mit sshd, normalerweise auf TCP-Port 22. OpenSSH ist die übliche Linux-Implementierung. Ältere Werkzeuge wie telnet und FTP übertragen Passwörter im Klartext.

Die entfernte Sitzung prüfen und öffnen

Verbinde dich mit ssh lee@web1.example.com; lasse lee@ weg, um deinen lokalen Benutzernamen zu verwenden. Für einen anderen Port verwende ssh -p 2222 lee@web1.example.com. Prüfe die Identität des entfernten Rechners, bevor du Befehle ausführst; exit oder Strg+D bringt dich zur lokalen Shell zurück.

Beim ersten Kontakt zeigt SSH einen Fingerabdruck des Hostschlüssels. Vergleiche ihn über einen vertrauenswürdigen Weg mit der Angabe des Serveradministrators oder Anbieters. Der Administrator kann ihn mit ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub ausgeben. Durch die Annahme wird der Schlüssel zum späteren Vergleich in deiner Datei ~/.ssh/known_hosts gespeichert.

Eine Warnung über einen geänderten Hostschlüssel bedeutet, dass sich die vorgelegte Identität von der gespeicherten unterscheidet. Eine Neuinstallation oder eine wiederverwendete Adresse kann dies erklären, ebenso aber ein Angreifer. Prüfe zuerst den neuen Fingerabdruck. Sobald die Änderung bestätigt ist, entfernt ssh-keygen -R 203.0.113.10 den alten Eintrag für diese Adresse, sodass du dich verbinden und den neuen speichern kannst.

Einen Befehl ausführen, ohne angemeldet zu bleiben
ssh lee@web1.example.com 'df -h /'

Der Befehl läuft auf dem entfernten Rechner, seine Ausgabe erscheint lokal und die Verbindung endet. Eine nachfolgende lokale Pipe kann diese Ausgabe verarbeiten. Programme, die ein Terminal benötigen, darunter interaktives sudo, können ssh -t verwenden, zum Beispiel ssh -t lee@web1.example.com sudo systemctl restart nginx.

Ein Übertragungswerkzeug wählen

scp report.pdf lee@web1.example.com:/home/lee/ lädt eine Datei hoch. scp lee@web1.example.com:/home/lee/results.csv . lädt sie in das aktuelle lokale Verzeichnis herunter. Der Doppelpunkt kennzeichnet den entfernten Pfad; ohne ihn ist lee@web1.example.com ein lokaler Dateiname. -r kopiert Verzeichnisse und -P 2222 wählt einen Port, mit einem großen P. Aktuelles scp verwendet im Hintergrund SFTP.

sftp lee@web1.example.com öffnet eine interaktive Sitzung. Verwende get zum Herunterladen, put zum Hochladen, cd für das entfernte Verzeichnis, lcd für das lokale und bye zum Beenden. Für wiederholte Verzeichniskopien sendet rsync -av site/ lee@web1.example.com:/srv/site/ Änderungen über SSH; rsync muss an beiden Enden installiert sein.

Speichere wiederholt benötigte Verbindungsdaten in ~/.ssh/config:

Host web1
    HostName 203.0.113.10
    User lee
    Port 2222
    IdentityFile ~/.ssh/id_ed25519

Dann verwenden ssh web1 und scp notes.txt web1: diese Einstellungen.

Die Phase des Fehlers erkennen

„Connection refused“ weist auf eine aktive Ablehnung hin, häufig weil auf dem gewählten Port nichts lauscht. Eine Zeitüberschreitung bedeutet, dass keine Antwort eingetroffen ist; mögliche Ursachen sind Routing, Filterung oder ein ausgefallener Host. „Permission denied (publickey)“ bedeutet, dass die Verbindung die Authentifizierung erreicht hat, aber dein Konto oder der angebotene Schlüssel nicht akzeptiert wurde. ssh -v zeigt den Fortschritt bei Verbindung und Authentifizierung, sodass du die fehlgeschlagene Phase untersuchen kannst.

Wichtige Erkenntnisse

  • Prüfe den Fingerabdruck des Servers, bevor du seinem ersten oder geänderten Hostschlüssel vertraust.
  • known_hosts speichert Serveridentitäten, nicht die für dein Konto zugelassenen Schlüssel.
  • Entfernte Befehle in Anführungszeichen laufen auf dem Server; nachfolgende lokale Pipes laufen auf deinem Client.
  • Ein Doppelpunkt kennzeichnet einen entfernten scp-Pfad; scp verwendet -P und ssh -p für Ports.
  • Verwende sftp interaktiv und rsync für die wiederholte Übertragung geänderter Dateien.
  • Unterscheide vor der Fehlerdiagnose Ablehnung, Zeitüberschreitung und Authentifizierungsfehler.

6.2 Ein Schlüsselpaar erstellen und den öffentlichen Schlüssel installieren

Die Schlüsselanmeldung beweist, dass dein Client einen privaten Schlüssel besitzt, der zu einem autorisierten öffentlichen Schlüssel gehört. Der Client signiert Authentifizierungsdaten; er sendet den privaten Schlüssel nicht an den Server. Die beiden Dateien haben daher unterschiedliche Ziele und Schutzanforderungen.

Das Paar erzeugen und schützen

Auf deinem eigenen Rechner:

ssh-keygen -t ed25519 -C "lee@laptop"

Wähle bei der Abfrage eine Passphrase. Die Standarddateien sind ~/.ssh/id_ed25519, der private Schlüssel, und ~/.ssh/id_ed25519.pub, der öffentliche Schlüssel. Der Text bei -C ist ein Kommentar zur Identifizierung. Ed25519 ist seit OpenSSH 9.5 der Standard von ssh-keygen; die ausdrückliche Nennung macht das Beispiel klar. Für einen älteren Server, der RSA verlangt, erzeugt ssh-keygen -t rsa -b 4096 einen 4096 Bit langen RSA-Schlüssel.

Eine Passphrase verschlüsselt die private Schlüsseldatei. Sie schützt den gespeicherten Schlüssel, falls jemand die Datei erhält; sie unterscheidet sich vom Passwort des entfernten Kontos. Automatisierte Aufgaben verwenden manchmal Schlüssel ohne Passphrase mit eingeschränkten Kontorechten. Bewahre den privaten Schlüssel geheim auf dem Client auf.

Ein SSH-Agent hält entsperrte Schlüssel im Arbeitsspeicher, damit du die Passphrase nicht für jede Verbindung erneut eingeben musst. Desktopsitzungen starten häufig einen Agenten. Füge den Schlüssel mit ssh-add ~/.ssh/id_ed25519 hinzu und gib bei Aufforderung seine Passphrase ein.

Den öffentlichen Schlüssel für ein Konto autorisieren
ssh-copy-id lee@web1.example.com

Nach der Authentifizierung am Serverkonto von Lee hängt der Befehl einen öffentlichen Schlüssel an die Datei ~/.ssh/authorized_keys dieses Kontos an. Gibt es mehrere Clientschlüssel, wählt ssh-copy-id -i ~/.ssh/id_ed25519.pub lee@web1.example.com den öffentlichen Schlüssel ausdrücklich aus. Bei der Bereitstellung in der Cloud kann er beim Erstellen des Servers installiert werden.

Jede authorized_keys-Zeile enthält einen Schlüsseltyp, kodierte Daten des öffentlichen Schlüssels und normalerweise einen Kommentar. Mehrere Schlüssel können separate Geräte oder Personen autorisieren. Ein Schlüssel in der Datei von Lee gewährt Zugriff auf das Konto von Lee, nicht auf das Konto von root. Das Entfernen seiner Zeile entzieht diesem Schlüssel dort den Zugang; entferne nach einem Bekanntwerden seinen öffentlichen Schlüssel von jedem betroffenen Server.

Eigentümer und Rechte prüfen

Auf dem Server im vorgesehenen Konto:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Achte darauf, dass das Home-Verzeichnis nicht für die Gruppe oder andere beschreibbar ist. Bei den üblichen strengen Prüfungen lehnt sshd unsicher beschreibbare Autorisierungsdateien oder übergeordnete Verzeichnisse ab. Auf dem Client schützt Modus 600 den privaten Schlüssel; zu offene Rechte können „UNPROTECTED PRIVATE KEY FILE!“ auslösen. Die öffentliche .pub-Datei darf mit Modus 644 lesbar sein.

Den Anmeldeweg bestätigen

Öffne eine neue Verbindung mit ssh lee@web1.example.com. Eine Passphrase-Abfrage entsperrt den lokalen privaten Schlüssel; ein bereits geladener Agent kann das unnötig machen. Suche in der ausführlichen Ausgabe nach einer erfolgreichen Authentifizierung mit „publickey“.

Schlägt die Anmeldung fehl, prüfe zuerst den Kontonamen, dann seinen Eintrag für den öffentlichen Schlüssel, Eigentümer und Rechte und schließlich den angebotenen Clientschlüssel. ssh -i ~/.ssh/other_key lee@web1.example.com wählt einen bestimmten privaten Schlüssel; IdentityFile macht diese Auswahl zum Teil einer gespeicherten Hostkonfiguration. Das Erzeugen eines weiteren Schlüssels repariert keinen fehlenden Autorisierungseintrag für den bestehenden.

Wichtige Erkenntnisse

  • Halte den privaten Schlüssel auf dem Client geheim; installiere den öffentlichen Schlüssel im vorgesehenen Serverkonto.
  • Eine Passphrase schützt den gespeicherten privaten Schlüssel; ein Agent hält einen entsperrten Schlüssel im Arbeitsspeicher.
  • Verwende 700 für .ssh und 600 für authorized_keys sowie den privaten Clientschlüssel.
  • Die Autorisierung gilt pro Konto; das Löschen einer Zeile mit einem öffentlichen Schlüssel entzieht diesem dort den Zugang.
  • Prüfe bei fehlgeschlagener Authentifizierung das Konto, den autorisierten Schlüssel, die Rechte und den angebotenen Schlüssel.

6.3 SSH-Servereinstellungen ändern, ohne den Zugriff zu verlieren

Das Serverprogramm ist sshd aus dem Paket openssh-server. Debian und Ubuntu nennen seinen systemd-Dienst ssh; Fedora, RHEL, openSUSE und Arch nennen ihn im Allgemeinen sshd. Verwende beim Prüfen des Status, Aktivieren oder Neuladen des Dienstes den Namen deiner Distribution.

Die wirksame Konfiguration finden

Installiere mit sudo apt install openssh-server oder sudo dnf install openssh-server. Für einen Dienst unter Fedora oder RHEL startet sudo systemctl enable --now sshd ihn und aktiviert ihn für den Systemstart. systemctl status sshd meldet seinen Zustand.

Der Server liest /etc/ssh/sshd_config. /etc/ssh/ssh_config ist für den Client. Viele Systeme binden /etc/ssh/sshd_config.d/*.conf nahe dem Anfang der Serverdatei ein. Bei den meisten Anweisungen gilt der zuerst gelesene Wert. Ein anderer Wert am Ende der Hauptdatei kann wirkungslos bleiben.

Gib die wirksamen Einstellungen mit sudo sshd -T aus. Zeigt der Befehl trotz eines späteren no den Wert passwordauthentication yes, prüfe eingebundene Dateien. Auf einem Ubuntu-Cloud-Abbild kann 50-cloud-init.conf den früheren Wert liefern. Nach einer früher anwendbaren Datei wie 10-no-passwords.conf oder einer Änderung der maßgeblichen Einstellung müssen Validierung und Neuladen folgen.

Die vorgesehene Authentifizierung verlangen

Nachdem die Schlüsselanmeldung funktioniert, richten diese Einstellungen einen Zugriff ausschließlich mit Schlüsseln ein:

PubkeyAuthentication yes
PasswordAuthentication no
KbdInteractiveAuthentication no
AuthenticationMethods publickey
PermitRootLogin no

Die erste Einstellung aktiviert Schlüssel. Die nächsten beiden deaktivieren die Passwortmethode und die tastaturinteraktive Methode, die beide Passwörter annehmen können. AuthenticationMethods publickey verlangt ausdrücklich die Authentifizierung mit einem öffentlichen Schlüssel. PermitRootLogin no blockiert die SSH-Anmeldung als root; Administratoren melden sich mit ihrem eigenen Konto an und verwenden sudo. Der Standardwert prohibit-password ist anders: Er erlaubt root weiterhin die Anmeldung mit einem Schlüssel. AllowUsers lee deploy kann einschränken, welche Konten sich anmelden dürfen.

Sicher anwenden und testen

Halte die funktionierende Sitzung offen und bestätige in einem zweiten Terminal, dass die Schlüsselanmeldung funktioniert, bevor du den Passwortzugang entfernst. Nach der Bearbeitung:

sudo sshd -t
sudo systemctl reload sshd

Verwende unter Debian oder Ubuntu reload ssh. sshd -t gibt bei gültiger Konfiguration nichts aus; korrigiere Fehler vor dem Neuladen. Ein Neuladen erhält bestehende Sitzungen, daher prüft erst eine neue Verbindung die geänderte Richtlinie. Halte die alte Sitzung offen, bis dieser Test erfolgreich ist.

Zugriff und Protokolle prüfen

journalctl -u sshd oder journalctl -u ssh zeigt Versuche. Zu den herkömmlichen Protokolldateien gehören /var/log/auth.log unter Debian/Ubuntu und /var/log/secure unter RHEL. Wiederholte Passwortversuche mit ungültigen Benutzern sind auf Servern mit Internetzugang häufig; ein Zugriff ausschließlich mit Schlüsseln schließt das Erraten von Passwörtern als Anmeldeweg aus.

Erlaube den SSH-Dienst durch die aktive Firewall: unter Ubuntu mit sudo ufw allow OpenSSH oder unter Fedora/RHEL mit sudo firewall-cmd --permanent --add-service=ssh, gefolgt von sudo firewall-cmd --reload. Auch eine Regel des Cloud-Anbieters muss den Port erlauben, auf dem der Dienst lauscht. SSH auf Port 2222 zu verlegen kann störende Einträge durch Scans verringern, doch Schlüssel, eingeschränkte Anmeldung und OpenSSH-Updates bieten den eigentlichen Schutz.

Wichtige Erkenntnisse

  • Verwende den Dienstnamen der Distribution: ssh unter Debian/Ubuntu, andernorts meist sshd.
  • Untersuche wirksame Einstellungen mit sshd -T; früher eingebundene Werte können Vorrang haben.
  • Deaktiviere beide passwortfähigen Methoden und verlange publickey für die Anmeldung ausschließlich mit Schlüsseln.
  • Bestätige die Schlüssel, prüfe die Syntax, lade neu und teste eine neue Verbindung, während eine funktionierende Sitzung offen bleibt.
  • Lies die Serverprotokolle und prüfe die Zugriffsregeln des Hosts und des Cloud-Anbieters.

Dateisysteme und Netzwerke unter Linux: Beispiele

6 Interaktive Lektionen

1

Dateien durch ein Linux-System verfolgen

16 Schritte
Dienstdateien finden, gemeinsam genutzte Verzeichnisse und Links beurteilen und anschließend aktuelle Systeminformationen lesen.
  1. 1
    EinführungMit dem Zweck des Pfads beginnen

    Ein kleiner Helpdesk-Dienst bewahrt sein Programm, seine Einstellungen und seinen Anfrageverlauf an unterschiedlichen Orten auf (/usr, /etc und /var). Sein Administrator verwendet außerdem ein gemeinsam genutztes temporäres Verzeichnis und einen Verweis auf den aktuellen Bericht, der ein symbolischer Link ist.

    Verfolge jeden Pfad anhand von zwei Fragen: Welche Art von Daten gehört hierhin und um welche Art von Dateisystemeintrag handelt es sich? Die Antworten bestimmen, wo du suchst und was ein Dateivorgang verändert, etwa wer Einträge löschen darf (das Sticky-Bit).

  2. 2
    ErklärungProgramm, Einstellungen und Ausgabe trennen

    Das Programm selbst gehört normalerweise nach /usr, seine systemweiten Einstellungen nach /etc und seine veränderlichen Daten nach /var. Eine persönliche Arbeitskopie gehört in ein Home-Verzeichnis.

    Für ein von einem Administrator von Hand installiertes Hilfsprogramm hält /usr/local/bin es von paketierten Befehlen getrennt. Ein Anfrageverlauf gehört nach /var/log, wo wachsende Betriebsdaten zu erwarten sind.

  3. 3
    HerausforderungDie Dienstdateien zuordnen

    Ein Supportdienst hat drei Dateien: seine ausführbare Datei aus einem Paket, seine lokale Konfiguration und ein täglich wachsendes Protokoll. Ordne sie /usr, /etc und /var zu.

    ---reveal---

    Die ausführbare Datei gehört nach /usr, die lokalen Einstellungen nach /etc und das veränderliche Protokoll nach /var, normalerweise nach /var/log. Ein Name mit der Endung .conf ist ein nützlicher Hinweis, aber der Zweck der Datei bestimmt ihren Speicherort.

  4. 4
    ErklärungEinen Ort für temporäre Arbeit wählen

    Eine kurze Konvertierungsaufgabe kann /tmp verwenden. Eine längere Aufgabe, die nach einem Neustart fortgesetzt werden muss, benötigt /var/tmp. Keines der beiden Verzeichnisse ist ein dauerhafter Ort für das Endergebnis.

    Ein /tmp im Arbeitsspeicher verliert seine Dateien beim Herunterfahren, während Bereinigungsregeln an beiden Orten ältere Einträge entfernen können. Verwende mktemp für eine private Datei mit eindeutigem Namen und bewahre den ausgegebenen Pfad für spätere Befehle auf.

  5. 5
    BeispielDas Sticky-Bit in den Rechten ablesen

    Das root gehörende, gemeinsam genutzte Verzeichnis zeigt drwxrwxrwt. Jeder kann Einträge erstellen, aber das abschließende t ändert, wer sie entfernen oder umbenennen darf.

    Jo erstellt eine Datei mit Modus 644. Pat kann ihren Inhalt lesen, weil die Datei anderen das Lesen erlaubt. Pat kann ihren Eintrag nicht löschen: Das Verzeichnis mit Sticky-Bit behält diesen Vorgang dem Eigentümer des Eintrags, dem Eigentümer des Verzeichnisses oder root vor, vorbehaltlich der normalen Zugriffsprüfungen.

  6. 6
    HerausforderungDie Lesbarkeit ändern, ohne Löschregeln zu ändern

    Jo möchte, dass Pat die vorhandene temporäre Datei nicht mehr lesen kann. Das gemeinsam genutzte Verzeichnis hat bereits das Sticky-Bit. Was sollte Jo ändern?

    ---reveal---

    Ändere die eigenen Rechte der Datei, zum Beispiel auf Modus 600. Das Sticky-Bit schränkt bereits das Löschen und Umbenennen ein; es entfernt nicht das Leserecht einer Datei mit Modus 644. Diese beiden Schutzmaßnahmen betreffen unterschiedliche Vorgänge.

  7. 7
    BeispielEinen relativen Link erstellen

    Das Verzeichnis /home/jo/exports existiert und der Bericht liegt unter /home/jo/today.txt. Ein Link unter /home/jo/exports/current soll den Bericht erreichen.

    Verwende ln -s ../today.txt /home/jo/exports/current. Beginne beim Folgen des gespeicherten Zielpfads in exports, gehe nach oben zu /home/jo und lies dann today.txt. Das Arbeitsverzeichnis der Shell liefert nicht den Ausgangspunkt.

  8. 8
    HerausforderungEin verschobenes Ziel korrigieren

    Jo benennt today.txt in ready.txt um, ohne den Link unter /home/jo/exports/current zu verschieben. Welches Ziel sollte der neu erstellte Link speichern?

    ---reveal---

    Speichere ../ready.txt. Das erste .. führt weiterhin von exports zum Home-Verzeichnis von Jo, aber der letzte Dateiname muss dem neuen Namen entsprechen. Eine Änderung der angezeigten Rechte des symbolischen Links kann seinen fehlenden Zielpfad nicht reparieren.

  9. 9
    ErklärungDer Datei einen zweiten Namen über einen Hardlink geben

    Ein Hardlink speichert einen weiteren Namen für denselben Dateieintrag, keinen Pfad zu einem bevorzugten ursprünglichen Namen. ln ready.txt kept.txt bewirkt, dass die beiden Namen auf diesem Dateisystem einen Inode teilen.

    Wird ready.txt entfernt, bleibt kept.txt nutzbar. Ein symbolischer Link, der ready.txt speichert, würde dagegen zu einem toten Link. Ein Hardlink kann weder ein Verzeichnis bezeichnen noch auf ein anderes Dateisystem verweisen.

  10. 10
    TippDen beabsichtigten Eintrag entfernen

    Verwende für einen symbolischen Link auf ein Verzeichnis dessen Namen ohne abschließenden Schrägstrich: rm current oder unlink current. Das Zielverzeichnis bleibt erhalten.

    Ein abschließender Schrägstrich veranlasst Befehle, dem Zielverzeichnis zu folgen. Eine rekursive Löschung kann dann Dateien innerhalb dieses Ziels erreichen, daher ist die genaue Schreibweise des Pfads wichtig. Untersuche bei Unsicherheit den Pfeil mit ls -l oder lies das gespeicherte Ziel mit readlink.

  11. 11
    ErklärungGeräte vor dem Öffnen erkennen

    Eine Auflistung, die mit b beginnt, beschreibt ein Blockgerät wie eine Datenträgerpartition. Ein führendes c bezeichnet ein zeichenorientiertes Gerät wie ein Terminal. Reguläre Dateien beginnen mit -, unabhängig davon, ob ihr Inhalt Text oder binär ist.

    Die Major- und Minor-Nummern in einer Geräteauflistung identifizieren Treiber und Gerät. Sie stehen an der Stelle, an der eine reguläre Datei ihre Länge anzeigen würde.

  12. 12
    BeispielDie aktuelle Laufzeit auslesen

    cat /proc/uptime gibt 259200.0 710000.0 zurück. Der erste Wert sind die seit dem Systemstart verstrichenen Sekunden: Geteilt durch 3600 ergibt das 72 Stunden oder drei Tage.

    Der zweite Wert summiert die Prozessorleerlaufzeit und kann daher größer als die tatsächlich verstrichene Laufzeit sein. Dieser Text stammt vom laufenden Kernel; er ist kein gewöhnliches Protokoll, das jede Sekunde auf dem Datenträger gespeichert wird.

  13. 13
    HerausforderungEine Informationsdatei mit Größe null erklären

    Eine lernende Person sieht für einen Eintrag unter /proc die Größe 0 und nimmt an, dass er keine nützlichen Informationen enthalten kann. Beim Lesen gibt er mehrere Zeilen zurück. Wie können beide Beobachtungen zutreffen?

    ---reveal---

    Der Kernel erzeugt die Informationen auf Anfrage. Die Größe in der Auflistung ist nicht die gespeicherte Länge einer gewöhnlichen Datei auf dem Datenträger. Eine null sagt dort daher nicht voraus, dass beim Lesen nichts zurückkommt. Nutze die dokumentierte Aufgabe des Eintrags, um den zurückgegebenen Text zu deuten.

  14. 14
    VerbindungEine Schnittstelle über sysfs auslesen

    ls /sys/class/net/ listet die dem Kernel bekannten Schnittstellen auf. Das Lesen von /sys/class/net/enp0s3/address gibt die MAC-Adresse dieser Ethernet-Schnittstelle zurück.

    Dies verbindet einen vertrauten Pfadnamen mit aktuellen Hardwareinformationen. /proc stellt vor allem Prozess- und Systemdaten bereit, während /sys Geräte, Treiber und Busse organisiert. Ihre Inhalte werden vom laufenden System neu erstellt.

  15. 15
    HerausforderungDen Zugriff nach dem Verschwinden eines Dateinamens behalten

    Ein Bericht liegt in einem root gehörenden, gemeinsam genutzten Verzeichnis mit Sticky-Bit. Jo ist der Eigentümer; Pat kann ihn lesen, aber nicht umbenennen. Ein symbolischer Link an anderer Stelle speichert seinen Pfad. Jo entfernt diesen Namen des Berichts, aber ein Hardlink auf demselben Dateisystem bleibt bestehen. Über welchen verbleibenden Namen lässt sich der Bericht noch öffnen und warum?

    ---reveal---

    Der Name des Hardlinks öffnet ihn weiterhin, weil er denselben Dateieintrag bezeichnet. Der symbolische Link wird zu einem toten Link, weil sein gespeicherter Pfad verschwunden ist. Das Sticky-Bit steuert, wer den ursprünglichen Eintrag entfernen darf, nicht ob ein anderer Name bestehen bleibt.

  16. 16
    ZusammenfassungZweck, Rechte und Eintragstyp nutzen

    Finde die Datei anhand ihres Zwecks, lies ihren Typ und ihre Rechte ab und folge dann einem Link vom richtigen Verzeichnis aus. Untersuche für aktuelle Systemdaten /proc und /sys. Wähle für gemeinsam genutzte temporäre Arbeit sowohl eine Lebensdauer als auch den Schutz vor fremdem Zugriff; das Sticky-Bit regelt das Löschen unabhängig davon.

2

Ein optionales Archivlaufwerk einhängen

14 Schritte
Ein vorhandenes Dateisystem identifizieren, einhängen und anhand seiner dauerhaften Kennung einen getesteten Starteintrag erstellen.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungMit einem vorhandenen Datenlaufwerk beginnen
  2. 2
    BeispielDen Gerätebaum lesen
  3. 3
    ErklärungUntersuchung nicht mit Vorbereitung verwechseln
  4. 4
    HerausforderungDie richtige Quelle wählen
  5. 5
    BeispielDas Verzeichnis erstellen und das Dateisystem einhängen
  6. 6
    TippEine eingeschränkte Einhängung zur Untersuchung wählen
  7. 7
    HerausforderungEin belegtes Dateisystem aushängen
  8. 8
    ErklärungDie Kennung statt der Erkennungsreihenfolge festhalten
  9. 9
    BeispielDie Regel mit sechs Feldern erstellen
  10. 10
    BeispielDie Regel vor dem Neustart prüfen
  11. 11
    Herausforderungnofail und noauto unterscheiden
  12. 12
    VerbindungDen Eigentümer des eingehängten Dateisystems festlegen
  13. 13
    HerausforderungNach dem Neuformatieren korrigieren
  14. 14
    ZusammenfassungJede Ebene prüfen
3

Herausfinden, warum ein Server keine Dateien erstellen kann

10 Schritte
Speicherplatz- und Inode-Berichte nutzen, dem Wachstum von Verzeichnissen nachgehen und erklären, warum Speicherplatz nach dem Löschen belegt bleibt.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungMit dem betroffenen Pfad beginnen
  2. 2
    BeispielDas enthaltende Dateisystem ablesen
  3. 3
    BeispielDen Inode-Vorrat prüfen
  4. 4
    HerausforderungDie Bereinigung passend zur fehlenden Ressource wählen
  5. 5
    BeispielDas wachsende Verzeichnis finden
  6. 6
    TippVersteckte Speicherbelegung einbeziehen
  7. 7
    ErklärungDem verbleibenden Verweis auf ein gelöschtes Protokoll folgen
  8. 8
    HerausforderungDen unveränderten Bericht zum freien Speicherplatz erklären
  9. 9
    HerausforderungDas Ergebnis der Journal-Bereinigung prüfen
  10. 10
    ZusammenfassungDie reparierte Ressource messen
4

Eine Verbindung von der Schnittstelle bis zum Dienst verfolgen

15 Schritte
Eine Schnittstelle und Route auslesen, eine temporäre Änderung testen und anschließend einen Dienst diagnostizieren, der nur lokal funktioniert.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungDie Bestandteile der Verbindung unterscheiden
  2. 2
    ErklärungDas lokale Netzwerk aus dem Präfix ablesen
  3. 3
    HerausforderungEntscheiden, ob ein Ziel lokal ist
  4. 4
    VerbindungDie getrennten Rollen von Adresse und Router bei IPv6 erkennen
  5. 5
    BeispielDie kurze Adressansicht untersuchen
  6. 6
    BeispielDie für das Ziel gewählte Route ablesen
  7. 7
    HerausforderungDen Router ohne Raten finden
  8. 8
    BeispielEine vollständige temporäre Adresse hinzufügen
  9. 9
    TippDen Zugriff beim Anwenden gespeicherter Einstellungen schützen
  10. 10
    HerausforderungEine verschwundene Einstellung erklären
  11. 11
    ErklärungEin ping-Ergebnis genau lesen
  12. 12
    BeispielEinen nur lokal lauschenden Dienst untersuchen
  13. 13
    HerausforderungHinweise zu Route und Dienst verbinden
  14. 14
    VerbindungDie vorgesehene Anwendung testen
  15. 15
    ZusammenfassungDen nächsten Test anhand des Ergebnisses wählen
5

Erklären, warum ein Rechner eine alte Adresse auflöst

11 Schritte
Lokale Zuordnungen, einen lokalen DNS-Stub und eine ausdrückliche DNS-Abfrage vergleichen, ohne ihre Ergebnisse zu verwechseln.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungEin Name funktioniert auf zwei Rechnern unterschiedlich
  2. 2
    ErklärungDer Suchreihenfolge des Systems folgen
  3. 3
    BeispielDie veraltete lokale Zuordnung finden
  4. 4
    HerausforderungDie Reichweite einer lokalen Änderung vorhersagen
  5. 5
    VerbindungZwischengespeicherte DNS-Antworten berücksichtigen
  6. 6
    ErklärungDen lokalen Stub erkennen
  7. 7
    BeispielZwei gezielte Abfragewege vergleichen
  8. 8
    HerausforderungEine negative Antwort deuten
  9. 9
    ErklärungFehlermeldungen unterscheiden
  10. 10
    HerausforderungScheinbar übereinstimmende Tests erklären
  11. 11
    ZusammenfassungQuellen vor dem Ändern von Einstellungen vergleichen
6

Entfernten Zugriff ausschließlich mit Schlüsseln einrichten und prüfen

17 Schritte
Die Serveridentität prüfen, einen Benutzerschlüssel autorisieren und anschließend eine Richtlinienänderung prüfen, während ein Wiederherstellungszugang erhalten bleibt.

Speichere diese Einheit, um jede Interaktive Lektion Schritt für Schritt durchzugehen.

  1. 1
    EinführungServer- und Benutzeridentität auseinanderhalten
  2. 2
    BeispielDie erste Verbindung prüfen
  3. 3
    HerausforderungAuf einen geänderten Hostschlüssel reagieren
  4. 4
    BeispielEinen entfernten Befehl ausführen
  5. 5
    TippDie Übertragungsrichtung erkennbar halten
  6. 6
    BeispielDas Schlüsselpaar auf dem Client erstellen
  7. 7
    BeispielNur den öffentlichen Schlüssel installieren
  8. 8
    TippDateien schützen und den Agenten verwenden
  9. 9
    HerausforderungEine nicht passende Kontozuordnung beheben
  10. 10
    ErklärungDie maßgeblichen Einstellungen des Servers auslesen
  11. 11
    BeispielAuthentifizierung mit öffentlichem Schlüssel verlangen
  12. 12
    HerausforderungDen Unterschied bei der Root-Anmeldung erklären
  13. 13
    BeispielPrüfen, neu laden und eine neue Sitzung öffnen
  14. 14
    VerbindungErkennen, wo die Verbindung abgebrochen ist
  15. 15
    HerausforderungHerausfinden, warum eine spätere Einstellung nicht galt
  16. 16
    HerausforderungDen Zugang eines verlorenen Geräts entziehen
  17. 17
    ZusammenfassungDen neuen Anmeldeweg testen

Dateisysteme und Netzwerke unter Linux: Übungsaufgaben

60 Übungsfragen in 6 Sets

Set 1: Dateien finden und spezielle Einträge verstehen10 Übungsfragen

Frage 1 von 10

Du installierst einen Befehl von Hand für alle Benutzer. Wohin sollte seine ausführbare Datei normalerweise kommen?
  1. /usr/share/doc
  2. /usr/local/bin
  3. /var/lib/local
  4. /etc/local/bin
Antwort zeigenAntwort ausblenden
Antwort: B
/usr/local/bin hält lokal installierte Befehle von paketverwalteter Software getrennt. /usr/share/doc enthält Dokumentation, keine ausführbaren Befehle. Ein von Hand installierter Befehl im lokalen Softwarebaum wird außerdem nicht mit Dateien vermischt, die durch gewöhnliche Paketaktualisierungen verwaltet werden.

Frage 2 von 10

Ein Dienst schreibt einen wachsenden Anfrageverlauf. Welches Verzeichnis enthält normalerweise diese Art von Daten?
  1. /usr/lib
  2. /etc/log
  3. /var/log
  4. /boot/log
Antwort zeigenAntwort ausblenden
Antwort: C
Protokolle sind veränderliche Betriebsdaten und gehören daher normalerweise nach /var/log. /etc enthält die Konfiguration, die einen Dienst steuert, nicht seinen wachsenden Anfrageverlauf. Der Unterschied hilft dir, die Ursache eines vollen Dateisystems zu suchen, ohne die Einstellungen oder installierten Dateien des Programms zu bearbeiten.

Frage 3 von 10

Ein root gehörendes Verzeichnis hat Modus 1777. Eva besitzt dort eine Datei mit Modus 644. Omar ist ein regulärer Benutzer, der weder Eigentümer der Datei noch des Verzeichnisses ist. Was kann Omar tun?
  1. Die Datei lesen, aber ihren Eintrag nicht löschen.
  2. Ihren Eintrag löschen, aber die Datei nicht lesen.
  3. Die Datei lesen und ihren Eintrag löschen.
  4. Weder die Datei lesen noch ihren Namen auflisten.
Antwort zeigenAntwort ausblenden
Antwort: A
Modus 644 erlaubt anderen Benutzern, die Datei zu lesen. Das Sticky-Bit des Verzeichnisses beschränkt das Löschen auf den Eigentümer der Datei, den Eigentümer des Verzeichnisses oder root, daher kann Omar sie über dieses Verzeichnis nicht löschen. Das Sticky-Bit entfernt nicht das Leserecht, das die Datei selbst gewährt.

Frage 4 von 10

Ein symbolischer Link unter /home/ren/archive/current speichert ../draft.txt. Auf welchen Pfad zeigt er?
  1. /home/ren/archive/draft.txt
  2. /home/draft.txt
  3. /home/ren/current/draft.txt
  4. /home/ren/draft.txt
Antwort zeigenAntwort ausblenden
Antwort: D
Beginne im Verzeichnis, das den Link enthält, /home/ren/archive, und wende dann .. an, um /home/ren zu erreichen, bevor du draft.txt hinzufügst. Ein naheliegender Fehler wäre, beim aktuellen Verzeichnis der Shell zu beginnen. Der relative Zielpfad ist im Link gespeichert und ändert sich nicht mit deinem Arbeitsverzeichnis.

Frage 5 von 10

Eine Auflistung beginnt mit brw-rw----. Um welche Art von Eintrag handelt es sich?
  1. Einen toten symbolischen Link.
  2. Eine binäre Datei.
  3. Ein zeichenorientiertes Gerät.
  4. Ein Blockgerät.
Antwort zeigenAntwort ausblenden
Antwort: D
Das erste Zeichen b bezeichnet ein Blockgerät, etwa einen Datenträger oder eine Partition. Es bedeutet nicht, dass eine reguläre Datei binäre Daten enthält. Zeichenorientierte Geräte verwenden c und symbolische Links l; die übrigen Rechtezeichen beschreiben den Zugriff, nicht den Typ des Eintrags.

Frage 6 von 10

In einem Verzeichnis ist copy.txt ein Hardlink auf source.txt und alias.txt ein symbolischer Link, der source.txt speichert. Was bleibt lesbar, nachdem source.txt entfernt wurde?
  1. Nur alias.txt.
  2. Nur copy.txt.
  3. Beide verbleibenden Namen.
  4. Keiner der verbleibenden Namen.
Antwort zeigenAntwort ausblenden
Antwort: B
Der Hardlink bezeichnet weiterhin dieselbe zugrunde liegende Datei, sodass copy.txt lesbar bleibt. Der symbolische Link speichert nur den nun fehlenden Pfad source.txt und wird zu einem toten Link. Ein erhaltener Hardlink-Name bewahrt den Zugriff auf Daten; ein erhaltener symbolischer Link bewahrt den von ihm gespeicherten Zielpfad nicht.

Frage 7 von 10

Eine temporäre Aufgabe muss nach einem Neustart fortgesetzt werden. Welcher Ort eignet sich für ihre Zwischendateien?
  1. /var/tmp
  2. /run
  3. /proc/tmp
  4. /tmp
Antwort zeigenAntwort ausblenden
Antwort: A
/var/tmp ist für temporäre Dateien vorgesehen, die einen Neustart überdauern müssen. /tmp ist kurzlebig und kann im Arbeitsspeicher liegen oder beim Systemstart geleert werden, sodass es diese Lebensdauer nicht bieten kann. Bereinigungsregeln können auch ältere Dateien aus /var/tmp entfernen; dauerhafte Ergebnisse gehören in einen dauerhaften Speicherort.

Frage 8 von 10

Ein Update eines paketierten Dienstes hat deine Änderung unter /usr/lib/systemd/system ersetzt. Wo sollte eine unterstützte lokale Überschreibung liegen?
  1. Unter /var/log/systemd.
  2. Unter /usr/share/systemd.
  3. Unter /etc/systemd/system.
  4. Unter /run/media/systemd.
Antwort zeigenAntwort ausblenden
Antwort: C
Lokale systemd-Überschreibungen gehören nach /etc/systemd/system, getrennt von mitgelieferten Unit-Dateien. Bearbeitest du die paketverwaltete Datei unter /usr/lib, kann die Änderung bei einem Update ersetzt werden. /run enthält zudem Laufzeitdaten und wird beim Neustart geleert, eignet sich also nicht für diese dauerhafte Überschreibung.

Frage 9 von 10

ls -l zeigt einen /proc-Eintrag mit Größe 0, dennoch gibt cat aktuelle Informationen aus. Warum?
  1. Der Kernel erzeugt den Inhalt beim Lesen.
  2. Die Datei ist leer, aber cat holt ihre Sicherung.
  3. Der Text liegt auf einer versteckten Partition.
  4. Die angezeigte Größe wird in ganzen Gigabytes gemessen.
Antwort zeigenAntwort ausblenden
Antwort: A
Viele procfs-Einträge erzeugen beim Lesen aktuelle Kernelinformationen und speichern keinen gewöhnlichen Dateiinhalt auf dem Datenträger. Ihre angezeigte Länge null beschreibt daher nicht, wie viel Text ein Lesevorgang zurückgibt. Würdest du den Eintrag als herkömmliche leere Datei auf dem Datenträger behandeln, würdest du die Rolle dieses virtuellen Dateisystems übersehen.

Frage 10 von 10

Ein symbolischer Link unter /home/eli/links/active speichert ../work.txt. Die Zieldatei wird nach /data/notes/final.txt auf einem anderen Dateisystem verschoben. Welcher Linktyp und welcher relative Zielpfad stellen den Zugriff über den unveränderten Linknamen wieder her?
  1. Ein symbolischer Link mit ../../data/notes/final.txt.
  2. Ein symbolischer Link mit ../../../data/notes/final.txt.
  3. Ein Hardlink auf die Datei /data/notes/final.txt.
  4. Ein symbolischer Link mit ../data/notes/final.txt.
Antwort zeigenAntwort ausblenden
Antwort: B
Beginne bei /home/eli/links und steige drei Ebenen bis / auf, bevor du nach data/notes hinabgehst. Der gespeicherte Zielpfad ist daher ../../../data/notes/final.txt. Zwei Ebenen nach oben führen nur bis /home, und ein Hardlink kann die Datei auf einem anderen Dateisystem nicht erreichen.
Set 2: Speicher identifizieren und zuverlässige Einhängungen einrichten10 Übungsfragen

Speichere diese Einheit, um jede Antwort zu sehen und jedes Set zu üben.

Frage 1 von 10

Was bezeichnet /dev/nvme1n1p3?
  1. NVMe-Gerät 3 mit eingehängter erster Partition.
  2. Partition 1 des SATA-Geräts /dev/nvme3n1.
  3. Ein unter /dev/nvme1 eingehängtes Dateisystem.
  4. Partition 3 des NVMe-Geräts /dev/nvme1n1.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 2 von 10

Ein Wechsellaufwerk verwendet GPT und hat eine vfat-Partition. Das Kopieren einer 6 GiB großen Datei schlägt fehl, obwohl 20 GiB frei sind. Was erklärt den Fehler?
  1. FAT32 kann keine Datei dieser Größe speichern.
  2. GPT begrenzt jede Partitionsdatei auf 4 GiB.
  3. Die Partition ist für jede neue Datei zu klein.
  4. Die binäre Größenanzeige verbirgt den belegten Platz.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 3 von 10

Eine ext4-Partition wird als /dev/vdc1 identifiziert und /mnt/archive existiert bereits. Welcher Befehl hängt sie dort ein?
  1. sudo mount /mnt/archive /dev/vdc1
  2. sudo umount /dev/vdc1 /mnt/archive
  3. sudo mount /dev/vdc1 /mnt/archive
  4. sudo mkfs.ext4 /mnt/archive /dev/vdc1
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 4 von 10

/mnt/store/local.txt war vorhanden, bevor du ein Laufwerk unter /mnt/store eingehängt hast. Nun fehlt die Datei in der Auflistung. Was geschieht nach erfolgreichem Aushängen?
  1. Die Datei wird vom Laufwerk zurückkopiert.
  2. Die frühere Datei wird wieder sichtbar.
  3. Die Datei bleibt an beiden Orten gelöscht.
  4. Die Datei wandert ins Wurzelverzeichnis des Laufwerks.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 5 von 10

Ein Datenlaufwerk wechselt von /dev/sdc1 zu /dev/sdd1, nachdem ein weiteres Laufwerk hinzugefügt wurde. Welche fstab-Quelle vermeidet dieses Problem der Erkennungsreihenfolge am besten?
  1. Die UUID des Datendateisystems.
  2. Der neue Pfad /dev/sdd1.
  3. Der aktuelle Einhängepunkt des Laufwerks.
  4. Der Dateisystemtypname ext4.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 6 von 10

Ein optionales Sicherungslaufwerk ist oft nicht angeschlossen. Welche fstab-Option lässt den Systemstart weiterlaufen, wenn es fehlt?
  1. noexec
  2. ro
  3. nofail
  4. user
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 7 von 10

Ein eingehängtes USB-Dateisystem lässt sich nicht aushängen. Deine Shell befindet sich gerade in /mnt/usb und kein anderer Prozess nutzt es. Was solltest du tun?
  1. Dateirechte ändern und umount erneut versuchen.
  2. Partition formatieren und umount erneut versuchen.
  3. Einhängepunkt löschen und umount erneut versuchen.
  4. Verzeichnis verlassen und umount erneut versuchen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 8 von 10

Ein Laufwerk fasst 64.000.000.000 Byte. Warum zeigt eine Größenanzeige in binären Einheiten etwa 59.6G?
  1. Seine Partitionstabelle verbraucht zwangsläufig 4,4 GB.
  2. Jedes angezeigte G steht für mehr als ein dezimales GB.
  3. Sein Dateisystem reserviert genau 4,4 GB für root.
  4. Das Laufwerk hat seit der Herstellung Kapazität verloren.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 9 von 10

Du fügst einen neuen fstab-Eintrag mit noauto hinzu, lädst systemd neu und führst mount -a aus. Die Einhängung fehlt. Was ist der nächste geeignete Test?
  1. Die UUID entfernen und den Dateisystemtyp als Quelle nutzen.
  2. Sofort neu starten, um noauto wirksam zu machen.
  3. Das fstab-Ziel ausdrücklich einhängen und untersuchen.
  4. mount -a wiederholen, bis das Dateisystem erscheint.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 10 von 10

Ein vorhandenes ext4-Laufwerk hat einen korrekten fstab-Eintrag mit noauto,nofail für /mnt/test. Es ist nun angeschlossen, aber mount -a hängt das Laufwerk nicht ein und eine ältere lokale Datei ist dort sichtbar. Wie kannst du das Laufwerk ansehen und die lokale Datei erhalten?
  1. nofail entfernen und neu starten; die lokale Datei wird auf das Laufwerk kopiert.
  2. /mnt/test ausdrücklich einhängen; die lokale Datei bleibt bis zum Aushängen verborgen.
  3. Das Laufwerk formatieren und einhängen; die lokale Datei wird sein erster Eintrag.
  4. mount -a wiederholen; die lokale Datei wird auf beiden Dateisystemen sichtbar.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Set 3: Volle Dateisysteme und unerwartete Summen diagnostizieren10 Übungsfragen

Speichere diese Einheit, um jede Antwort zu sehen und jedes Set zu üben.

Frage 1 von 10

Du benötigst den freien Speicherplatz des Dateisystems, das /srv/uploads enthält. Welcher Befehl liefert diesen Bericht?
  1. df -h /srv/uploads
  2. du -sh /srv/uploads
  3. lsblk /srv/uploads
  4. free -h /srv/uploads
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 2 von 10

Das Erstellen neuer Dateien auf einem ext4-Dateisystem schlägt fehl. df -h zeigt 18G verfügbar, aber df -i zeigt IFree als 0. Welche Bereinigung behebt den Fehler am besten?
  1. Eine große Datei mit Hardlink entfernen.
  2. Eine große Datei innerhalb ihres Verzeichnisses verschieben.
  3. Viele unerwünschte winzige Cache-Dateien entfernen.
  4. Den Arbeitsspeicher für laufende Programme erhöhen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 3 von 10

Ein Home-Verzeichnis ist groß, aber du -sh * erfasst nur wenig davon. Welcher Befehl bezieht seine versteckten Unterverzeichnisse ein?
  1. du -sh ~/* | sort -h
  2. ls -lhS ~/* | sort -h
  3. df -h ~/* | sort -h
  4. du -h -d 1 ~ | sort -h
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 4 von 10

Du möchtest eine Gesamtsumme für /var/cache einschließlich seines Inhalts. Welchen Befehl solltest du verwenden?
  1. sudo df -h /var/cache
  2. sudo du -sh /var/cache
  3. sudo ls -ld /var/cache
  4. sudo findmnt /var/cache
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 5 von 10

Ein gelöschtes Protokoll erscheint weiterhin in lsof +L1, weil sein Dienst es geöffnet hält. Warum zeigt df den Speicherplatz nicht als frei an?
  1. Der gelöschte Name belegt nun denselben Platz im Papierkorb.
  2. Die geöffnete Datei belegt weiterhin den zugewiesenen Speicherplatz.
  3. Der df-Bericht wartet auf die nächste geplante Datenträgerprüfung.
  4. Der Inode ist frei, aber alle seine Blöcke sind für root reserviert.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 6 von 10

Ein vereinfachter df-Bericht zeigt 24G belegt und 16G verfügbar. Welches Use% ergibt sich nach der Regel von GNU df?
  1. 40 %.
  2. 67 %.
  3. 75 %.
  4. 60 %.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 7 von 10

Ein Sparse-Abbild hat eine logische Länge von 30 GiB, aber nur 2 GiB sind zugewiesen. Welche Messwerte passen?
  1. ls meldet etwa 30 GiB; du meldet etwa 2 GiB.
  2. ls meldet etwa 2 GiB; du meldet etwa 30 GiB.
  3. Beide Werkzeuge müssen für das Abbild etwa 30 GiB melden.
  4. Beide Werkzeuge müssen für das Abbild etwa 2 GiB melden.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 8 von 10

Du hast eine optionale Datenpartition neu formatiert und ihre alte UUID steht noch in fstab. Was muss sich ändern, bevor du die Einhängung testest?
  1. Die UUID behalten und nur das Dump-Kennzeichen ändern.
  2. Die UUID behalten und die Prüfreihenfolge auf null setzen.
  3. Die Quelle durch die neue Dateisystem-UUID ersetzen.
  4. Den Einhängepunkt durch den alten UUID-Text ersetzen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 9 von 10

Ein Sparse-Abbild hat eine logische Länge von 36 GiB und belegt 3 GiB an zugewiesenen Blöcken. Es hat zwei Namen über Hardlinks und ein Prozess hält es geöffnet. Beide Namen werden entfernt. Wie viel Speicherplatz kann df vor und nach dem Schließen des letzten offenen Verweises zurückgewinnen, wenn du kleine Änderungen an Metadaten außer Acht lässt?
  1. Etwa 0 GiB vor dem Schließen, danach etwa 3 GiB.
  2. Etwa 3 GiB vor dem Schließen, danach keinen weiteren Platz.
  3. Etwa 0 GiB vor dem Schließen, danach etwa 36 GiB.
  4. Etwa 36 GiB vor dem Schließen, danach keinen weiteren Platz.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 10 von 10

Die von df gemeldete Belegung des Wurzeldateisystems ist 11G höher als eine vollständige du-Untersuchung mit erhöhten Rechten. lsof +L1 ist leer. Über /srv/data, das zuvor große Dateien enthielt, ist ein separates Laufwerk eingehängt. Was erklärt die Differenz?
  1. Die Kapazität des eingehängten Laufwerks zählt als Dateidaten des Wurzeldateisystems.
  2. Die gelöschten, noch geöffneten Dateien werden unter ihren alten Namen aufgeführt.
  3. Ungenutzte reservierte Blöcke werden als belegte Dateidaten gemeldet.
  4. Frühere Dateien des Wurzeldateisystems sind unter der Dateneinhängung verborgen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Set 4: Netzwerkzustand auslesen und Verbindungsfehler finden10 Übungsfragen

Speichere diese Einheit, um jede Antwort zu sehen und jedes Set zu üben.

Frage 1 von 10

Was gibt /24 in einer IPv4-Adresse an?
  1. Die Anzahl nutzbarer Hostadressen.
  2. Das letzte Byte des Standardgateways.
  3. Die Anzahl führender Netzwerkbits.
  4. Den von dieser Schnittstelle verwendeten Dienstport.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 2 von 10

Eine Schnittstelle zeigt inet 192.168.8.44/24 brd 192.168.8.255. Für welche Information wird weiterhin die Routenausgabe benötigt?
  1. Die konfigurierte IPv4-Adresse der Schnittstelle.
  2. Das Standardgateway für Verkehr in andere Netzwerke.
  3. Die Broadcast-Adresse ihres lokalen Netzwerks.
  4. Die Anzahl führender Netzwerkpräfixbits.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 3 von 10

ss zeigt einen lauschenden TCP-Socket unter 127.0.0.1:8080. Wer kann sich mit dieser lauschenden Adresse verbinden?
  1. Jedes Gerät im lokalen Netzwerk.
  2. Nur das lokale Standardgateway.
  3. Jeder Host, der den DNS-Namen kennt.
  4. Programme auf demselben Rechner.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 4 von 10

Eine mit ip hinzugefügte temporäre Adresse verschwindet nach dem Neustart. Wie solltest du die vorgesehene Adresse dauerhaft einrichten?
  1. Sie über den aktiven Netzwerkmanager speichern.
  2. Den ip-Befehl ohne Präfix wiederholen.
  3. Die Adresse nur zu /etc/hosts hinzufügen.
  4. Die MAC-Adresse der Schnittstelle passend ändern.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 5 von 10

Ein Host hat 192.168.12.70/26 mit einer passenden Route für das direkt verbundene Netzwerk. Welches Ziel liegt in demselben Subnetz?
  1. 192.168.12.20
  2. 192.168.12.130
  3. 192.168.12.100
  4. 192.168.13.70
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 6 von 10

Ping gibt die aufgelöste Adresse für portal.example.com aus, erhält aber keine Echoantworten. Was solltest du als Nächstes untersuchen?
  1. Einen sicheren Fehler bei der Namensauflösung.
  2. Die Erreichbarkeit oder Filterung von ICMP-Antworten.
  3. Einen fehlenden Eintrag in der lokalen Hostnamendatei.
  4. Eine automatische Notwendigkeit, den DNS-Eintrag zu ersetzen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 7 von 10

Ein IPv6-Host erhält eine Adresse und DNS-Server über DHCPv6. Was liefert seine Informationen zum Standardrouter?
  1. IPv6-Routerankündigungen.
  2. Die DHCPv6-Standardgatewayoption.
  3. Der Resolver in resolv.conf.
  4. Das Gateway des DHCPv4-Leases.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 8 von 10

An einer Konsole fügst du einer zuvor unadressierten Schnittstelle 192.168.90.25 ohne Präfix hinzu und aktivierst sie. Ein anderer Teilnehmer hat 192.168.90.30/24; es existieren keine weiteren Routen. Warum kann der lokale Host diesen Teilnehmer nicht normal erreichen?
  1. Seine Standardroute fehlt, die jeder Austausch im selben Subnetz benötigt.
  2. Der andere Teilnehmer hat das falsche Präfix /24; beide Endpunkte müssen stattdessen /32 nutzen.
  3. Dem anderen Teilnehmer fehlt eine Rückroute, weil der Sender eine /32-Adresse hat.
  4. Seine lokale Subnetzroute fehlt, weil die neue Adresse /32 erhielt.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 9 von 10

Ein Client hat nur eine Route zum direkt verbundenen Netzwerk 192.168.6.0/24. Sein vorgesehener Server ist 192.168.7.40. Auf diesem Server funktioniert der Webdienst lokal, lauscht aber nur auf 127.0.0.1:80. Welches Maßnahmenpaar behebt beide nachgewiesenen Hindernisse?
  1. Nur DNS für den Client bereitstellen und den Dienst nur auf Loopback lauschen lassen.
  2. Eine Route vom Client bereitstellen und den Dienst an einer Netzwerkadresse lauschen lassen.
  3. Die Route des Clients zum direkt verbundenen Netzwerk entfernen und den Dienst unverändert lassen.
  4. Die Routen des Clients beibehalten und öffentliches DNS die Loopback-Adresse zurückgeben lassen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 10 von 10

Ein Host hat 192.168.55.130/26 und erreicht Teilnehmer im selben Subnetz. Sein gespeichertes Profil wählt das Gateway 192.168.55.1, aber der vorgesehene lokale Router ist 192.168.55.129. Es gelten keine anderen Routen. Welche dauerhafte Korrektur passt zur Adressierung?
  1. Gateway 192.168.55.1 behalten und das Präfix des Hosts durch /32 ersetzen.
  2. 192.168.55.129 zur hosts-Datei hinzufügen und das gespeicherte Gateway beibehalten.
  3. Gateway 192.168.55.129 im aktiven Netzwerkprofil speichern und es anwenden.
  4. Gateway 192.168.55.129 temporär mit ip hinzufügen und das Profil unverändert lassen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Set 5: DNS-Wege und Hinweise zu entfernten Verbindungen vergleichen10 Übungsfragen

Speichere diese Einheit, um jede Antwort zu sehen und jedes Set zu üben.

Frage 1 von 10

Welcher DNS-Eintragstyp liefert eine IPv6-Adresse für einen Namen?
  1. A.
  2. AAAA.
  3. PTR.
  4. CNAME.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 2 von 10

resolv.conf nennt auf einem System mit systemd-resolved 127.0.0.53. Wie kannst du die tatsächlichen vorgelagerten DNS-Server sehen?
  1. Den Stub durch 127.0.0.1 ersetzen.
  2. hostnamectl set-hostname ausführen.
  3. Das Broadcast-Feld der Standardroute lesen.
  4. resolvectl status ausführen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 3 von 10

Ein Eintrag hatte beim Zwischenspeichern die TTL 1800. Er ändert sich 5 Minuten später. Warum könnte ein Client unmittelbar danach noch die alte Adresse erhalten?
  1. Die früher gespeicherte Antwort kann noch innerhalb ihrer TTL liegen.
  2. Der Eintrag muss bis zum nächsten Neustart unverändert bleiben.
  3. Der Client muss für jede geänderte Adresse einen CNAME verwenden.
  4. Die TTL weist DNS an, die alte Adresse dauerhaft zu behalten.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 4 von 10

Ein SSH-Client erhält Permission denied (publickey). In welcher Phase ist dieser Versuch fehlgeschlagen?
  1. Beim Routing der IP-Adresse.
  2. Beim Verbinden mit dem TCP-Port.
  3. Bei der Benutzerauthentifizierung.
  4. Bei der Übertragung des Dateiinhalts.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 5 von 10

Die Suchreihenfolge ist files dns. Ein lokaler hosts-Eintrag ordnet docs.example.com einer alten Adresse zu. Eine Abfrage an den ausdrücklich ausgewählten autoritativen DNS-Server gibt die neue Adresse zurück. Welcher Vergleich erklärt das alte Ziel einer Anwendung?
  1. getent ignoriert die lokale Zuordnung, während die direkte Abfrage sie zuerst lädt.
  2. Beide Tests müssen die DNS-Antwort liefern, weil deren TTL kürzer ist.
  3. getent folgt der lokalen Zuordnung, während die direkte DNS-Abfrage sie umgeht.
  4. Die direkte Abfrage aktualisiert /etc/hosts und repariert spätere Anwendungsabfragen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 6 von 10

Eine Abfrage an den konfigurierten DNS-Server gibt NXDOMAIN zurück. Was unterscheidet dieses Ergebnis von einer Zeitüberschreitung?
  1. Der Server antwortete, dass der abgefragte Name nicht existiert.
  2. Die Abfrage erhielt vor Ablauf ihrer Frist keine Antwort.
  3. Der Server lieferte eine Adresse, aber der Host blockierte ping.
  4. Der Client konnte nicht starten, weil seine Schnittstelle deaktiviert war.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 7 von 10

Tests mit externen IP-Adressen funktionieren. Eine direkte DNS-Abfrage an den konfigurierten Server gibt für einen Namen SERVFAIL zurück, während ein anderer bekannter Resolver eine Adresse zurückgibt. Welche Schlussfolgerung ist am besten belegt?
  1. Der gesamte DNS-Verkehr wird von der lokalen Firewall blockiert.
  2. Der Host hat überhaupt keine funktionierende Standardroute.
  3. Der Name existiert auf keinem DNS-Server.
  4. Untersuche den Fehler des konfigurierten Resolvers für diesen Namen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 8 von 10

Eine SSH-Verbindung über eine Adresse endet mit einer Zeitüberschreitung. Die Serverkonsole zeigt, dass sshd auf 0.0.0.0:22 lauscht, sowie eine geeignete Adresse und Route. Welche Hinweise solltest du als Nächstes prüfen, bevor du Benutzerschlüssel änderst?
  1. Den authorized_keys-Kommentar zur Bezeichnung des Clientschlüssels.
  2. Filterregeln des Hosts und der Cloud für den Weg des Clients zu Port 22.
  3. Den Shellverlauf des Zielbenutzers und seine gespeicherten Befehle.
  4. Das DNS-Suchsuffix des Servers für seinen eigenen Kurznamen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 9 von 10

Du benennst einen Debian-Rechner mit hostnamectl um. Danach warnt sudo, dass es den neuen lokalen Namen nicht auflösen kann. Welche lokale Einstellung solltest du vergleichen?
  1. Den in known_hosts gespeicherten SSH-Port.
  2. Die Dateisystem-UUID in /etc/fstab.
  3. Die IPv6-Verkürzung in /proc/uptime.
  4. Die Hostnamenzuordnung in /etc/hosts.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 10 von 10

Für vault.home.arpa existiert ein hosts-Eintrag. Sowohl dig ohne ausdrücklichen Server als auch getent hosts geben ihn zurück; resolv.conf zeigt auf den Stub von systemd-resolved. Warum passt das zusammen?
  1. Der Stub kann DNS-Abfragen mit seinen Daten aus der hosts-Datei beantworten.
  2. Dig wertet jede in nsswitch.conf genannte Datei direkt aus.
  3. Der hosts-Eintrag wurde automatisch im öffentlichen DNS veröffentlicht.
  4. Getent überspringt immer lokale Dateien, wenn der Stub aktiviert ist.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Set 6: SSH-Schlüssel einrichten und den Zugriff sicher diagnostizieren10 Übungsfragen

Speichere diese Einheit, um jede Antwort zu sehen und jedes Set zu üben.

Frage 1 von 10

Welche Schlüsseldatei sollte in der authorized_keys des entfernten Kontos installiert werden?
  1. Der private Schlüssel des Clients.
  2. Der private Schlüssel des Servers.
  3. Die gespeicherten Host-Fingerabdrücke.
  4. Der öffentliche Schlüssel des Clients.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 2 von 10

Ein scp-Upload muss Port 2207 verwenden. Welcher Befehl hat die richtige Portoption und die richtige Syntax für den entfernten Pfad?
  1. scp -P 2207 log.txt aya@node.example.com/home/aya/
  2. scp -P 2207 aya@node.example.com:/home/aya/log.txt .
  3. scp -P 2207 log.txt aya@node.example.com:/home/aya/
  4. scp -P 2207 log.txt /home/aya/
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 3 von 10

Der richtige öffentliche Schlüssel ist für den Benutzer deploy installiert, aber du verbindest dich mit diesem Schlüssel als root und erhältst eine Zugriffsverweigerung. Was solltest du zuerst versuchen?
  1. Den privaten Schlüssel in das Home-Verzeichnis von root kopieren.
  2. Dich mit demselben Clientschlüssel als deploy verbinden.
  3. Die Serveridentität aus known_hosts löschen.
  4. Den Modus der öffentlichen Schlüsseldatei auf 777 ändern.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 4 von 10

Eine global eingebundene Datei setzt PasswordAuthentication yes, bevor die Hauptdatei später no setzt. Es gibt keine Match-Blöcke. Nach dem Neuladen funktionieren Passwortanmeldungen weiterhin. Was solltest du untersuchen und korrigieren?
  1. Die wirksame Einstellung und ihr erstes maßgebliches Vorkommen.
  2. Die known_hosts-Rechte und den gespeicherten Kommentar des Clients.
  3. Die letzte Zeile der Hauptdatei, indem du denselben no-Wert erneut hinzufügst.
  4. Die lauschende Adresse, indem du alle IPv4-Adressen durch Loopback ersetzt.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 5 von 10

Ein neu aufgesetzter Server legt einen neuen Hostschlüssel vor. Der Administrator übermittelt dessen Fingerabdruck über einen vertrauenswürdigen Kanal. Welche Reihenfolge stellt den vertrauenswürdigen Zugriff wieder her?
  1. Den alten Eintrag entfernen und beim erneuten Verbinden jeden angebotenen Schlüssel annehmen.
  2. Deinen privaten Benutzerschlüssel auf den Server kopieren und dich erneut verbinden.
  3. Die Hostschlüsselprüfung deaktivieren und prüfen, ob das Passwort noch funktioniert.
  4. Den Fingerabdruck vergleichen, dann den alten Eintrag entfernen und dich erneut verbinden.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 6 von 10

Die Schlüsselanmeldung für das richtige Konto schlägt fehl. Dessen öffentlicher Schlüssel ist installiert, sshd verwendet strenge Rechteprüfungen und das .ssh-Verzeichnis auf dem Server ist für jeden Benutzer beschreibbar. Der Client bietet den passenden Schlüssel an. Welche Korrektur passt zu den Hinweisen?
  1. Die known_hosts des Clients für alle beschreibbar machen und die Verbindung erneut versuchen.
  2. Einen neuen Schlüssel erzeugen und dasselbe beschreibbare Autorisierungsverzeichnis behalten.
  3. .ssh auf dem Server auf 700 beschränken und Eigentümer sowie übergeordneten Pfad prüfen.
  4. Die Standardroute des Servers ändern und die offenen Rechte beibehalten.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 7 von 10

Welcher Test prüft die Syntax der sshd-Konfiguration, bevor du den Dienst neu lädst?
  1. sudo sshd -t
  2. sudo systemctl reload sshd
  3. sudo ssh -v node.example.com
  4. sudo systemctl enable sshd
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 8 von 10

Schlüssel funktionieren bereits. Die wirksame Serverkonfiguration deaktiviert PasswordAuthentication, lässt aber KbdInteractiveAuthentication aktiviert und enthält keine Einschränkung durch AuthenticationMethods. Die Richtlinie verlangt ausschließlich die Anmeldung mit öffentlichem Schlüssel. Welche Änderung vervollständigt sie?
  1. Die tastaturinteraktive Authentifizierung beibehalten und den Dienst auf einen anderen Port verlegen.
  2. Die tastaturinteraktive Authentifizierung deaktivieren und publickey-Authentifizierung verlangen.
  3. Die Passwortauthentifizierung aktivieren und nur das Root-Konto einschränken.
  4. Die Methoden unverändert lassen und Benutzerschlüssel nach der Anmeldung entfernen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 9 von 10

Der Schlüssel eines verlorenen Laptops autorisiert Konto A auf Server One und Konto B auf Server Two. Beide Konten autorisieren außerdem einen separaten CI-Schlüssel, der weiterhin funktionieren muss. Wie solltest du nur dem verlorenen Laptop den Zugang entziehen und dabei den CI-Zugriff und die Server-Vertrauenseinträge erhalten?
  1. Die gesamten authorized_keys-Dateien beider Konten löschen; den privaten CI-Schlüssel und known_hosts behalten.
  2. Die Zeile des öffentlichen Laptop-Schlüssels aus beiden Konten entfernen; die CI-Zeilen und known_hosts behalten.
  3. Die Laptop-Zeile nur auf Server One entfernen; den gespeicherten Host-Fingerabdruck von Server Two ersetzen.
  4. Beide authorized_keys-Dateien behalten; die Serveridentitäten des Laptops aus known_hosts entfernen.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Frage 10 von 10

Eine bestehende SSH-Sitzung überdauert ein Neuladen nach einer Änderung der Anmeldebeschränkungen. Du hast keine weitere Verbindung geöffnet. Was muss geschehen, bevor du die funktionierende Sitzung schließt?
  1. Eine neue Anmeldung mit den neuen wirksamen Einstellungen testen.
  2. Die fortbestehende Sitzung als Beweis für funktionierende neue Anmeldungen werten.
  3. Das Netzwerk neu starten, damit sich die alte Sitzung erneut verbindet.
  4. Den autorisierten Schlüssel löschen und prüfen, ob die Sitzung endet.
Antwort zeigenAntwort ausblenden

Speichere diese Einheit, um diese Antwort zu sehen.

Hängst du bei deiner eigenen Aufgabe fest? Hausaufgabenhilfe

Schlüsselbegriffe

94 Schlüsselbegriffe, jeweils mit Definition

A

Anwendungszustand
Anwendungszustand sind Daten, die ein Programm zwischen Ausführungen aufbewahrt, etwa Datenbanken und Paketeinträge, die häufig unter /var/lib gespeichert werden.
Ein großes Verzeichnis unter /var/lib kann eine aktive Datenbank enthalten. Untersuche daher vor der Bereinigung, wem es gehört.
Archiviertes Journal
Ein archiviertes Journal ist eine Journaldatei, die für neue Einträge nicht mehr aktiv ist und daher bei der Journal-Bereinigung nach Aufbewahrungsregeln entfernt werden kann.
Eine Größenbegrenzung für die Bereinigung kann die gesamte Journalbelegung darüber lassen, weil aktive Dateien bestehen bleiben.
Aushängen
Beim Aushängen wird ein Dateisystem von seinem Platz im Verzeichnisbaum gelöst, nachdem ausstehende Schreibvorgänge verarbeitet wurden und aktuelle Nutzer es freigegeben haben.
Eine Shell muss /mnt/usb verlassen, bevor diese Einhängung ohne Fehler wegen eines belegten Ziels gelöst werden kann.
Auslagerungsspeicher
Auslagerungsspeicher ist Platz auf einem Datenträger in einer Datei oder Partition, den der Kernel zur Unterstützung des Arbeitsspeichers nutzen kann, statt dort gewöhnliche Benutzerdateien bereitzustellen.
Ein Eintrag mit dem Dateisystemtyp swap wird als Auslagerungsspeicher aktiviert, statt für Dokumente eingehängt zu werden.
authorized_keys
Die Datei authorized_keys listet öffentliche Schlüssel auf, die sich bei einem Serverkonto anmelden dürfen, üblicherweise einen autorisierten Schlüssel pro Zeile.
Das Entfernen des bekannt gewordenen Schlüssels eines Geräts aus einem Konto entzieht ihm nicht den Zugriff auf einem anderen Server.

B

Blockgerät
Ein Blockgerät ist eine Kernelschnittstelle für Speicher, auf den in adressierbaren Blöcken zugegriffen wird. Es wird durch einen Pfad wie /dev/sda1 dargestellt.
Das b am Anfang einer Geräteauflistung unterscheidet eine Datenträgerpartition von einer regulären Datei.
Broadcast-Adresse
Eine IPv4-Broadcast-Adresse richtet sich an die Hosts des lokalen Subnetzes als Gruppe und ist normalerweise die letzte Adresse eines gewöhnlichen Subnetzes.
Der brd-Wert in ip addr ist nicht die Routeradresse, die du als Standardgateway einträgst.

D

Dateisystem
Ein Dateisystem organisiert Dateien und Verzeichnisse innerhalb eines Speicherbereichs und bestimmt Eigenschaften wie Dateigrößenbegrenzungen und Unterstützung für Eigentümerzuordnungen.
Eine FAT32-Partition kann freien Speicherplatz haben und dennoch eine einzelne Datei ablehnen, die 4 GiB erreicht.
Datenträger
Ein Datenträger ist ein physisches oder virtuelles Speichergerät, das Linux als Blockgerät bereitstellt und das eine oder mehrere Partitionen enthalten kann.
Ein NVMe-Laufwerk kann separate Partitionen für Startdateien und das Wurzeldateisystem enthalten.
DHCP
DHCP für IPv4 überlässt Hosts zeitlich begrenzt eine Netzwerkkonfiguration, darunter eine Adresse, ein Präfix, ein Standardgateway und Informationen zu DNS-Servern.
Eine dynamisch zugewiesene IPv4-Adresse kann in der Ausgabe von ip addr eine verbleibende Leasedauer anzeigen.
Dienstport
Ein Dienstport ist eine Nummer der Transportschicht, die zusammen mit einer Adresse den Endpunkt eines Netzwerkdienstes bezeichnet, etwa TCP-Port 22 für SSH.
DNS verwendet normalerweise Port 53. Dass ein anderer Dienst erreichbar ist, testet daher für sich genommen keinen DNS-Verkehr.
DNS
Das Domain Name System ist eine verteilte hierarchische Datenbank, die Einträge zu Namen bereitstellt, darunter Adressen und Mailserverinformationen.
Eine Anwendung kann einen vollständigen Domainnamen auflösen, bevor sie eine Verbindung zur zurückgegebenen Adresse öffnet.
DNS-Zeitüberschreitung
Eine DNS-Zeitüberschreitung tritt auf, wenn innerhalb der Wartezeit einer Abfrage keine brauchbare Antwort eintrifft. Als Ursachen sind dann Server und Netzwerkpfad zu untersuchen.
Eine Zeitüberschreitung unterscheidet sich von NXDOMAIN, da Letzteres eine tatsächliche negative Antwort eines Servers ist.

E

Eingebundene Konfiguration
Eine eingebundene Konfigurationsdatei steuert Einstellungen an der Stelle bei, an der die Hauptdatei sie einliest. Daher können frühere Werte die meisten sshd-Anweisungen bestimmen.
Prüfe sshd -T, wenn ein früher eingebundener yes-Wert eine spätere no-Einstellung scheinbar außer Kraft setzt.
Einhängeoption
Eine Einhängeoption legt das Verhalten eines eingehängten Dateisystems fest, etwa Schreibzugriff, direkte Ausführung oder angezeigte Eigentümerzuordnung.
Eine FAT-Einhängung kann uid und gid verwenden, um ihre Dateien als Eigentum des vorgesehenen Benutzers anzuzeigen.
Einhängepunkt
Ein Einhängepunkt ist das Verzeichnis, an dem ein Dateisystem in den Linux-Baum eingehängt wird, sodass sein Inhalt über Pfade zugänglich ist.
Nach dem Einhängen eines USB-Laufwerks unter /mnt/usb erscheint eine Datei darauf unterhalb dieses Verzeichnisses.

F

Filesystem Hierarchy Standard
Der Filesystem Hierarchy Standard beschreibt die üblichen Speicherorte für Linux-Software, Konfiguration, Benutzerdateien und veränderliche Daten.
Der Standard hilft dir vorherzusagen, dass die veränderlichen Protokolle eines Dienstes nach /var/log gehören.
Fingerabdruck
Ein Schlüsselfingerabdruck ist eine kompakte Darstellung eines öffentlichen Schlüssels, mit der geprüft wird, ob zwei Angaben zu einem Server- oder Benutzerschlüssel übereinstimmen.
Ein geprüfter Fingerabdruck ermöglicht es, einen rechtmäßigen neuen Hostschlüssel von einem unbekannten zu unterscheiden.
fstab
Die fstab-Datei ist die Systemtabelle für Dateisystemeinhängungen und Auslagerungsbereiche. Sie beschreibt das Startverhalten mit sechs Feldern pro Eintrag.
Ein neues Datendateisystem benötigt einen Eintrag in /etc/fstab, wenn es beim Systemstart wieder eingehängt werden soll.

G

Gelöschte, noch geöffnete Datei
Eine gelöschte, noch geöffnete Datei hat ihren Verzeichnisnamen verloren, wird aber von einem laufenden Prozess weiterhin geöffnet gehalten, sodass ihr Speicherplatz noch nicht vollständig freigegeben werden kann.
lsof +L1 kann ein entferntes laufendes Protokoll identifizieren, das ein Dateisystem weiterhin gefüllt hält.
Gibibyte
Ein Gibibyte ist eine binäre Speichereinheit mit 1.073.741.824 Byte, die menschenlesbare Linux-Speicherwerkzeuge häufig als G anzeigen.
Ein in dezimalen GB beworbenes Laufwerk zeigt einen kleineren Zahlenwert, wenn lsblk die Größe in GiB anzeigt.
GPT
GPT ist ein mit UEFI verbundenes Partitionstabellenformat, das große Datenträger unterstützt und üblicherweise Platz für 128 Partitionseinträge bietet.
Ein Laufwerk kann GPT für seine Partitionstabelle und ext4 innerhalb einer dieser Partitionen verwenden.
Gültigkeitsdauer
Die Gültigkeitsdauer eines DNS-Eintrags gibt in Sekunden an, wie lange eine zwischengespeicherte Antwort bestehen bleibt, bevor sie erneut aus dem Namensauflösungssystem bezogen werden muss.
Nach einer Änderung des Eintrags auf dem Server kann eine ältere Antwort noch im nicht abgelaufenen Cache eines Clients stehen.

H

Hardlink
Ein Hardlink ist ein weiterer Verzeichniseintrag, der denselben Inode und dieselben Dateidaten auf einem Dateisystem bezeichnet, ohne dass es einen besonderen ursprünglichen Namen gibt.
Wird einer von mehreren über Hardlinks verbundenen Dateinamen gelöscht, kann über den anderen die Datei weiterhin gelesen und geändert werden.
Home-Verzeichnis
Ein Home-Verzeichnis ist das persönliche Verzeichnis eines Kontos für Dateien und Einstellungen. Bei regulären Benutzern liegt es normalerweise unter /home.
Die Shell expandiert ~ zu deinem Home-Verzeichnis, wo versteckte Einträge deine persönlichen Anwendungseinstellungen enthalten können.
hosts-Datei
Eine hosts-Datei ist eine lokale statische Tabelle, die IP-Adressen Namen und Aliasnamen zuordnet und bei der Linux-Systemabfrage häufig vor DNS geprüft wird.
Ein alter Eintrag in /etc/hosts kann allein deinen Rechner zum früheren Server einer Website leiten.
Hostschlüssel
Ein SSH-Hostschlüssel identifiziert den Server gegenüber Clients. Damit können sie denselben Server wiedererkennen und einen unerwarteten Austausch feststellen.
Vergleiche einen Fingerabdruck beim ersten Kontakt über einen vertrauenswürdigen Kanal, bevor du die Serveridentität akzeptierst.

I

ICMP-Echo
Ein ICMP-Echo ist der Anfrage- und Antwortmechanismus, mit dem ping prüft, ob ein Ziel antwortet, und die Umlaufzeit misst.
Eine Firewall kann ping filtern und zugleich Antworten des HTTPS-Dienstes desselben Rechners erlauben.
Inode
Ein Inode ist ein Dateisystemeintrag für eine Datei oder ein Verzeichnis; über Hardlinks verbundene Dateinamen teilen sich den Eintrag ihrer zugrunde liegenden Datei.
Millionen kleiner Cache-Dateien können den Inode-Vorrat von ext4 aufbrauchen und dabei wenig Datenspeicherplatz belegen.
Inode-Erschöpfung
Inode-Erschöpfung tritt ein, wenn keine freien Dateieinträge mehr vorhanden sind. Dann können keine neuen Dateien erstellt werden, obwohl das Dateisystem noch freie Datenblöcke haben kann.
Ein IFree-Wert von null erklärt, warum das Erstellen einer neuen Datei trotz Gigabytes in der Spalte Avail fehlschlägt.
IP-Adresse
Eine IP-Adresse ist eine logische Netzwerkadresse, die eine Schnittstelle oder einen Zielhost bezeichnet und im IPv4- oder IPv6-Format vorliegt.
Eine Ethernet-Schnittstelle kann gleichzeitig eine IPv4-Adresse und mehrere IPv6-Adressen haben.

K

known_hosts
Die Datei known_hosts speichert vertrauenswürdige SSH-Serverschlüssel auf dem Client, sodass spätere Verbindungen die vorgelegte Identität des Servers prüfen können.
Eine Hostschlüsselwarnung bedeutet, dass der neue Serverschlüssel vom gespeicherten Eintrag für dieses Ziel abweicht.

L

Lauschender Socket
Ein lauschender Socket ist ein Dienstendpunkt, der an einer lokalen Adresse und einem Port auf eingehenden Datenverkehr wartet und mit Werkzeugen wie ss sichtbar ist.
Ein lauschender Socket unter 127.0.0.1:8080 nimmt lokalen Datenverkehr an, ist aber nicht an die LAN-Adresse des Servers gebunden.
Linkanzahl
Die Linkanzahl gibt an, wie viele über Hardlinks verbundene Verzeichniseinträge eine Datei bezeichnen. Sie erscheint nahe dem Anfang einer ls -l-Auflistung.
Das Erstellen eines zweiten Hardlinks auf eine reguläre Datei erhöht ihre angezeigte Linkanzahl auf zwei.
Logische Dateigröße
Die logische Dateigröße ist die Länge einer Datei in Byte aus Sicht lesender Programme. Sie kann von den tatsächlich zugewiesenen Speicherblöcken abweichen.
Ein Sparse-Abbild eines virtuellen Datenträgers kann in ls -l eine große Länge melden, aber viel weniger Speicherplatz belegen.
Loopback
Loopback ist der interne Netzwerkweg eines Hosts zu sich selbst, der bei IPv4 üblicherweise über 127.0.0.1 und bei IPv6 über ::1 erreicht wird.
Ein Browser auf einem anderen Rechner kann nicht dessen eigene Loopback-Adresse verwenden, um deinen Server zu erreichen.

M

MAC-Adresse
Eine MAC-Adresse ist die 48-Bit-Adresse, die Ethernet- und WLAN-Schnittstellen für die Zustellung über eine lokale Verbindung verwenden. Sie wird als hexadezimale Paare geschrieben.
Ein Eintrag in der Nachbartabelle ordnet der lokalen IP-Adresse des Gateways dessen MAC-Adresse zu.
Major- und Minor-Nummern
Major- und Minor-Nummern identifizieren für den Kernel den Treiber und das konkrete Gerät und ersetzen in Geräteauflistungen das Größenfeld.
Eine Auflistung mit 8, 1 an der Größenposition beschreibt ein Gerät, keine acht Byte große Datei.
MBR
MBR ist ein älteres Partitionstabellenformat mit vier primären Plätzen und einer Adressierungsgrenze von 2 TiB, wenn der Datenträger 512-Byte-Sektoren verwendet.
Ein primärer MBR-Platz kann eine erweiterte Partition mit zusätzlichen logischen Partitionen enthalten.
mktemp
Der Befehl mktemp erstellt eine private temporäre Datei oder ein privates temporäres Verzeichnis mit eindeutigem Namen und gibt den Pfad zur weiteren Verwendung aus.
Ein Skript bewahrt den ausgegebenen Pfad auf, damit spätere Befehle mit der tatsächlich erstellten Datei arbeiten.

N

Nachbartabelle
Eine Nachbartabelle enthält ermittelte Informationen zum Erreichen lokaler IP-Nachbarn, darunter Zuordnungen von IP- zu MAC-Adressen in Ethernet-Netzwerken.
Ein fehlgeschlagener Gateway-Eintrag in ip neigh lenkt die Aufmerksamkeit auf die Kommunikation über die lokale Verbindung.
Name Service Switch
Der Name Service Switch wählt Quellen und Abfrageverhalten für Systemdatenbanken aus. Die Hostnamenabfrage wird durch die hosts-Zeile in nsswitch.conf konfiguriert.
Die Einstellung hosts: files dns prüft die lokale hosts-Datei, bevor DNS nach einem passenden Namen gefragt wird.
Nameserver
Ein Nameserver ist ein Server, der DNS-Abfragen beantwortet; die Clientkonfiguration legt fest, welche DNS-Server der Resolver kontaktieren soll.
dig @192.168.1.1 example.com A fragt ausdrücklich diesen Server nach dem IPv4-Eintrag des Namens.
Netplan
Netplan ist ein Linux-Netzwerkkonfigurationssystem, das Einstellungen in YAML-Dateien beschreibt und durch einen darunterliegenden Netzwerkdienst anwenden lässt.
Unter Ubuntu bietet netplan try beim Testen einer Änderung, die den Zugriff unterbrechen könnte, ein Rücksetzfenster.
NetworkManager-Profil
Ein NetworkManager-Profil ist ein gespeicherter Satz von Verbindungseinstellungen, den der Dienst aktivieren und bei Netzwerkänderungen und Systemstarts wiederherstellen kann.
Ändere die von nmcli device status angezeigte Verbindung anhand ihres Namens und aktiviere dann das Profil.
Netzwerkschnittstelle
Eine Netzwerkschnittstelle ist ein physischer oder virtueller Verbindungspunkt, über den der Kernel Datenverkehr sendet und empfängt; dazu gehört auch Loopback.
ip -br addr listet Ethernet-, WLAN-, Loopback- und virtuelle Schnittstellen mit ihren Adressen auf.
Neuladen des Dienstes
Beim Neuladen wird ein laufender Dienst aufgefordert, seine Konfiguration erneut einzulesen. So kann sshd die Richtlinie für neue Anmeldungen ändern und bestehende Sitzungen erhalten.
Öffne nach dem Neuladen von SSH eine neue Verbindung, bevor du deine noch funktionierende Wiederherstellungssitzung schließt.
noauto
Die Option noauto schließt einen Eintrag vom automatischen Einhängen beim Systemstart und von mount -a aus, lässt aber ausdrückliches Einhängen zu.
Teste einen noauto-Eintrag mit sudo mount /archive, statt zu erwarten, dass mount -a ihn einhängt.
noexec
Die Option noexec verhindert die direkte Ausführung von Dateien aus einem eingehängten Dateisystem, hindert einen Interpreter aber nicht daran, dort ein Skript zu lesen.
Ein lesbares Shellskript auf diesem eingehängten Dateisystem kann weiterhin ausdrücklich an bash übergeben werden.
nofail
Die Option nofail erlaubt die Fortsetzung des Systemstarts, wenn ein optionales Quellgerät nicht eingehängt werden kann. Sie eignet sich für Wechsel- oder zusätzliche Laufwerke.
Ein fehlendes Sicherungslaufwerk sollte den Systemstart nicht anhalten, wenn sein fstab-Eintrag mit nofail versehen ist.
NXDOMAIN
NXDOMAIN ist eine DNS-Antwort, die besagt, dass der abgefragte Domainname nicht existiert. Sie unterscheidet eine negative Antwort von einer ausbleibenden Antwort.
Prüfe die Schreibweise, wenn der gewählte DNS-Server für einen Namen, den er deiner Erwartung nach kennen sollte, NXDOMAIN zurückgibt.

Ö

Öffentlicher Schlüssel
Ein öffentlicher Schlüssel ist die teilbare Hälfte eines Schlüsselpaars. Er wird in einem Serverkonto installiert, um die Authentifizierung mit dem passenden privaten Schlüssel zu autorisieren.
Die Datei mit der Endung .pub kann zur authorized_keys des vorgesehenen entfernten Kontos hinzugefügt werden.

P

Partition
Eine Partition ist ein festgelegter Bereich eines Datenträgers, der als separate Speichereinheit behandelt wird und dessen Grenzen in einer Partitionstabelle festgehalten sind.
Die Endung p2 in /dev/nvme0n1p2 wählt eine Partition statt des gesamten NVMe-Geräts.
Partitionstabelle
Eine Partitionstabelle hält die Positionen und Größen der Partitionen eines Datenträgers fest; GPT und MBR sind zwei häufige Tabellenformate.
sudo fdisk -l zeigt sowohl den Tabellentyp als auch den Start- und Endsektor jeder Partition.
Passphrase
Eine Schlüssel-Passphrase verschlüsselt die gespeicherte private Schlüsseldatei und schützt vor deren Nutzung, wenn jemand die Datei erhält und die Passphrase nicht kennt.
Eine Abfrage der Schlüssel-Passphrase entsperrt den lokalen Schlüssel, statt das Passwort des entfernten Kontos zu ändern.
Präfixlänge
Eine Präfixlänge zählt die führenden Bits, die ein IP-Netzwerk bezeichnen. Die übrigen Adressbits unterscheiden Ziele innerhalb dieses Netzwerks.
Das /26 in einer IPv4-Adresse lässt sechs Adressbits übrig und ergibt 64 Adressen in diesem Subnetz.
Privater Schlüssel
Ein privater Schlüssel ist die geheime Hälfte eines Schlüsselpaars. Er bleibt auf dem Client, um die Identität kryptografisch nachzuweisen, ohne den Schlüssel selbst zu senden.
Schütze id_ed25519 mit Modus 600, damit andere reguläre Benutzer ihn nicht lesen können.
procfs
Procfs ist das normalerweise unter /proc eingehängte virtuelle Dateisystem, in dem der Kernel auf Anfrage aktuelle Prozess- und Systeminformationen bereitstellt.
Das Lesen von /proc/uptime gibt aktuelle Zeitwerte zurück, obwohl es sich nicht um eine gewöhnliche gespeicherte Textdatei handelt.
Prüfreihenfolge der Dateisysteme
Die Prüfreihenfolge der Dateisysteme steht im sechsten fstab-Feld: normalerweise 1 für das Wurzeldateisystem, 2 für andere geprüfte Dateisysteme und 0 zum Überspringen einer Prüfung.
Ein ext4-Dateneintrag endet häufig mit 0 2: kein Dump-Sicherungskennzeichen, gefolgt von einer Prüfreihenfolge für ein anderes Dateisystem als das Wurzeldateisystem.
Pseudogerät
Ein Pseudogerät ist eine Gerätedateischnittstelle, die ein Softwareverhalten bereitstellt, etwa das Verwerfen von Daten oder das Erzeugen von Nullbytes.
/dev/zero kann die Eingabe liefern, wenn ein reguläres, mit Nullen gefülltes Testabbild erstellt wird.

R

Relativer Zielpfad
Ein relativer Zielpfad ist ein Pfad in einem symbolischen Link, der vom Verzeichnis aus interpretiert wird, das den Link enthält, statt von der Wurzel des Dateisystems.
Wird ein Link in ein anderes Verzeichnis verschoben, kann sich ändern, wohin sein relativer Zielpfad zeigt.
Reservierte Blöcke
Reservierte Blöcke sind Dateisystemblöcke, die für privilegierte Nutzung zurückgehalten werden, bei ext4 häufig 5 %, damit wichtige Dienste weiterarbeiten können, wenn Benutzer den Speicher füllen.
Ungenutzte reservierte Blöcke verringern den für reguläre Benutzer verfügbaren Speicherplatz, ohne zu belegten Dateidaten zu werden.
Resolver
Ein Resolver ist der clientseitige Mechanismus zur Namensabfrage, der konfigurierte Quellen und Dienste heranzieht, um Namen in nutzbare Ergebnisse aufzulösen.
Der Resolver kann Daten aus der lokalen hosts-Datei verwenden, bevor er eine Anfrage an einen rekursiven DNS-Server sendet.
Routingtabelle
Eine Routingtabelle enthält Regeln zum Erreichen von Zielnetzwerken, darunter direkt verbundene Wege und etwaige konfigurierte Standardrouten.
ip route get 203.0.113.18 zeigt, welche Route Linux für dieses Ziel wählen würde.
rsync
Das Programm rsync synchronisiert Dateien und Verzeichnisse, häufig über SSH, und verringert wiederholte Übertragungen, indem es geänderte Inhalte sendet.
Eine wiederholte Kopie eines Website-Verzeichnisses nutzt rsync, das sowohl auf dem Client als auch auf dem Server installiert ist.

S

Schreibgeschütztes Einhängen
Eine schreibgeschützte Einhängung verhindert gewöhnliche Schreibzugriffe auf Dateien über diese Einhängung, obwohl das Einhängen selbst das zugrunde liegende Gerät noch ändern kann.
Verwende die Option ro, wenn du ein Dateisystem ohne gewöhnliche Schreibzugriffe von Anwendungen untersuchen möchtest.
scp
Das Programm scp überträgt Dateien über SSH. Ein entfernter Pfad wird als USER@HOST:PATH geschrieben; das große -P wählt einen anderen als den Standardport.
Setze den entfernten Pfad an die erste Stelle, um eine Datei in das aktuelle lokale Verzeichnis herunterzuladen.
SERVFAIL
SERVFAIL ist eine DNS-Antwort, die anzeigt, dass der Server eine Abfrage nicht abschließen konnte, statt den Namen erfolgreich aufzulösen oder dessen Existenz zu verneinen.
Vergleiche die Antwort eines anderen Resolvers, wenn der konfigurierte Server wiederholt SERVFAIL zurückgibt.
SFTP
SFTP ist ein über SSH genutztes Dateiübertragungsprotokoll, das über einen interaktiven Client mit Befehlen zum Hochladen, Herunterladen und für Verzeichnisse verwendet werden kann.
In einer sftp-Sitzung ändert lcd das lokale Arbeitsverzeichnis, während cd das entfernte ändert.
SLAAC
SLAAC ist die automatische IPv6-Adresskonfiguration, bei der ein Host seine Adresse anhand eines von einem Router angekündigten Netzwerkpräfixes bildet.
Ein IPv6-Host kann mithilfe von Routerankündigungen eine Adresse ohne eine über DHCPv6 bezogene Adresse konfigurieren.
Sparse-Datei
Eine Sparse-Datei enthält logische Bereiche ohne entsprechend zugewiesene Datenblöcke, sodass ihre Länge ihre physische Speicherplatzbelegung übersteigen kann.
Das normale du und du --apparent-size können für dasselbe Sparse-Abbild sehr unterschiedliche Summen liefern.
Speicherplatzbelegung
Die Speicherplatzbelegung ist der zugewiesene Speicherplatz, den Dateien und Verzeichnisse verbrauchen. du summiert ihn in den erreichbaren Teilen des Baums.
Verwende sudo du -h -d 1 /var, um große Verzeichnisse zu vergleichen, nachdem du das volle Dateisystem identifiziert hast.
SSH
Secure Shell ist ein verschlüsseltes Protokoll für entfernte Anmeldung, Befehle und Dateiübertragung, das unter Linux normalerweise von OpenSSH über TCP-Port 22 bereitgestellt wird.
ssh aya@node.example.com startet eine entfernte Sitzung mit dem Konto von Aya auf dem genannten Server.
SSH-Agent
Ein SSH-Agent hält entsperrte private Schlüssel im Arbeitsspeicher und führt Authentifizierungsvorgänge des Clients aus, ohne wiederholt Passphrasen anzufordern.
Nach ssh-add können mehrere Verbindungen den geladenen Schlüssel verwenden, ohne dich erneut zum Entsperren aufzufordern.
sshd
Das Programm sshd ist der SSH-Server-Daemon. Es nimmt verschlüsselte Verbindungen an und wendet konfigurierte Regeln für Identität und Kontozugriff an.
Prüfe unter Debian oder Ubuntu den Dienst ssh und unter Fedora oder RHEL den Dienst sshd.
Standardgateway
Ein Standardgateway ist der Router für den nächsten Weiterleitungsschritt, den eine Standardroute für Ziele ohne spezifischere passende Route verwendet.
Ein Host kann seinen lokalen Nachbarn erreichen und dennoch keine Route über ein Gateway zu externen Netzwerken haben.
Sticky-Bit
Das Sticky-Bit ist ein Verzeichnismerkmal, das das Löschen und Umbenennen vorbehaltlich normaler Zugriffsprüfungen auf den Eigentümer des Eintrags, den Eigentümer des Verzeichnisses oder root beschränkt.
Im root gehörenden /tmp kann ein regulärer Benutzer die Datei eines anderen nicht allein deshalb entfernen, weil das Verzeichnis beschreibbar ist.
Stub-Resolver
Ein Stub-Resolver ist ein lokaler DNS-Endpunkt, der Clientabfragen annimmt und sie mithilfe vorgelagerter Dienste und lokaler Daten weiterleitet oder auflöst.
Der Nameserver 127.0.0.53 sendet Abfragen häufig an systemd-resolved auf demselben Rechner.
Suchsuffix
Ein Suchsuffix ist eine Domain, die bei der Abfrage eines kurzen Namens ergänzt wird, sodass ein Client einen vollständigeren Namen innerhalb einer konfigurierten Domain versuchen kann.
Mit search example.com kann eine Abfrage nach web1 den Namen web1.example.com versuchen.
Symbolischer Link
Ein symbolischer Link ist eine spezielle Datei, die einen anderen Pfad speichert, dem Befehle folgen, um die benannte Zieldatei oder das Zielverzeichnis zu erreichen.
Ein Link auf ../notes.txt beginnt die Suche in dem Verzeichnis, das diesen Link enthält.
sysfs
Sysfs ist das normalerweise unter /sys eingehängte virtuelle Dateisystem, das die Sicht des Kernels auf Geräte, Treiber, Busse und zugehörige Einstellungen zugänglich macht.
In den Verzeichnissen unter /sys/class/net kannst du untersuchen, welche Netzwerkschnittstellen der Kernel kennt.

T

Tastaturinteraktive Authentifizierung
Die tastaturinteraktive Authentifizierung ist eine SSH-Methode für Abfragen und Antworten, die auf einem entsprechend konfigurierten Server Passwörter annehmen kann.
Wenn du nur PasswordAuthentication deaktivierst, kann eine zweite passwortfähige Methode aktiviert bleiben.
Temporäre Datei
Eine temporäre Datei enthält Zwischenergebnisse für eine begrenzte Lebensdauer und kann von ihrem Programm oder durch eine Bereinigungsregel des Systems entfernt werden.
Eine Aufgabe, die nach einem Neustart fortgesetzt werden muss, bewahrt ihre temporären Arbeitsdateien in /var/tmp statt in /run auf.
Temporäre Netzwerkkonfiguration
Eine temporäre Netzwerkkonfiguration ändert den laufenden Kernelzustand, ohne ein Profil für den Systemstart zu speichern, und kann von einem Netzwerkmanager ersetzt werden.
Eine mit ip hinzugefügte Adresse kann verschwinden, wenn NetworkManager sein Verbindungsprofil erneut anwendet.
tmpfs
Ein tmpfs ist ein Dateisystem im Arbeitsspeicher, das auch Auslagerungsspeicher nutzen kann; sein Inhalt verschwindet beim Aushängen oder Herunterfahren des Systems.
Eine große Aufgabe kann ein unter /tmp eingehängtes tmpfs füllen, obwohl auf dem Hauptdatenträger noch Platz frei ist.
Toter Link
Ein toter Link ist ein symbolischer Link, dessen gespeicherter Zielpfad nicht erreicht werden kann, oft weil das Ziel verschoben oder gelöscht wurde.
Mit readlink kannst du den gespeicherten Pfad untersuchen, wenn das Öffnen eines toten Links fehlschlägt.

U

Umlaufzeit
Die Umlaufzeit misst, wie lange eine Anfrage und ihre Antwort für den Weg zwischen Hosts benötigen. Ping meldet sie häufig in Millisekunden.
Eine Antwort mit time=0.8 ms misst auch den Rückweg, nicht nur das ausgehende Paket.
UUID
Eine Dateisystem-UUID ist eine mit dem Dateisystem gespeicherte Kennung, die normalerweise stabil bleibt, wenn sich sein Gerätepfad im Kernel ändert.
Verwende die von lsblk -f gemeldete UUID, statt anzunehmen, dass eine USB-Partition immer /dev/sdb1 heißt.

V

Verfügbarer Speicherplatz
Verfügbarer Speicherplatz ist der Speicher eines Dateisystems, den reguläre Benutzer noch belegen können; Ressourcen wie ungenutzte reservierte ext4-Blöcke sind ausgenommen.
Die Spalte Avail kann auf einem ext4-Dateisystem kleiner als die Gesamtgröße abzüglich des belegten Speicherplatzes sein.
Vollqualifizierter Domainname
Ein vollqualifizierter Domainname bezeichnet einen Namen innerhalb der vollständigen DNS-Hierarchie, etwa web1.example.com, statt nur eines kurzen lokalen Namens.
Mit dem vollständigen Namen musst du dich nicht darauf verlassen, dass ein lokales Suchsuffix den Hostnamen ergänzt.

W

Wirksame Konfiguration
Eine wirksame Konfiguration ist die Gesamtheit der Einstellungen, die ein Dienst nach dem Lesen von Standardwerten und allen anwendbaren Konfigurationsdateien tatsächlich ermittelt.
Die Ausgabe von sshd -T hilft zu prüfen, welcher Wert Vorrang hatte, wenn Einstellungen in mehreren Dateien erscheinen.
Wurzelverzeichnis
Das Wurzelverzeichnis ist /, der Ausgangspunkt des einzigen Linux-Baums aus Dateien, Verzeichnissen und eingehängten Dateisystemen.
Ein unter /data eingehängtes zweites Laufwerk wird in den Baum eingebunden, statt einen eigenen Laufwerksbuchstaben zu erhalten.

Z

Zeichenorientiertes Gerät
Ein zeichenorientiertes Gerät ist eine Kernelschnittstelle, die einen Bytestrom bereitstellt, etwa ein Terminal oder das Nullgerät /dev/null.
Wird die Standardfehlerausgabe nach /dev/null umgeleitet, werden diese Bytes verworfen, ohne die normale Ausgabe zu verbergen.

#

/usr-Zusammenführung
Die /usr-Zusammenführung ist ein Aufbau, bei dem Pfade wie /bin, /sbin und /lib symbolische Links auf Orte innerhalb von /usr sind.
Auf einem zusammengeführten System können /bin/ls und /usr/bin/ls denselben installierten Befehl bezeichnen.

Über diese Einheit

Von StudeliFehler melden

Erstelle deine eigenen Lernmaterialien

Mach aus deinen Notizen, Folien und Dokumenten Lernleitfäden, Übungsfragen, Karteikarten und 6 weitere Tools.

Jetzt starten