Inhaltsverzeichnis

Linux Dokumentation: /usr/share/doc und HOWTOs

Linux-Systeme enthalten umfangreiche lokale Dokumentation in Form von README-Dateien, Beispiel-Konfigurationen, HOWTOs und Changelogs. Diese liegen standardmäßig in /usr/share/doc/.

Das /usr/share/doc Verzeichnis

Übersicht

# Verzeichnis anzeigen
ls /usr/share/doc/

# Beispiel-Ausgabe:
apache2/
nginx/
mysql-server/
ssh/
systemd/

Jedes installierte Paket kann hier ein Unterverzeichnis mit Dokumentation ablegen:

Beispiele

# Dokumentation für Apache anzeigen
ls -la /usr/share/doc/apache2/

# README lesen
less /usr/share/doc/apache2/README.Debian.gz
zless /usr/share/doc/apache2/README.Debian.gz  # Für .gz Dateien

# Changelog anzeigen
zless /usr/share/doc/apache2/changelog.Debian.gz

# Beispiel-Konfigurationen
ls /usr/share/doc/apache2/examples/

# Nach bestimmter Dokumentation suchen
find /usr/share/doc/ -name "README*" -type f

# Alle Beispiel-Verzeichnisse finden
find /usr/share/doc/ -name "examples" -type d

HOWTOs und Anleitungen

Viele Distributionen bieten zusätzlich das Linux Documentation Project (LDP) mit umfangreichen HOWTOs.

Installation der HOWTOs

Debian / Ubuntu / Linux Mint

# Basis-Dokumentation ist bereits vorhanden
# Zusätzliche HOWTOs installieren:
sudo apt update
sudo apt install -y doc-linux-text
sudo apt install -y doc-linux-html

# Weitere Dokumentationspakete
sudo apt install -y debian-reference-de       # Debian-Referenz (Deutsch)
sudo apt install -y debian-reference-en       # Debian-Referenz (Englisch)
sudo apt install -y debian-handbook           # Debian Administrator's Handbook

# Speziell für Entwickler
sudo apt install -y manpages-dev              # Entwickler-Manpages
sudo apt install -y manpages-posix-dev        # POSIX-Manpages

# Nach Installation verfügbar in:
ls /usr/share/doc/HOWTO/

Verfügbare Pakete:

Paket Inhalt
doc-linux-text LDP HOWTOs im Textformat
doc-linux-html LDP HOWTOs im HTML-Format
debian-reference-de Debian-Referenz Deutsch
debian-reference-en Debian-Referenz Englisch
debian-handbook Debian Administrator's Handbook
doc-debian Debian-spezifische Dokumentation

openSUSE / SUSE Linux Enterprise

# System aktualisieren
sudo zypper refresh

# HOWTOs installieren
sudo zypper install -y tldp-howto-text
sudo zypper install -y tldp-howto-html

# SUSE-spezifische Dokumentation
sudo zypper install -y opensuse-manuals_en    # Englisch
sudo zypper install -y opensuse-manuals_de    # Deutsch

# Weitere Dokumentation
sudo zypper install -y man-pages              # Standard Manpages
sudo zypper install -y man-pages-posix        # POSIX Manpages

# Nach Installation verfügbar in:
ls /usr/share/doc/howto/
ls /usr/share/doc/packages/

Verfügbare Pakete:

Paket Inhalt
tldp-howto-text LDP HOWTOs im Textformat
tldp-howto-html LDP HOWTOs im HTML-Format
opensuse-manuals_en openSUSE Handbücher Englisch
opensuse-manuals_de openSUSE Handbücher Deutsch
suse-doc-sle SUSE Linux Enterprise Dokumentation

Fedora / RHEL / Rocky / Alma

# System aktualisieren
sudo dnf update -y

# HOWTOs installieren (aus EPEL)
# EPEL Repository aktivieren (wenn noch nicht aktiv)
sudo dnf install -y epel-release

