~~NOTOC~~
===== 02 - Linux Advanced Workshop =====
**Für Fortgeschrittene Anwender**
Wenn Sie bereits erste Schritte mit Linux unternommen haben und tiefer in das Thema einsteigen möchten, ist dieser Kurs genau das Richtige für Sie.
Wir werden uns intensiv mit der Kommandozeile auseinandersetzen und den Ubuntu Server LTS verwenden. Im Mittelpunkt stehen Themen wie Paketmanagement, Festplattenverwaltung, SystemD, das Absichern des Systems mit einer Firewall und die Auswertung von Logdateien.
**Was Sie lernen werden:**
In diesem Kurs arbeiten wir intensiv mit der Linux-Kommandozeile und dem Ubuntu Server. Sie lernen, wie Sie ein Linux-System professionell verwalten, absichern und warten. Der Fokus liegt auf praktischer Anwendung und realitätsnahen Szenarien.
**Kursformat:** 5 Abendtermine von 18:00 bis 21:00 Uhr
----
==== Tag 1: Die Kommandozeile beherrschen ====
Am ersten Tag lernen Sie die wichtigsten Grundlagen für die Arbeit mit der Kommandozeile.
^ Priorität ^ Thema ^ Inhalte ^
| **KERN** | **Linux Filesystem** | [[sammlung:filesystem|Verzeichnisstruktur]] verstehen (/etc, /var, /home, /tmp) |
| **KERN** | **Navigation und Dateiverwaltung** | [[sammlung:cd_pwd_cp_mv_rm|cd, pwd, cp, mv, rm]], [[sammlung:ls|ls]] - Dateien verwalten |
| **KERN** | **Dateien anzeigen** | [[sammlung:cat_less_more_head_tail|cat, less, head, tail]] |
| **KERN** | **Ein-/Ausgabe** | [[sammlung:cli_prompt_io_error|Pipes, Umleitungen (>, >>, %%|%%)]] |
| Optional | Shell-Konfiguration | [[sammlung:bash_profile_bashrc|.bash_profile, .bashrc]], Aliase |
| Optional | Hilfe-System | [[sammlung:man_apropos|man, apropos]] |
----
==== Tag 2: Textverarbeitung und Systemkonfiguration ====
Sie lernen Texte zu durchsuchen und grundlegende Systemeinstellungen vorzunehmen.
^ Priorität ^ Thema ^ Inhalte ^
| **KERN** | **Texte durchsuchen** | [[sammlung:grep|grep]] - Dateien durchsuchen und filtern |
| **KERN** | **Dateien finden** | [[sammlung:find|find]] - Dateien im System suchen |
| **KERN** | **Systemkonfiguration** | [[sammlung:hostnamectl|Hostname]], [[sammlung:localectl|Locale]], [[sammlung:wichtige_konfigurationsdateien|Wichtige Dateien]] (/etc/hosts, /etc/fstab) |
| Optional | Textmanipulation | [[sammlung:sed|sed]] - Text bearbeiten |
| Optional | Shell-Vertiefung | Umgebungsvariablen, erweiterte Pipes |
----
==== Tag 3: Prozesse, Dienste und Monitoring ====
Sie lernen das System zu überwachen und Dienste zu verwalten.
^ Priorität ^ Thema ^ Inhalte ^
| **KERN** | **Prozesse** | [[sammlung:top|top]], [[sammlung:htop|htop]], kill - Programme verwalten |
| **KERN** | **Systemdienste** | [[sammlung:systemd|systemd]] - Dienste starten, stoppen, Status prüfen |
| **KERN** | **Logdateien** | [[sammlung:journalctl|journalctl]], [[sammlung:dmesg|dmesg]] - Fehler finden |
| **KERN** | **Speicher-Monitoring** | [[sammlung:df|df]], [[sammlung:du|du]], [[sammlung:free|free]], [[sammlung:lsblk|lsblk]] |
| Optional | Erweiterte Logs | [[sammlung:syslog|syslog]], Log-Rotation |
| Optional | Performance-Tools | [[sammlung:iostat|iostat]], [[sammlung:netstat|netstat]], nice/renice |
| Optional | Systemd-Timer | [[sammlung:systemd_timer|Automatische Aufgaben]] mit systemd |
----
==== Tag 4: Server-Installation und Benutzerverwaltung ====
Sie installieren einen Ubuntu Server und lernen Benutzer und Festplatten zu verwalten.
^ Priorität ^ Thema ^ Inhalte ^
| **KERN** | **Server-Installation** | [[vorbereitung:os:os_install|Ubuntu Server installieren]], [[sammlung:part_strat|Partitionierung]] planen |
| **KERN** | **Benutzerverwaltung** | [[sammlung:Benutzerverwaltung|useradd, usermod]] - Benutzer anlegen |
| **KERN** | **Dateiberechtigungen** | [[sammlung:dateirechte_uebersicht|chmod, chown]] - Rechte setzen |
| **KERN** | **sudo** | [[sammlung:sudo|sudo]] - Administratorrechte nutzen |
| **KERN** | **Paketverwaltung** | [[sammlung:paketmanagement|apt]] - Software installieren |
| Optional | Festplatten-Management | [[sammlung:festplatten_partitionieren|Partitionierung]], [[sammlung:filesystem|Dateisysteme]] (ext4, xfs) |
| Optional | ACLs | [[sammlung:acl|Erweiterte Zugriffsrechte]] |
| Optional | SUID/SGID | [[sammlung:suid_sgid|Special Permissions]] - Erweiterte Berechtigungen |
| Optional | Snap vs. deb | [[sammlung:snap_vs_deb|Snap vs. deb Pakete]] - Unterschiede und Verwendung |
----
==== Tag 5: Netzwerk, Firewall und Automatisierung ====
Am letzten Abend lernen Sie Netzwerk und Firewall einzurichten sowie Aufgaben zu automatisieren.
^ Priorität ^ Thema ^ Inhalte ^
| **KERN** | **System-Informationen** | [[sammlung:proc_system_info|/proc Dateisystem]] - CPU, RAM, Netzwerk ohne Tools auslesen |
| **KERN** | **SSH** | [[sammlung:ssh|SSH-Konfiguration]], [[sammlung:ssh_key_management|Key-Authentifizierung]] |
| **KERN** | **Firewall Basics** | [[sammlung:ufw|ufw]] - Einfache Firewall-Regeln |
| **KERN** | **Netzwerk-Grundlagen** | [[sammlung:ip_dns_dhcp|IP, DNS]] verstehen |
| Optional | **Automatisierung** | [[sammlung:crontab|cron]] - Zeitgesteuerte Aufgaben |
| Optional | Erweiterte Firewall | [[sammlung:iptables|iptables]] - Detaillierte Regeln |
| Optional | Netzwerk-Konfiguration | [[sammlung:networkmanager|NetworkManager]], netplan, statische IPs |
| Optional | SSH-Vertiefung | [[sammlung:ssh_tunnel|Port-Forwarding]], SSH-Agent |
| Optional | Bash-Skripting | Eigene Admin-Skripte schreiben |
**Praxis-Teil (ca. 60 Minuten):**
* Reale Szenarien durchspielen
* Troubleshooting-Workshop
* Ihre individuellen Fragen
* Zusammenfassung & Feedback
----
===== Voraussetzungen =====
* Grundkenntnisse in Linux (Dateisystem-Navigation, grundlegende befehle)
* Vertrautheit mit der Kommandozeile
* Eigener Laptop mit [[vorbereitung:vbox:virtual_box|VirtualBox]] oder Zugang zu einer Linux-VM
===== Lernziele =====
**Kern-Kompetenzen (werden auf jeden Fall vermittelt):**
* Sicher mit der Kommandozeile arbeiten
* Dateien und Verzeichnisse verwalten
* Systemdienste steuern und Logs lesen
* Benutzer und Rechte verwalten
* Ubuntu Server grundlegend installieren und konfigurieren
* Einfache Firewall-Regeln setzen
* Grundlegende Automatisierung mit cron
**Optionale Vertiefungen (je nach Tempo und Interesse):**
* Erweiterte Textverarbeitung mit sed
* Performance-Monitoring und Tuning
* Komplexe Firewall-Konfigurationen
* Fortgeschrittenes Bash-Skripting
* Storage-Management (Partitionierung, Dateisysteme)
**Hinweis für Teilnehmer:** Der Kurs konzentriert sich auf die wichtigsten Kern-Themen. Optionale Vertiefungen werden behandelt, wenn Zeit verfügbar ist oder auf Teilnehmerwunsch. Alle Themen sind in der Online-Dokumentation verfügbar.
===== Kommando-Referenz =====
Eine vollständige Übersicht aller behandelten Linux-Kommandos finden Sie hier:
* [[agenda:kommando_uebersicht|Linux Kommando-Übersicht]]