Manpages
Manpages (Manual Pages) sind ein zentrales Hilfsmittel in Unix-ähnlichen Betriebssystemen wie Linux, um Informationen zu verschiedenen Programmen, Befehlen, Systemaufrufen, Dateiformaten und mehr bereitzustellen. Manpages sind eine Art von Dokumentation, die direkt in Terminal angezeigt werden können. Sie sind in verschiedene Sektionen unterteilt, wobei jede Sektion eine spezifische Art von Information abdeckt.
Aufbau von Manpages
Manpages werden über den Befehl man aufgerufen, gefolgt von dem Namen des Befehls oder der Funktion, über die man Informationen erhalten möchte.
man ls
Dieser Befehl zeigt die Manpage für den Befehl ls
an.
Grundstruktur einer Manpage
Eine typische Manpage besteht aus mehreren Abschnitten (Sections), die in einer bestimmten Reihenfolge angezeigt werden. Die genaue Struktur kann je nach Programm variieren, aber oft findet man folgende Standardabschnitte.
- NAME: Der Name des Programms oder Befehls und seine kurze Beschreibung
- SYNOPSIS: Eine Übersicht über die Nutzungssyntax, oft in einer formalen Notation, die die verfügbaren Optionen und Argumente zeigt.
- DESCRIPTION: Eine detaillierte Beschreibung dessen, was der Befehl oder das Programm tut.
- OPTIONS: Eine Liste der verfügbaren Optionen und deren Bedeutung.
- EXIT STATUS: Informationen darüber, welche Rückgabewerte der Befehl liefert und was diese bedeuten.
- RETURN VALUE: Ähnlich wie EXIT STATUS, aber spezifisch für Systemaufrufe und Bibliotheksfunktionen.
- ENVIRONMENT: Eine Liste der Umgebungsvariablen, die das Verhalten des Programms beeinflussen.
- FILES: Wichtige Dateien, die mit dem Befehl oder Programm verknüpft sind.
- EXAMPLES: Anwendungsbeispiele, die häufige Anwendungsfälle demonstrieren.
- SEE ALSO: Verweise auf verwandte Manpages oder Dokumentationen
- BUGS: Informationen über bekannte Fehler oder Probleme.
- AUTHOR: Informationen über den Autor oder die Autoren des Programms oder Befehls.
- COPYRIGHT: Informationen über Urheberrechte und Lizenzierung.
Sektionen (Sections) in Manpages
Manpages sind in verschiedene Sektionen unterteilt, wobei jede Sektion einen spezifischen Bereich des Systems oder der Dokumentation abdeckt. Diese Sektionen werden oft durch eine Zahl angegeben und dieselbe Zahl wird auch im man Befehl verwendet, um explizit eine Manpage in einer bestimmten Sektion aufzurufen.
Wichtig
- Manpages für die Systemaufrufe sind nicht installiert: Auf vielen Linux-Systemen sind die Manpages für Systemaufrufe und Bibliotheksfunktionen in separaten Paketen enthalten, die möglicherweise nicht standardmäßig installiert sind.
- Unterschiedliche Betriebssysteme oder Distributionen: Nicht alle Linux-Distributionen enthalten dieselben Manpages. Zum Beispiel können Manpages für bestimmte Systemaufrufe in minimalistischen oder speziell zugeschnittenen Systemen fehlen.
Um sicherzustellen, dass man die Manpages für Systemaufrufe (bsp. Sektion 2) hat, kann man versuchen, das Paket zu installieren, das diese Manpages bereitstellt. In Debian-basierten Distributionen wie Ubuntu wäre typischerweise das Paket manpages-dev
.
sudo apt install manpages-dev
Sektion 1: Benutzerbefehle
Diese Sektion beschreibt ausführbare Programme und Shell-Befehle, die von normalen Benutzern verwendet werden können.
Beispiel: man 1 ls
Sektion 2: Systemaufrufe
Diese Sektion beschreibt Systemaufrufe (System Calls), die von dem Kernel bereitgestellt werden.
Beispiel: man 2 open
Sektion 3: Bibliotheksfunktionen
Diese Sektion behandelt Funktionen aus der Standard-C-Bibliothek (libc
) und anderen Programmbibliotheken.
Beispiel: man 3 printf
Sektion 4: Geräte und spezielle Dateien
Diese Sektion beschreibt spezielle Dateien, in der Regel Geräte (Device Files) im /dev
Verzeichnis.
Beispiel: man 4 tty
Sektion 5: Dateiformate und Konfiguration
Diese Sektion behandelt die Formate von Dateien und Konfigurationsdateien.
Beispiel: man 5 passwd
Sektion 6: Spiele und Unterhaltung
Diese Sektion enthält Dokumentation zu Spielen und anderen Programmen für Zeitvertrieb.
Sektion 7: Übergreifende Themen und Makropakete
Diese Sektion behandelt verschiedene themenübergreifende Dokumentationen wie Makropakete, Konventionen und Standards.
Beispiel: man 7 man
Sektion 8: Systemadministration
Diese Sektion enthält Befehle und Daemons, die üblicherweise nur von Administratoren verwendet werden.
Beispiel: man 8 iptables
Sektion 9: Kernel-Routinen
(Nicht auf allen Systemen vorhanden) Diese Sektion beschreibt die Kernel-Interna, die für die Entwicklung von Treibern und Kernel-Funktionen relevant sind.
Installation von Manpages
Auf vielen Distributionen sind Manpages standardmäßig installiert, jedoch manchmal nicht vollständig oder nur eingeschränkt vorhanden.
Debian/Ubuntu
Um allgemeine Manpages zu installieren.
sudo apt update
sudo apt install man manpages man-db manpages-dev
Fall man Manpages in Deutsch installieren möchte:
sudo apt install manpages-de manpages-de-dev
Fedora / CentOS / RHEL
Hier wird der dnf
Paketmanager verwendet.
sudo dnf install man man-pages man-db
Optionale zusätzliche Dokumentation.
sudo dnf install man-pages-de
Arch Linux
Auf Arch-basierten Linux-Distributionen wird pacman
Paketmanager verwendet.
sudo pacman -S man-db man-pages
Um zusätzlich deutsche Manpages zu installieren.
sudo pacman -S man-pages-de