# LDP HOWTOs
sudo dnf install -y howto-html
sudo dnf install -y howto-text

# Weitere Dokumentation
sudo dnf install -y man-pages                 # Standard Manpages
sudo dnf install -y man-pages-posix           # POSIX Manpages

# Fedora/RHEL-spezifische Dokumentation ist oft online verfügbar
# Lokale Dokumentation in /usr/share/doc/

# Nach Installation verfügbar in:
ls /usr/share/doc/

Verfügbare Pakete:

Paket Inhalt
howto-html LDP HOWTOs im HTML-Format
howto-text LDP HOWTOs im Textformat
man-pages Standard Manual Pages
man-pages-posix POSIX Manual Pages

Hinweis: Bei RHEL/CentOS/Rocky/Alma ist oft das EPEL-Repository erforderlich:

# RHEL 8/9
sudo dnf install -y epel-release

# CentOS Stream
sudo dnf config-manager --set-enabled crb
sudo dnf install -y epel-release epel-next-release

Arch Linux / Manjaro

# System aktualisieren
sudo pacman -Syu

# Standard-Dokumentation
sudo pacman -S man-pages              # Standard Manpages
sudo pacman -S man-pages-de           # Deutsche Manpages
sudo pacman -S texinfo                # GNU Info-Dokumentation

# Entwickler-Dokumentation
sudo pacman -S man-pages-posix        # POSIX Manpages (falls verfügbar)

# Arch Linux Wiki offline (optional)
# arch-wiki-docs ist im AUR verfügbar
yay -S arch-wiki-docs
# oder
paru -S arch-wiki-docs

# LDP HOWTOs installieren (aus AUR)
# yay oder einen anderen AUR-Helper verwenden:
yay -S tldp-howtos

# Oder manuell aus AUR:
git clone https://aur.archlinux.org/tldp-howtos.git
cd tldp-howtos
makepkg -si

# Nach Installation verfügbar in:
ls /usr/share/doc/
ls /usr/share/doc/tldp/              # LDP HOWTOs (wenn installiert)

Verfügbare Pakete:

Paket Repository Inhalt
man-pages Official Standard Manual Pages
man-pages-de Official Deutsche Manual Pages
texinfo Official GNU Info-System
arch-wiki-docs AUR Arch Wiki offline
tldp-howtos AUR LDP HOWTOs

Besonderheiten bei Arch Linux:

Arch Wiki offline nutzen:

# Nach Installation von arch-wiki-docs
# HTML-Dateien in: /usr/share/doc/arch-wiki/html/
 
# Im Browser öffnen
firefox /usr/share/doc/arch-wiki/html/en/Main_page.html
 
# Oder mit w3m
w3m /usr/share/doc/arch-wiki/html/en/Main_page.html
 
# Nach Artikeln suchen
find /usr/share/doc/arch-wiki/html/en/ -name "*systemd*"

Dokumentation durchsuchen

Alle README-Dateien finden

# Alle README-Dateien auflisten
find /usr/share/doc/ -name "README*" 2>/dev/null

# Nur für ein bestimmtes Paket
ls /usr/share/doc/apache2/README*

# README durchsuchen (auch in .gz Dateien)
zgrep -i "virtual host" /usr/share/doc/apache2/*.gz

Komprimierte Dateien lesen

Viele Dokumentationsdateien sind komprimiert (.gz), um Speicherplatz zu sparen.

# Mit zless (wie less, aber für .gz)
zless /usr/share/doc/systemd/README.gz

# Mit zcat (wie cat, aber für .gz)
zcat /usr/share/doc/nginx/changelog.Debian.gz

# Mit zgrep (wie grep, aber für .gz)
zgrep "error" /usr/share/doc/*/README*.gz

# Dekomprimieren und anzeigen
gunzip -c /usr/share/doc/ssh/README.gz | less

HOWTOs durchsuchen

