Zum Inhalt springen
Techlogia — KI- und Web-Dienstleister Berlin

Linux-Grundlagen lernen & sofort üben

Wer Linux beherrschen will, fängt bei der Kommandozeile an. Statt Theorie auswendig zu lernen, übst du hier direkt auf einer echten Cloud-VM: Du tippst die Befehle, siehst sofort das Ergebnis und bekommst automatisch Rückmeldung, ob es passt. Diese Seite erklärt die Bausteine, die in fast jeder Aufgabe wieder vorkommen – und die Fehlermeldungen, die dir dabei zuerst begegnen.

Im Dateisystem navigieren

Mit pwd siehst du, wo du bist, mit ls den Inhalt eines Verzeichnisses und mit cd wechselst du den Ordner. Diese drei Befehle sind das Fundament – fast jede Aufgabe beginnt damit, sich im System zu orientieren. Linux kennt keine Laufwerksbuchstaben: Alles hängt an einem einzigen Wurzelverzeichnis /, und dein persönlicher Bereich liegt unter /home/<name>, abgekürzt mit ~.

Absolute und relative Pfade

Ein Pfad, der mit / beginnt, ist absolut und gilt von überall aus – /etc/ssh/sshd_config meint immer dieselbe Datei. Alles andere ist relativ zum aktuellen Verzeichnis. .. steht für eine Ebene höher, . für „hier“. Der häufigste Anfängerfehler ist ein relativer Pfad in einem Skript, das später aus einem anderen Verzeichnis gestartet wird: Es lief beim Testen und schlägt im Betrieb fehl.

Dateien und Verzeichnisse anlegen

Mit mkdir erstellst du Ordner, mit touch leere Dateien, mit cp und mv kopierst und verschiebst du, mit rm löschst du. Auf einer echten VM lernst du auch die Konsequenzen kennen – nichts ist gefährlicher und lehrreicher als ein echtes Terminal. rm fragt nicht nach und kennt keinen Papierkorb; rm -i fragt vor jeder Datei nach.

In Dateien hineinsehen

cat gibt eine ganze Datei aus, less blättert seitenweise (beenden mit q), head und tail zeigen Anfang und Ende. tail -f hängt sich an eine Datei und zeigt neue Zeilen, sobald sie geschrieben werden – das ist der Standardgriff beim Beobachten von Protokolldateien, und du wirst ihn in jeder Betriebsaufgabe brauchen.

Pakete installieren

Über den Paketmanager – auf Ubuntu apt – installierst du Software. apt update holt die Paketlisten, apt install installiert. Beides braucht Administratorrechte, also sudo. Zu verstehen, wie Pakete, Aktualisierungen und Abhängigkeiten zusammenhängen, ist die Basis für alles Weitere – vom Webserver bis zur Absicherung.

Umleiten und verketten

Mit > schreibst du die Ausgabe in eine Datei, mit >> hängst du an, und | reicht sie an den nächsten Befehl weiter. ls -l | grep .log | wc -l zählt in einer Zeile, wie viele Protokolldateien im Verzeichnis liegen. Diese drei Zeichen sind der Grund, warum die Kommandozeile mit wenigen Befehlen so weit trägt: Jedes Werkzeug tut eine Sache, und du steckst sie zusammen.

Die Tastenkürzel, die den Unterschied machen

Tab vervollständigt Pfade und Befehle – zweimal gedrückt zeigt es alle Möglichkeiten. Die Pfeiltaste nach oben holt frühere Befehle zurück, Strg + R durchsucht sie. Strg + C bricht ab, Strg + D beendet die Eingabe. Wer diese fünf beherrscht, arbeitet nicht doppelt so schnell, sondern macht deutlich weniger Tippfehler in Pfaden – und Tippfehler in Pfaden sind die häufigste Fehlerquelle am Anfang.

Was am Anfang oft schiefgeht

Drei Muster wiederholen sich: Erstens Leerzeichen in Dateinamen ohne Anführungszeichen – cd Mein Ordner sucht nach einem Verzeichnis namens „Mein“. Zweitens sudo aus Gewohnheit vor jeden Befehl gesetzt, wodurch neu angelegte Dateien plötzlich root gehören und du sie später nicht mehr bearbeiten kannst. Drittens der Griff zu chmod 777, wenn etwas nicht geht – das behebt das Symptom und öffnet die Datei für alle.

