Inhalt dieses Kapitels
Pakete, Repositories & dnf
GrundlageAuf Windows lädst du setup.exe herunter,
klickst dich durch den Installer und hoffst, dass es funktioniert.
Auf Linux machst du dnf install nano — und
Linux holt sich das Programm aus einem zentralen, signierten
Repository.
Drei Begriffe, die du brauchst
RPM = Red Hat Package Manager. Das ist das
Paketformat (.rpm-Dateien). dnf ist das Werkzeug,
das mit RPM-Paketen umgeht — installiert, aktualisiert, löst
Abhängigkeiten auf. Auf Rocky, RHEL, Fedora, Alma → überall
dnf. Auf Debian/Ubuntu wäre das Pendant
apt.
▶ Was ist mit yum?
yum war der Vorgänger von dnf. In Rocky 9
ist yum nur noch ein Symlink auf
dnf — du kannst yum install nano tippen, es
funktioniert, aber intern ruft es dnf auf. Neue
Skripte und Dokumentation sollten dnf verwenden.
Wenn du irgendwo alte Anleitungen mit yum siehst — funktioniert
1:1, einfach dnf statt yum tippen.
Wo lebt was?
| Pfad | Inhalt |
|---|---|
/etc/yum.repos.d/ | Repository-Definitionen (.repo-Dateien) |
/var/cache/dnf/ | Cache der heruntergeladenen Pakete und Metadaten |
/var/log/dnf.log | Log aller dnf-Aktionen |
/var/log/dnf.rpm.log | Log aller Installationen/Updates |
Die drei dnf-Pflicht-Befehle — install, remove, update
PflichtDu musst nicht alle 50 dnf-Optionen kennen. Diese drei reichen für den Großteil des Admin-Alltags:
▶ Bonus (optional) – dnf search & dnf info (Repos durchsuchen)
dnf search — was gibt's überhaupt?
# Pakete mit "nmap" im Namen oder der Beschreibung
dnf search nmap
# Detaillierte Info zu einem Paket
dnf info nmap
1 · dnf install — installieren
# Ein Paket installieren (sudo wegen Schreibrechten in /usr/)
sudo dnf install nmap
# Mehrere auf einmal
sudo dnf install nmap tree nano
# Ohne Rückfrage (Achtung: keine Sicherheitsabfrage!)
sudo dnf install -y nmap
2 · dnf update — aktualisieren
# Schauen, welche Updates es gäbe (nichts installieren)
dnf check-update
# Alle Pakete aktualisieren
sudo dnf update
# Nur ein bestimmtes Paket aktualisieren
sudo dnf update nmap
# Alias: dnf upgrade macht das Gleiche
sudo dnf upgrade
update vs. upgrade bei dnfBei dnf sind beide identisch —
beide installieren neuere Versionen. (Bei Debian/Ubuntu mit
apt ist es anders: dort macht apt update
nur die Paketliste, apt upgrade installiert. Verwirrend,
aber wir sind bei Rocky → dnf update = dnf upgrade.)
3 · dnf remove — entfernen
# Paket entfernen
sudo dnf remove nmap
# Mehrere
sudo dnf remove nmap tree
# Verwaiste Abhängigkeiten aufräumen
sudo dnf autoremove
| Befehl | Wirkung |
|---|---|
dnf search PAKET | nach Paketen suchen |
dnf info PAKET | Infos zum Paket |
sudo dnf install PAKET | installieren |
sudo dnf remove PAKET | entfernen |
sudo dnf update | alle Updates |
sudo dnf upgrade | identisch zu update |
dnf check-update | welche Updates gäbe es? |
dnf list installed | installierte Pakete |
rpm — die Low-Level-Ebene
Übersicht
Bonus
Unter dnf arbeitet rpm — das eigentliche
Paket-Werkzeug. Du brauchst es selten direkt, aber es ist gut, die
wichtigsten rpm-Befehle zu kennen — vor allem, wenn du
ein lokales .rpm-File hast, das nicht aus einem Repo kommt.
▶ Bonus (optional) – RPM-Grundbefehle (selten direkt nötig)
| Befehl | Wirkung |
|---|---|
rpm -qa | liste alle installierten Pakete |
rpm -qi PAKET | prüft, ob ein Paket installiert ist, zeigt Infos |
rpm -qpi datei.rpm | Infos zu einer paket-Datei (nicht installiert) |
rpm -qpl datei.rpm | was würde dieses Paket installieren? (liste) |
rpm -ivh datei.rpm | lokales Paket installieren (install verbose hash) |
rpm -K datei.rpm | Signatur prüfen |
Faustregel: wenn das
Paket aus einem Repo kommt → dnf. Wenn du ein einzelnes
.rpm-File hast (z.B. heruntergeladen von einer Hersteller-Seite)
→ rpm -ivh oder auch dnf install ./datei.rpm
(kann dnf auch).
Lab 3.4 — Werkzeugkasten selbst installieren
Selbstständig · 30 minBetreff: Mach dir deinen Werkzeugkasten
Hi Tim,
auf der Minimal-Installation fehlt einiges, was Admins täglich brauchen. Statt dir eine Einkaufsliste zu geben, beschreibe ich dir die Aufgaben, für die du Tools brauchst — und du suchst dir selbst die passenden Pakete:
- Du willst Prozesse besser beobachten als mit dem
eingebauten
top— mit Farben, Mauszeiger, F-Tasten. - Du brauchst eine Möglichkeit, Verzeichnis-Strukturen als Baum zu visualisieren — gut für Dokumentation und schnelle Übersicht.
- Du willst Dateien aus dem Web ziehen können (Klassiker, wirst du in vielen Anleitungen sehen).
- Prüf außerdem kurz, ob
nanoschon installiert ist — als Fallback-Editor sollte er da sein.
Lern dabei dnf kennen. Such selbst mit
dnf search, was passt. Du wirst dnf ab nächster
Woche ständig brauchen.
— Markus
Dieser Teil ist Bonus — bearbeite ihn, wenn du mit den Pflichtteilen fertig bist.
„Du weißt noch nicht, welche Tools dir Markus eigentlich meint. Such selbst — bevor du blind installierst."
Verschaff dir Überblick: Was ist installiert? Dann finde mit
dnf search und dnf info die Pakete für Markus'
drei Aufgaben. Notiere dir die Paketnamen — installieren kommt in
Phase 2.
💡 Hint 1 — Wie sehe ich, was schon installiert ist?
rpm -qa listet alle installierten Pakete. Mit
| wc -l zählst du sie. Mit rpm -qi PAKETNAME
prüfst du gezielt ein einzelnes Paket.
💡 Hint 2 — Wie suche ich nach Paketen?
dnf search STICHWORT. Beispiel: dnf search process
findet alle Pakete, die im Namen oder in der Beschreibung „process"
enthalten. dnf info PAKETNAME zeigt dir Details.
💡 Hint 3 — Welche Pakete passen zu Markus' drei Aufgaben?
Stichworte, die helfen: für Prozesse → such nach „interactive process viewer"; für Verzeichnis-Baum → der Paketname ist sehr kurz und sagt es direkt; für Web-Download → ebenfalls sehr klassischer kurzer Name.
# 1) Was ist installiert?
rpm -qa | wc -l
# → meist 400–600 bei Minimal-Install
# 2) Nano-Status prüfen
rpm -qi nano
# Wenn installiert: zeigt Version, Größe, Beschreibung
# Wenn nicht: "package nano is not installed"
# 3) Suchen nach passenden Tools
dnf search "network scanner"
# → nmap.x86_64 : Network exploration tool and security scanner
dnf search tree
# → tree.x86_64 : File system tree viewer
dnf search wget
# → wget.x86_64 : A utility for retrieving files using HTTP, HTTPS, and FTP
# 4) Details ansehen, bevor du installierst
dnf info nmap
# Zeigt: Version, Architektur, Größe (Download + installiert),
# Repository, Beschreibung
Erklärung:
dnf search durchsucht Paketnamen UND -beschreibungen —
deshalb findet er auch Pakete, deren Name nicht das Stichwort
enthält.
„Markus erwartet, dass du nicht blind klickst. Jeder erfahrene Admin liest, was bei einem install mitkommt — bevor er bestätigt."
Installier die in Phase 1 gefundenen Tools. Vor dem Bestätigen mit y die Abhängigkeitsliste lesen — du musst dich daran gewöhnen, was du dem System hinzufügst. Dann probiere die Tools aus.
💡 Hint 1 — Wie installiere ich ein Paket?
sudo dnf install PAKETNAME. Achtung: ohne sudo
geht's nicht (Schreibrechte in /usr). Mehrere Pakete in einem Befehl:
sudo dnf install p1 p2 p3.
💡 Hint 2 — Soll ich -y benutzen?
Lieber nicht beim ersten Mal — du sollst die Abhängigkeiten sehen.
-y ist für Skripte/Automatisierung, nicht für interaktives
Lernen.
💡 Hint 3 — Wie sehe ich nmap und tree in Aktion?
Nach Installation: nmap --version starten, oder nmap localhost
ausführen, um einen kurzen Scan zu testen. tree -L 2 /etc/ zeigt die ersten zwei
Verzeichnis-Ebenen — beeindruckend! Für wget: einfach
wget --version.
# 1) Installieren (mehrere in einem Befehl)
sudo dnf install nmap tree wget
# Lies die Liste der Abhängigkeiten!
# Bestätige mit y
# Falls nano noch fehlt, jetzt nachinstallieren
sudo dnf install nano
# 2) nmap ausprobieren — vergleiche mit den anderen Werkzeugen
nmap --version
# Zeigt die installierte Version und bestätigt, dass das Tool da ist
# 3) tree mit /etc/-Beispiel (beeindruckender als ~)
tree -L 2 /etc/
# Zeigt erste zwei Ebenen unter /etc
# 4) wget testen
wget --version
# Zeigt installierte Version
Erklärung: nmap
ist ein klassischer Netzwerkscanner für Service-Discovery und
Host-Erkennung. nmap --version zeigt dir, dass das Tool
installiert ist. Der Trick tree -L 2 zeigt nur die
obersten zwei Ebenen — bei /etc/ schon eindrucksvoll.
„Ab Montag wirst du das wöchentlich machen: schauen, was es an Updates gibt, gezielt einspielen, gelegentlich aufräumen."
Jetzt das Pflicht-Repertoire jedes Admins: Prüfen, welche Updates verfügbar sind. Ein Paket gezielt aktualisieren. Ein Paket entfernen und wieder installieren.
💡 Hint 1 — Wie sehe ich, welche Updates verfügbar wären?
dnf check-update — listet auf, was sich aktualisieren ließe,
ohne etwas zu installieren. Read-only, völlig harmlos.
💡 Hint 2 — Wie aktualisiere ich nur ein bestimmtes Paket?
sudo dnf update PAKETNAME aktualisiert nur dieses eine,
ohne System-weites Update.
💡 Hint 3 — Wie entferne ich ein Paket sauber?
sudo dnf remove PAKETNAME. dnf prüft Abhängigkeiten und
warnt, falls andere Pakete darauf angewiesen wären. (Nicht
rpm -e — das ignoriert Abhängigkeiten!)
# 1) Was wäre verfügbar?
dnf check-update
# Listet alle Pakete mit verfügbarem Update.
# Gibt Exit-Code 100 zurück, wenn Updates da sind, 0 wenn nicht.
# 2) Gezielt ein Paket aktualisieren (kein System-Update!)
sudo dnf update tree
# Nur tree, nichts anderes
# (Falls "Nothing to do" — schon aktuell, normal)
# 3) Entfernen und wieder installieren
sudo dnf remove tree
# y bestätigen
# Prüfen: wirklich weg?
rpm -qi tree
# → "package tree is not installed"
# Wieder installieren, diesmal mit -y (zum Üben)
sudo dnf install -y tree
# Läuft durch ohne Rückfrage
Erklärung:
dnf check-update ist deine erste Aktion vor jedem
Update-Tag — du siehst sofort, was kommen würde. Im echten
Produktivbetrieb macht man danach sudo dnf update für alles
auf einmal, idealerweise in einem Wartungsfenster.
Wir haben hier nicht sudo dnf update ohne
Paketnamen ausgeführt — das würde alle Pakete des Systems aktualisieren.
In Rocky 9 sind das oft hunderte MB Download und 5–15 Minuten Zeit.
Auf einem Produktivserver macht man das nur in Wartungsfenstern.
Im Lab sparen wir uns das, damit du die anderen Aufgaben in Ruhe
fertig bekommst.
Bonus: erkunde die History und die Gruppen.
- History:
dnf historyzeigt alle dnf-Transaktionen. Schau dir die letzte Transaktion genauer an mitdnf history info last. - Gruppen: Liste Paket-Gruppen mit
dnf group list. Was zeigt das? - Repo-Info: Welche Repos sind aktiviert?
dnf repolist. - Welches Paket bringt einen Befehl mit?
dnf provides /usr/bin/nmap— sagt dir, aus welchem Paket eine Datei kommt. Sehr nützlich!
# 16) History
dnf history
dnf history info last
# Zeigt: was installiert/entfernt wurde, wann, von wem
# 17) Gruppen
dnf group list
# z.B. "Server with GUI" (damit kannst du eine grafische Oberfläche
# nachinstallieren, falls du sie brauchst),
# "Development Tools", "Minimal Install"
# 18) Repo-Liste
dnf repolist
# Meist: baseos, appstream, extras
# 19) Welches Paket liefert einen Befehl?
dnf provides /usr/bin/nmap
# → nmap.x86_64 oder nmap selbst
Top! Du kannst jetzt eigenständig Software installieren,
aktualisieren und entfernen. Das ist der zentrale Selbstständigkeits-Punkt
— ab jetzt musst du nicht mehr fragen „wie installiere ich X?".
Du machst dnf search X und dann sudo dnf install X.
Fertig.
Typische Anfänger-Fehler
Vorsichtdnf install ohne sudoInstallieren braucht Schreibrechte in /usr/ — die hat
nur root. Ohne sudo bekommst du „Permission denied"
oder „Operation not permitted". Suchen und Infos
(search, info, list) geht ohne sudo — Schreiben
(install, remove, update) braucht sudo.
dnf install -y ALLESDie -y-Option ist praktisch für Skripte, aber gefährlich
im interaktiven Gebrauch. Du siehst die Liste der Abhängigkeiten
nicht mehr und bestätigst alles blind. Erst lesen, dann
bestätigen. Manche Pakete ziehen 100 MB Abhängigkeiten
nach — gut zu wissen, BEVOR es passiert.
rpm -e entfernenrpm -e (erase) löscht ein Paket, ohne Abhängigkeiten
zu prüfen. Wenn andere Pakete davon abhängen, kann das System
kaputtgehen. Immer dnf remove nehmen —
das prüft Abhängigkeiten und warnt.
dnf nutzt einen Lock — du kannst nicht zwei dnf install
gleichzeitig laufen lassen. Fehlermeldung „Another app is currently
holding the yum lock". Lösung: warten, bis der
erste fertig ist, oder mit ps aux | grep dnf schauen,
welcher hängt.
Kontrollfragen zum Kapitel
Selbst-Check- Du willst wissen, ob ein bestimmtes Paket installiert ist. Welcher Befehl?
- Was ist der Unterschied zwischen
dnf check-updateunddnf update? - Du hast ein lokales
.rpm-File heruntergeladen. Wie installierst du es — und was ist sicherer:rpm -ivhoderdnf install ./datei.rpm? - Warum braucht
dnf installeinsudo,dnf searchaber nicht? - Du willst sehen, welche Repositories deinem System verfügbar sind. Welcher Befehl?
- Was ist der Unterschied zwischen
dnf removeundrpm -e?
rpm -qi PAKETNAME— zeigt Infos, falls installiert, sonst „package … is not installed".dnf check-updatezeigt nur, welche Updates verfügbar wären (read-only, ändert nichts).dnf updateinstalliert sie tatsächlich (braucht sudo).- Mit
sudo dnf install ./datei.rpm— das ist sicherer alsrpm -ivh, weil dnf die Abhängigkeiten auflöst und fehlende Pakete aus den Repos nachzieht.rpm -ivhinstalliert nur die eine Datei und scheitert (oder lässt das System inkonsistent), wenn Abhängigkeiten fehlen. - Suchen ändert nichts am System (nur Lese-Zugriff auf Metadaten).
Installieren schreibt in
/usr/— dafür braucht es Root-Rechte (sudo). dnf repolist— zeigt die aktivierten Repositories (meist baseos, appstream, extras).dnf removeprüft Abhängigkeiten und warnt, wenn andere Pakete davon abhängen.rpm -elöscht ohne Prüfung — kann das System beschädigen.