# Debian/Ubuntu
ls /usr/share/doc/HOWTO/en-txt/    # Text-Format
ls /usr/share/doc/HOWTO/en-html/   # HTML-Format

# Spezielles HOWTO finden
find /usr/share/doc/ -iname "*network*howto*"

# HOWTO lesen
less /usr/share/doc/HOWTO/en-txt/Networking-Overview-HOWTO

# Im Browser öffnen (HTML-Version)
firefox /usr/share/doc/HOWTO/en-html/Network-Install-HOWTO.html

# Mit w3m im Terminal lesen
w3m /usr/share/doc/HOWTO/en-html/Apache-Overview-HOWTO.html

Beispiel-Konfigurationen finden

# Alle example-Verzeichnisse finden
find /usr/share/doc/ -type d -name "examples" 2>/dev/null

# Für ein bestimmtes Paket
ls -la /usr/share/doc/nginx/examples/
ls -la /usr/share/doc/apache2/examples/

# Beispiel-Konfiguration kopieren
sudo cp /usr/share/doc/nginx/examples/nginx.conf /etc/nginx/sites-available/mysite

# Alle Konfigurationsbeispiele durchsuchen
find /usr/share/doc/ -name "*.conf" -o -name "*.cfg" -o -name "*.sample" 2>/dev/null

Praktische Beispiele

Apache Dokumentation durchsuchen

# Alle Apache-Dokumente anzeigen
ls -R /usr/share/doc/apache2/

# README für Debian/Ubuntu lesen
zless /usr/share/doc/apache2/README.Debian.gz

# Changelog anschauen
zless /usr/share/doc/apache2/changelog.Debian.gz

# Virtual Host Beispiele
ls /usr/share/doc/apache2/examples/

# Nach "SSL" in allen Dokumenten suchen
zgrep -r "SSL" /usr/share/doc/apache2/

Systemd Dokumentation

# Systemd Dokumentation anzeigen
ls /usr/share/doc/systemd/

# README lesen
zless /usr/share/doc/systemd/README.gz

# Nach Unit-Files suchen
find /usr/share/doc/systemd/ -name "*.service" -o -name "*.timer"

# Beispiele für Timer
ls /usr/share/doc/systemd/examples/

SSH Dokumentation

# SSH Dokumentation
ls /usr/share/doc/openssh-server/
ls /usr/share/doc/openssh-client/

# README lesen
less /usr/share/doc/openssh-server/README
zless /usr/share/doc/openssh-server/README.Debian.gz

# Beispiel-Konfigurationen
ls /usr/share/doc/openssh-server/examples/

Netzwerk-HOWTOs

# Netzwerk-bezogene HOWTOs finden (nach Installation von doc-linux-text)
ls /usr/share/doc/HOWTO/en-txt/ | grep -i network

# Beispiele:
# - Network-Install-HOWTO
# - Networking-Overview-HOWTO
# - Wireless-HOWTO
# - VPN-HOWTO

# Lesen
less /usr/share/doc/HOWTO/en-txt/Networking-Overview-HOWTO

Dokumentation nach Themen

System-Administration

# Relevante Pakete:
/usr/share/doc/systemd/
/usr/share/doc/cron/
/usr/share/doc/rsyslog/
/usr/share/doc/sudo/

# HOWTOs:
ls /usr/share/doc/HOWTO/en-txt/ | grep -E "(System|Admin|Security)"

Netzwerk

# Relevante Pakete:
/usr/share/doc/iproute2/
/usr/share/doc/iptables/
/usr/share/doc/network-manager/
/usr/share/doc/bind9/

# HOWTOs:
ls /usr/share/doc/HOWTO/en-txt/ | grep -E "(Network|Firewall|DNS|VPN)"

Webserver

# Relevante Pakete:
/usr/share/doc/apache2/
/usr/share/doc/nginx/
/usr/share/doc/php/

