Einführung in Linux: Installation, Grundlagen und Administration
Praxisorientierter Linux-Einstieg: Distributionen auswählen, Linux installieren, Shell und Dateisystem nutzen, Benutzer verwalten und Systeme administrieren.
Linux ist eine vielseitige Plattform für Desktop, Server, Cloud und eingebettete Systeme. Diese Einführung erklärt die wichtigsten Konzepte und zeigt typische Befehle für Installation, Bedienung und Administration. Grundkenntnisse zu Dateien, Benutzerkonten und IP-Adressen sind hilfreich.
Linux im Überblick
Linux bezeichnet technisch zunächst den Linux-Kernel. Der Kernel vermittelt zwischen Hardware und laufender Software: Er verwaltet Prozessoren, Arbeitsspeicher, Geräte, Prozesse und Zugriffe auf Dateisysteme. Ein nutzbares Linux-Betriebssystem besteht jedoch aus mehr als dem Kernel.
- Distribution: Eine Zusammenstellung aus Kernel, Systemwerkzeugen, Paketverwaltung, Bibliotheken und Software, zum Beispiel Debian, Ubuntu, Fedora oder RHEL.
- Desktop-Umgebung: Eine grafische Arbeitsoberfläche wie GNOME, KDE Plasma oder Xfce.
- Shell: Ein Befehlsinterpreter für die Kommandozeile, häufig Bash.
- Terminal: Das Programm oder die Sitzung, in der eine Shell ausgeführt wird.
- Anwendungen: Programme wie Webbrowser, Editoren, Datenbanken oder Webserver.
Linux wird auf Servern, Arbeitsplatzrechnern, Cloud-Instanzen, Routern, Smartphones, IoT-Geräten und in Containern eingesetzt. Freie und quelloffene Software darf je nach Lizenz untersucht, verändert und weitergegeben werden. Offenheit bedeutet nicht automatisch, dass jede Software kostenlos oder ohne Sicherheitsregeln ist.
| Familie | Beispieldistributionen | Paketformat | Paketwerkzeug | Typischer Einsatz |
|---|---|---|---|---|
| Debian | Debian, Ubuntu | DEB | APT | Desktop, Server, Lernsysteme |
| Fedora/RHEL | Fedora, RHEL | RPM | DNF | Desktop, Unternehmensserver |
| Arch | Arch Linux | PKG.TAR | pacman | Flexible, fortgeschrittene Installationen |
Für Einsteiger ist eine verbreitete Distribution mit langer Unterstützung und guter Dokumentation geeignet. Zum Lernen empfiehlt sich zunächst eine virtuelle Maschine, weil sie das bestehende System schützt.
Grundaufbau eines Linux-Systems
Beim Einschalten initialisiert die Firmware die Hardware. Der Bootloader lädt anschließend den Kernel und übergibt ihm die Kontrolle. Der Kernel startet das init-System, auf vielen Distributionen systemd. Dieses startet Systemdienste, Mounts und schließlich die Benutzeranmeldung. Danach beginnt eine grafische oder textbasierte Benutzersitzung.
Das Dateisystem organisiert Daten in einer gemeinsamen Hierarchie unter dem Wurzelverzeichnis /. Eine grafische Oberfläche eignet sich für Dateien und Anwendungen; die Shell ist besonders effizient, reproduzierbar und für entfernte Administration wichtig. Lokale Administration erfolgt direkt am Gerät oder über ein Terminal. Entfernte Administration erfolgt typischerweise verschlüsselt über SSH.
Linux installieren
Installationsweg auswählen
- Virtuelle Maschine: ISO-Abbild, virtuelle CPU, Arbeitsspeicher und Datenträger zuweisen. Vor riskanten Änderungen können Snapshots erstellt werden.
- Testsystem: Linux zunächst ohne dauerhafte Installation von einem Installationsmedium starten.
- Dual Boot: Linux und ein anderes Betriebssystem auf getrennten Bereichen installieren. Datensicherung und sorgfältige Datenträgerauswahl sind zwingend.
- Neuinstallation: Der Datenträger wird neu partitioniert; vorhandene Daten können verloren gehen.
Prüfe vorab Prozessorarchitektur, Arbeitsspeicher, freien Datenträgerplatz, Grafikkarte, Netzwerk und die Unterstützung des gewünschten Systems. Lade das ISO-Abbild aus einer vertrauenswürdigen Quelle und erstelle daraus einen bootfähigen USB-Datenträger. Starte den Rechner anschließend vom Medium und beachte die Bootauswahl der Firmware.
Im Installer wählst du Sprache, Tastatur, Zeitzone, Hostnamen, Benutzerkonto und Datenträger. Ein Dateisystem organisiert Daten auf einer Partition; für viele Lernsysteme ist ext4 eine geeignete Standardwahl. Andere Systeme verwenden beispielsweise XFS oder Btrfs. Partitionen und Dateisysteme sind unterschiedliche Ebenen: Eine Partition ist ein Bereich eines Datenträgers, ein Dateisystem strukturiert diesen Bereich.
Der Bootloader wird meist auf dem Systemdatenträger installiert. Er bietet gegebenenfalls mehrere startbare Systeme an und lädt den Linux-Kernel. Verwende ein langes, einzigartiges Administratorkennwort und arbeite nach der Installation zunächst mit einem Standardbenutzer.
- Installiere verfügbare Sicherheits- und Systemupdates.
- Prüfe Paketquellen und aktiviere nur benötigte Quellen.
- Installiere erforderliche Treiber und Programme.
- Prüfe Netzwerk, Zeitzone und Benutzerkonto.
- Starte neu, wenn Kernel- oder zentrale Bibliotheksupdates dies verlangen.
Dateisystem und Dateiverwaltung
| Verzeichnis | Zweck | Typische Inhalte | Administrative Hinweise |
|---|---|---|---|
/ | Wurzel des Dateibaums | Alle Systembereiche | Nicht unkontrolliert verändern |
/home | Benutzerdaten | Dokumente, Konfigurationen | Regelmäßig sichern |
/etc | Systemkonfiguration | Dienst- und Netzwerkkonfiguration | Änderungen dokumentieren |
/var | Veränderliche Daten | Logs, Caches, Spools | Speicherverbrauch überwachen |
/usr | Installierte Programme und Daten | Binärdateien, Bibliotheken | Meist paketverwaltet |
/tmp | Temporäre Dateien | Zwischendaten | Nicht für dauerhafte Daten verwenden |
/boot | Startkomponenten | Kernel, Bootloader-Dateien | Bei wenig Platz prüfen |
/dev, /proc, /sys | Geräte und Kernel-Sichten | Gerätedateien, Prozess- und Hardwareinformationen | Virtuelle Dateisysteme |
Ein absoluter Pfad beginnt mit /, etwa /home/anna/notizen.txt. Ein relativer Pfad wird vom aktuellen Verzeichnis aus aufgelöst, etwa notizen.txt oder ../backup. Die wichtigsten Grundoperationen sind:
pwd
ls -la
cd /home/anna
mkdir projekt
cp quelle ziel
mv alt neu
rm -i datei
cat datei
less datei
grep 'muster' datei
rm entfernt Dateien normalerweise ohne Papierkorb. Prüfe daher Pfad und Optionen sorgfältig. Ein symbolischer Link enthält einen Verweis auf einen anderen Pfad und kann ungültig werden, wenn das Ziel verschwindet. Ein harter Link verweist auf denselben Dateiinode und bleibt innerhalb desselben Dateisystems gültig, solange mindestens ein Link existiert.
Mit df -h prüfst du den freien Platz eingehängter Dateisysteme, mit du -sh verzeichnis den Verbrauch eines Verzeichnisses. Ein Mount macht ein Dateisystem an einer Stelle des Verzeichnisbaums verfügbar.
Arbeiten mit der Shell
Ein Shell-Prompt zeigt häufig Benutzername, Rechnername und aktuelles Verzeichnis. Der Befehlsaufbau lautet grundsätzlich befehl optionen argumente. Optionen verändern das Verhalten, Argumente geben Ziele oder Eingabewerte an.
| Befehl | Aufgabe | Beispielverwendung | Wichtige Optionen |
|---|---|---|---|
pwd | Aktuelles Verzeichnis anzeigen | pwd | keine |
ls | Inhalt anzeigen | ls -la /etc | -l, -a, -h |
cp | Kopieren | cp datei backup/ | -r, -i |
mv | Verschieben oder umbenennen | mv alt.txt neu.txt | -i |
grep | Textmuster suchen | grep 'error' system.log | -i, -r, -n |
find | Dateien suchen | find /var/log -name '*.log' | -name, -type |
Nutze man befehl für ausführliche Handbücher und befehl --help für eine kurze Übersicht. Tab-Vervollständigung reduziert Tippfehler; die Pfeiltasten oder history zeigen frühere Befehle. Wildcards wie * für beliebige Zeichen und ? für genau ein Zeichen helfen bei Dateimustern.
Eine Umleitung schreibt Ausgabe in eine Datei: ls -la > liste.txt. Mit >> wird angehängt. Eine Pipe übergibt die Ausgabe eines Befehls an den nächsten: ps aux | grep nginx. Standardfehler kann mit 2> fehler.log getrennt umgeleitet werden.
Benutzer, Gruppen und Berechtigungen
root ist das Administratorkonto mit weitreichenden Rechten. Ein Standardbenutzer sollte administrative Aktionen gezielt mit sudo ausführen. Dieses Prinzip begrenzt Fehler und reduziert die Folgen kompromittierter Sitzungen.
id
sudo useradd -m benutzer
sudo passwd benutzer
sudo usermod -aG gruppe benutzer
ls -l datei
chmod 640 datei
chown benutzer:gruppe datei
| Recht | Symbol | Numerischer Wert | Wirkung auf Dateien | Wirkung auf Verzeichnisse |
|---|---|---|---|---|
| Lesen | r | 4 | Inhalt anzeigen | Einträge auflisten |
| Schreiben | w | 2 | Inhalt ändern | Einträge erstellen oder löschen |
| Ausführen | x | 1 | Programm starten | Verzeichnis betreten |
Die Rechte gelten in der Reihenfolge Eigentümer, Gruppe, andere. chmod 640 datei bedeutet: Eigentümer lesen und schreiben, Gruppe lesen, andere ohne Zugriff. Symbolisch wäre beispielsweise chmod u+rw,g+r,o-rwx datei. Verzeichnisrechte müssen immer im Zusammenhang mit den Rechten der übergeordneten Verzeichnisse betrachtet werden.
Software und Paketverwaltung
Ein Repository ist eine verwaltete Quelle für signierte Pakete und Metadaten. Der Paketmanager installiert, aktualisiert und entfernt Software und löst Abhängigkeiten auf. Distribution-Pakete werden vom System integriert und aktualisiert; manuell installierte Software kann außerhalb dieses Updatewegs liegen und muss separat gepflegt werden.
# Debian- oder Ubuntu-basiert
sudo apt update
sudo apt upgrade
apt search paketname
sudo apt install paketname
sudo apt remove paketname
# Fedora- oder RHEL-basiert
sudo dnf check-update
sudo dnf upgrade
dnf search paketname
sudo dnf install paketname
sudo dnf remove paketname
APT arbeitet primär mit DEB-Paketen, DNF mit RPM-Paketen. Aktualisiere Paketlisten vor Installationen und spiele Sicherheitsupdates regelmäßig ein. Entferne Pakete nicht blind, weil davon abhängige Programme betroffen sein können.
Prozesse, Dienste und Protokolle
Ein Prozess ist eine laufende Instanz eines Programms und besitzt eine Prozesskennung, die PID. Vordergrundprozesse belegen normalerweise das Terminal; mit & kann ein Programm im Hintergrund gestartet werden. ps aux, top und pgrep zeigen laufende Prozesse. Beende einen Prozess möglichst geordnet mit kill PID.
| Ziel | systemctl-Befehl | Erwartetes Ergebnis | Hinweis |
|---|---|---|---|
| Status prüfen | sudo systemctl status dienstname | Aktiv, inaktiv oder fehlgeschlagen | Erste Diagnose |
| Starten | sudo systemctl start dienstname | Dienst läuft | Ändert nicht automatisch den Autostart |
| Stoppen | sudo systemctl stop dienstname | Dienst beendet | Abhängige Funktionen können ausfallen |
| Neustarten | sudo systemctl restart dienstname | Dienst wird neu geladen | Kurze Unterbrechung möglich |
| Autostart aktivieren | sudo systemctl enable dienstname | Start beim Booten vorbereitet | Startet den Dienst nicht zwingend sofort |
Ein Dienst ist meist ein dauerhaft laufender Prozess für eine System- oder Netzwerkfunktion. journalctl -u dienstname zeigt dienstbezogene Protokolle. Bei Startfehlern prüfst du Status, Logs, Konfigurationssyntax, Abhängigkeiten und belegte Ports.
Netzwerkgrundlagen und SSH
Eine Netzwerkschnittstelle verbindet das System mit einem Netz. Die IP-Adresse identifiziert es dort, das Gateway vermittelt fremde Netze und DNS übersetzt Namen in IP-Adressen.
| Prüffrage | Befehl | Erwartete Ausgabe | Mögliche Fehlerursache |
|---|---|---|---|
| Hat die Schnittstelle eine Adresse? | ip addr | IP-Adresse an einer Schnittstelle | Kabel, WLAN oder DHCP fehlt |
| Existiert eine Route? | ip route | Default-Route über Gateway | Gateway- oder Konfigurationsfehler |
| Ist ein Ziel erreichbar? | ping -c 4 zielhost | Antworten mit Laufzeit | Routing, Firewall oder Ziel offline |
| Funktioniert DNS? | getent hosts name | Aufgelöste Adresse | DNS-Konfiguration fehlerhaft |
| Welche Ports lauschen? | ss -tulpn | Lokale TCP-/UDP-Dienste | Dienst läuft nicht oder falscher Port |
SSH ermöglicht verschlüsselte Fernadministration. Eine Verbindung wird beispielsweise mit ssh benutzer@server aufgebaut. Dateien lassen sich mit scp lokale-datei benutzer@server:/zielpfad übertragen; für interaktive Dateiübertragung eignet sich SFTP. Verwende bevorzugt Schlüsselanmeldung, sichere Konten und eine Firewall, die nur erforderliche Ports freigibt.
Datenträger und Dateisysteme
lsblk zeigt Blockgeräte, Partitionen und Einhängepunkte. Ein Dateisystem muss vor der Nutzung an einen Mount-Punkt angebunden werden:
lsblk
sudo mkdir -p /mnt/daten
sudo mount /dev/geraet /mnt/daten
mount
df -h
sudo umount /mnt/daten
Vor einer dauerhaften Einbindung sollte die UUID des Dateisystems ermittelt und in /etc/fstab verwendet werden. Eine konzeptionelle Zeile lautet:
UUID=<dateisystem-uuid> /mnt/daten ext4 defaults 0 2
Teste die Syntax vor einem Neustart mit sudo mount -a. Ein fehlerhafter Eintrag kann den Systemstart beeinträchtigen. df -h zeigt belegten und freien Speicher, df -i die Inode-Auslastung. Ein Dateisystem kann trotz freien Bytes wegen erschöpfter Inodes keine neuen Dateien mehr anlegen.
Eine sinnvolle Sicherung umfasst Systemkonfiguration, Benutzerdaten und gegebenenfalls Anwendungsdaten. Backups müssen auf einem getrennten Ziel liegen, regelmäßig ausgeführt und durch Wiederherstellungstests überprüft werden.
Sicherer Betrieb und Fehlersuche
- Installiere Sicherheitsupdates regelmäßig und plane Patch-Änderungen kontrolliert.
- Verwende einzigartige, lange Passwörter und schütze privilegierte Konten.
- Deaktiviere unnötige Dienste, offene Ports und nicht benötigte Software.
- Kontrolliere Systemzustand, Speicherplatz und Protokolle regelmäßig.
- Nutze root- und sudo-Rechte nur für die konkrete notwendige Aktion.
- Erstelle getestete Backups und dokumentiere Änderungen.
Typische Probleme systematisch untersuchen
- Befehl nicht gefunden: Schreibweise prüfen, mit
command -v befehldenPATHuntersuchen und das benötigte Paket kontrollieren. Bei eigenen Skripten Pfad und Ausführungsrecht prüfen. - Berechtigungsfehler:
ls -l, Eigentümer, Gruppe und Verzeichnisrechte prüfen. Nur wenn erforderlich, den einzelnen Befehl mitsudoausführen. - Dienst startet nicht:
systemctl statusundjournalctl -u dienstnameauswerten, Konfiguration, Abhängigkeiten und Ports prüfen. - Kein Netzwerk: Erst
ip addr, dannip routeprüfen. Zuerst eine IP-Adresse testen, danach einen Hostnamen; so lässt sich ein DNS-Problem eingrenzen. - Dateisystem voll: Mit
df -hden betroffenen Mount ermitteln und mitdu -shgroße Verzeichnisse suchen. Daten erst nach Prüfung und gegebenenfalls Sicherung löschen. - Mount nach Neustart fehlt: UUID, Dateisystemtyp, Mount-Punkt und
/etc/fstabprüfen. Mitmount -atesten und Startprotokolle lesen.
Weiterführende Themen
Nach den Grundlagen bieten sich Shell-Skripting, erweiterte Rechteverwaltung, Netzwerkadministration, Serverdienste, Virtualisierung, Container, Monitoring, Log-Management und Automatisierung an. Vertiefe dafür insbesondere grundlegende Linux-Befehle, die Bash-Shell, die Linux-Verzeichnisstruktur, Man-Pages, Paketmanager und Paketverwaltung, Dateisysteme mounten und Arten von Zugriffsrechten.