[[start|zurück]]
====== Linux – Grundlagen (Kernel, Distributionen, Shell, Rechte, Paketverwaltung) ======
Linux ist ein freies, offenes Betriebssystem, das in Servern, Containern, Routern,
Android-Smartphones, TV-Geräten, Clustern und Supercomputern verwendet wird.
Diese Seite erklärt:
* Kernel & Distributionen
* Dateisystemstruktur
* Shell & Befehle
* Benutzer & Gruppen
* Rechte (chmod, chown)
* Dienste (systemd)
* Paketmanagement
* Logging
* Netzwerkgrundlagen
---
====== 1. Was ist Linux? ======
Linux besteht aus zwei Teilen:
* **Kernel** – der Kern des Systems (Treiber, Prozesse, Speicherverwaltung)
* **Distribution** – Kernel + Tools + Paketverwaltung + Desktop/Server
Der Kernel ist überall ähnlich, die Distribution bestimmt:
* komfort oder minimal
* Paketmanager (apt, yum, pacman)
* Standardwerkzeuge
* Desktopumgebung
* Zweck (Server, Desktop, Spezialgeräte)
---
====== 2. Wichtige Linux-Distributionen ======
===== Debian =====
* sehr stabil
* ideal für Server
* Grundlage von Ubuntu
* bei dir im HomeLab überall im Einsatz
===== Ubuntu =====
* einsteigerfreundlich
* häufig auf Desktops & Cloud
===== CentOS Stream / RHEL / Rocky =====
* Enterprise-Distribution
* stabil, für Firmenumgebungen
===== Arch Linux =====
* Rolling Release
* sehr aktuell
* für Fortgeschrittene
===== Alpine Linux =====
* extrem leicht
* ideal für Container (Docker-Images)
---
====== 3. Linux-Dateisystemstruktur ======
Linux besitzt eine standardisierte Verzeichnisstruktur (FHS – Filesystem Hierarchy Standard):
/
├── bin → Basisbefehle (ls, cp, mv)
├── sbin → Systembefehle (fsck, reboot)
├── etc → Konfigurationsdateien
├── usr → Programme & Libraries
├── var → Logs, Datenbanken, Mail
├── home → Benutzerverzeichnisse
├── root → root Benutzerverzeichnis
├── opt → Zusatzsoftware
├── lib → Bibliotheken
└── tmp → temporäre Dateien
Wichtig:
* alles ist Datei (auch Hardware → /dev)
---
====== 4. Shell & Terminal ======
Die Shell ist die Benutzeroberfläche im Textmodus.
Standard-Shell: **bash**
Wichtige Befehle:
===== Navigation =====
ls → Verzeichnis anzeigen
cd → wechseln
pwd → aktuelles Verzeichnis anzeigen
===== Dateien =====
cp → kopieren
mv → verschieben/umbenennen
rm → löschen
mkdir → Ordner erstellen
touch → Datei erstellen
===== Informationen =====
top → Prozesse ansehen
df -h → Speicherplatz
free -h → RAM
uname -a → Kernel-Version
===== Netzwerk =====
ip addr → IP-Adressen
ip route → Routing
ss -tulpen → offene Ports
ping → Verbindung testen
---
====== 5. Benutzer & Gruppen ======
Linux ist strikt multi-user-fähig.
Benutzer anzeigen:
cat /etc/passwd
Gruppen anzeigen:
cat /etc/group
wichtige Befehle:
useradd benutzer
passwd benutzer
groupadd gruppe
===== root =====
* Superuser
* alle Rechte
* vorsichtig verwenden
===== sudo =====
Erlaubt temporäre root-Rechte → sicherer
Beispiel:
sudo apt update
---
====== 6. Dateirechte unter Linux ======
Linux kennt drei Rechteebenen:
* **User**
* **Group**
* **Others**
und drei Arten von Rechten:
* r = read
* w = write
* x = execute
Format:
-rwxr-x---
Zahlenform (Oktal):
* 7 = rwx
* 5 = r-x
* 4 = r--
Beispiele:
chmod 755 script.sh
chmod 640 config.txt
chown benutzer:gruppe datei.txt
---
====== 7. systemd & Dienste ======
systemd ist das Init-System moderner Distributionen.
Es startet Dienste, überwacht sie und organisiert Boot-Prozesse.
Wichtige Befehle:
systemctl start dienst
systemctl stop dienst
systemctl restart dienst
systemctl enable dienst
systemctl status dienst
journalctl -u dienst
journalctl zeigt Logs:
journalctl -xe
---
====== 8. Paketverwaltung ======
Linux nutzt Paketmanager, um Software zu installieren.
===== Debian / Ubuntu =====
apt update
apt upgrade
apt install paket
apt remove paket
===== RHEL / CentOS / Rocky =====
dnf install paket
===== Arch =====
pacman -S paket
===== Alpine =====
apk add paket
---
====== 9. Prozesse unter Linux ======
Alles läuft als Prozess.
Prozesse anzeigen:
ps aux
top
htop (optional)
Prozess beenden:
kill PID
kill -9 PID
---
====== 10. Logging unter Linux ======
Logs liegen unter:
/var/log
Beispiele:
* syslog (Systemmeldungen)
* auth.log (Loginversuche)
* dmesg (Kernelmeldungen)
* journalctl (systemd-Logs)
---
====== 11. Netzwerk unter Linux ======
IP anzeigen:
ip a
Gateway:
ip r
DNS:
cat /etc/resolv.conf
Ports:
ss -tulpen
Firewall:
* ufw
* iptables
* nftables
---
====== 12. Best Practices ======
* root möglichst nicht verwenden
* sudo nutzen
* Backups /etc nicht vergessen
* SSH härten (Schlüsselauthentifizierung)
* Updates regelmäßig einspielen
* Dienste minimieren
* Logs prüfen
---
====== Zusammenfassung ======
* Linux besteht aus Kernel + Distribution
* Shell ist das zentrale Werkzeug
* Benutzerrechte sind strikt geregelt
* systemd verwaltet Dienste
* Paketmanager installieren Software
* Logs & Netzwerkwerkzeuge sind essenziell für die Administration