Befehle zum Ausprobieren

Wo bin ich, und was liegt hier?

$ pwd$ ls -la$ cd /etc && pwd$ cd ~ && pwd

ls -la zeigt auch versteckte Einträge (Punkt am Anfang) und die Rechte. Das && führt den zweiten Befehl nur aus, wenn der erste gelungen ist.

Anlegen, kopieren, aufräumen

$ mkdir -p projekt/logs$ touch projekt/logs/app.log$ cp projekt/logs/app.log /tmp/$ rm -i /tmp/app.log

-p legt fehlende Zwischenverzeichnisse gleich mit an und meckert nicht, wenn der Ordner schon existiert – deshalb steht es in fast jedem Skript.

Protokoll mitlesen

$ tail -n 20 /var/log/syslog$ tail -f /var/log/syslog

Die zweite Zeile läuft weiter, bis du sie mit Strg + C abbrichst. Genau so beobachtest du einen Dienst, während du ihn von einem zweiten Fenster aus ansprichst.

Suchen, filtern, zaehlen

$ grep -rn "error" /var/log/ 2>/dev/null | head$ find /etc -name "*.conf" -type f | wc -l$ ls -lh /var/log | sort -k5 -h | tail -3

2>/dev/null verwirft die Rechte-Fehler zu Verzeichnissen, die du nicht lesen darfst – sonst geht der eigentliche Treffer im Rauschen unter.

Häufige Fehlermeldungen

bash: cd: /etc/nginx: No such file or directory
Ursache: Das Verzeichnis existiert nicht – meist ist das Paket noch nicht installiert oder im Pfad steckt ein Tippfehler.
Lösung: Mit ls /etc | grep -i ngin prüfen, ob es den Ordner überhaupt gibt, und das Paket bei Bedarf mit sudo apt install nginx nachinstallieren.
mkdir: cannot create directory ‘/opt/app’: Permission denied
Ursache: Unterhalb von /opt darf ein normaler Benutzer nicht schreiben. Die Berechtigung liegt bei root.
Lösung: Entweder mit sudo mkdir /opt/app arbeiten oder im eigenen Bereich unter ~ anlegen. Nicht die Rechte von /opt ändern – das repariert das Symptom und öffnet ein Loch.
E: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 1234
Ursache: Ein zweiter Paketvorgang läuft bereits – oft die automatische Aktualisierung kurz nach dem Start der VM.
Lösung: Ein bis zwei Minuten warten und erneut versuchen. Die Sperrdatei zu löschen ist der falsche Weg: Sie verhindert, dass zwei Vorgänge dieselbe Paketdatenbank zerlegen.
bash: syntax error near unexpected token `newline'
Ursache: Meist ein unpaariges Anfuehrungszeichen weiter oben: Die Shell wartet auf das Ende der Zeichenkette und stolpert erst am Zeilenende.
Lösung: Mit Strg + C abbrechen und die Zeile neu tippen. Ein Prompt, der ploetzlich > zeigt, ist genau dieses Warten.

In fünf Schritten

  1. 01VM starten und mit pwd prüfen, wo du landest – das ist dein Heimatverzeichnis.
  2. 02Mit ls -la ~ ansehen, was schon da ist, inklusive der versteckten Dateien.
  3. 03Mit mkdir -p uebung/logs eine Struktur anlegen und mit cd uebung hineinwechseln.
  4. 04Eine Datei mit touch logs/test.log erzeugen und mit ls -l logs ihre Rechte ansehen.
  5. 05Mit tail -f logs/test.log mitlesen und aus einem zweiten Terminal mit echo hallo >> logs/test.log hineinschreiben.

Was du übst

pwd, ls, cdmkdir, touch, cp, mv, rmapt / Paketverwaltungtail -f / Protokolle lesen

Haben Sie ein Projekt?

Lassen Sie uns gemeinsam Ihre Idee in die Tat umsetzen. Wir beraten Sie gerne unverbindlich.

Kontakt aufnehmen

Wie gefällt dir diese Seite?