# HOWTOs:
ls /usr/share/doc/HOWTO/en-txt/ | grep -E "(Apache|Web|PHP)"

Datenbanken

# Relevante Pakete:
/usr/share/doc/mysql-server/
/usr/share/doc/postgresql/
/usr/share/doc/mariadb-server/

# Beispiele:
ls /usr/share/doc/mysql-server/examples/
ls /usr/share/doc/postgresql/examples/

Zusätzliche Dokumentationsquellen

Man-Pages

# Standard Manpages
man <befehl>
man systemd

# Nach Manpages suchen
apropos network
man -k firewall

# Alle Sektionen anzeigen
man -a intro

# Manpage-Verzeichnis
ls /usr/share/man/

Info-Pages

# Info-System verwenden
info
info coreutils
info bash

# Info-Verzeichnis
ls /usr/share/info/

HTML-Dokumentation

# Oft in /usr/share/doc/*/html/
find /usr/share/doc/ -type d -name "html" 2>/dev/null

# Beispiele:
firefox /usr/share/doc/apache2-doc/manual/index.html
firefox /usr/share/doc/php-doc/html/index.html

# Oder mit Textbrowser
w3m /usr/share/doc/apache2-doc/manual/index.html
lynx /usr/share/doc/apache2-doc/manual/index.html

Nützliche Tools

Textbrowser für HTML-Dokumente

# w3m installieren
sudo apt install w3m           # Debian/Ubuntu
sudo zypper install w3m        # openSUSE
sudo dnf install w3m           # Fedora

# Verwendung
w3m /usr/share/doc/HOWTO/en-html/Bash-Beginners-Guide.html

# Links installieren
sudo apt install links links2  # Debian/Ubuntu
links /usr/share/doc/...html

# Lynx installieren
sudo apt install lynx          # Debian/Ubuntu
lynx /usr/share/doc/...html

doc-base System (Debian/Ubuntu)

# doc-base verwaltet Dokumentations-Links
sudo apt install doc-base

# Installierte Dokumentation anzeigen
ls /usr/share/doc-base/

# dwww - Browse-Tool für lokale Dokumentation
sudo apt install dwww
sudo systemctl start dwww

# Im Browser: http://localhost/dwww/

docutils

# Für Textverarbeitung von Dokumenten
sudo apt install python3-docutils

# rst2html - ReStructuredText zu HTML
rst2html input.rst output.html

Best Practices

Häufige Probleme

HOWTOs nicht gefunden

# Prüfen ob Paket installiert ist
dpkg -l | grep doc-linux         # Debian/Ubuntu
rpm -qa | grep howto             # Fedora/RHEL
zypper se --installed-only howto # openSUSE

# Paket installieren (siehe oben)
sudo apt install doc-linux-text doc-linux-html

Verzeichnis leer

# Paket muss installiert sein, damit Dokumentation vorhanden ist
sudo apt install <paketname>-doc

# Beispiel:
sudo apt install apache2-doc
sudo apt install php-doc
sudo apt install mysql-doc

Komprimierte Dateien nicht lesbar

# Tools fehlen - installieren:
sudo apt install gzip less

# Oder dekomprimieren:
gunzip /usr/share/doc/package/README.gz
# Jetzt: less /usr/share/doc/package/README

Online-Ressourcen

Wenn lokale Dokumentation nicht ausreicht:

Siehe auch

Weitere Befehle

# Übersicht über Dokumentation
man hier            # Filesystem Hierarchy Standard
man 7 hier          # Ausführliche Version

# Alle Dokumentationsdateien eines Pakets auflisten
dpkg -L apache2 | grep /usr/share/doc/        # Debian/Ubuntu
rpm -ql httpd | grep /usr/share/doc/          # Fedora/RHEL
rpm -ql apache2 | grep /usr/share/doc/        # openSUSE

# Größe der Dokumentation
du -sh /usr/share/doc/
du -sh /usr/share/doc/apache2/