====== 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: * **README** - Grundlegende Informationen zum Paket * **README.Debian** / **README.SUSE** - Distributionsspezifische Hinweise * **CHANGELOG** / **changelog.gz** - Änderungshistorie * **TODO** - Geplante Funktionen * **NEWS** - Wichtige Neuigkeiten * **COPYING** / **LICENSE** - Lizenzinformationen * **examples/** - Beispiel-Konfigurationen * **html/** - HTML-Dokumentation ==== 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**: Die Hauptdokumentation ist das [[https://wiki.archlinux.org/|Arch Wiki]] (online) * **arch-wiki-docs**: Ermöglicht Offline-Zugriff auf das Arch Wiki * **Paket-Dokumentation**: Die meisten Pakete legen Dokumentation in ''/usr/share/doc/'' ab * **AUR**: Viele Dokumentationspakete sind nur im AUR verfügbar **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 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 ===== * **Erst lokal suchen**: Bevor Sie online suchen, prüfen Sie ''/usr/share/doc/'' * **README zuerst**: README-Dateien enthalten oft wichtige distributionsspezifische Hinweise * **Beispiele nutzen**: Beispiel-Konfigurationen sind gute Ausgangspunkte * **Komprimierte Dateien**: Nutzen Sie ''zless'', ''zcat'', ''zgrep'' für .gz-Dateien * **Changelog lesen**: Bei Problemen nach Updates Changelog prüfen * **man + /usr/share/doc**: Beide Quellen ergänzen sich ===== 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 -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: * **The Linux Documentation Project**: https://tldp.org/ * **Debian Documentation**: https://www.debian.org/doc/ * **Ubuntu Documentation**: https://help.ubuntu.com/ * **Arch Wiki**: https://wiki.archlinux.org/ * **Fedora Docs**: https://docs.fedoraproject.org/ * **openSUSE Documentation**: https://doc.opensuse.org/ ===== Siehe auch ===== * [[sammlung:man_apropos|Man und Apropos]] * [[sammlung:bash_kommandos|Bash Kommandos]] * [[sammlung:wichtige_konfigurationsdateien|Wichtige Konfigurationsdateien]] * [[sammlung:paketmanagement|Paketverwaltung]] * [[sammlung:workshop_pakete|Workshop Paket-Installation]] ===== 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/ ---- {{tag>cli help}} ----