Man pages

Aus Linupedia.org
Version vom 21. Mai 2007, 08:40 Uhr von OmasEnkel (Diskussion | Beiträge) (LINUX-Hilfesystem im Überblick)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Hilfe unter LINUX

Angesicht der unzähligen Programme und Tools in Linux und deren Mannigfaltigkeit der Optionen braucht man ein leistungsfähiges Hilfesystem


LINUX-Hilfesystem im Überblick

1 Programmierte Hilfe:

Die meisten Programme erzeugen bei falschem Aufruf eine kurzen Hilfetext.
Dieser kann auch meist mit mit der Option --help oder -h erzeugt werden.

2 Handbuchseiten oder ManPages

Fast jedes Programm, ein Vielzahl von Konfigurationsdateien, System- und Bibliotheksaufrufe haben Handbuchseiten. Sie werden meist mit dem Programm mitinstalliert. Diese liegen in einem speziellem Format nach Sektionen sortiert mit einer definierten Gliederung in verschiedenen Verzeichnissen.
Es gibt eine Indexdatei und einen Suchpath sowie eine Listorder.
Die Manpages können zur Anzeige in verschiedene Formate transformiert werden

3 Info-Seiten

Nach dem Prinzip von Hypertext aufgebautes Infosystem für einige Befehle.
Sie sind für einige Befehle wesentlich umfangreicher als die Manpages. Allerdings haben sie den Nachteil,dass sie meist auf der Kommandozeile abzurufen sind und für Neulinge schwer bedienbar sind.
Kann aber auch zB über den Konqueror angezeigt werden.

4 HOWTOs

nicht Einzelkommandos sondern komplette Lösungen
zum Teil mit auf dem Rechner installiert
HOWTOs in verschieden Formaten

5 lokale Dokumentationen

typischerweise Paketdokumentation und Beispieldateien
oft unter /usr/share/doc /usr/share/doc/packages /usr/src/linux/Documentation

6 Informationen im Internet

Handbuchseiten

Aufruf der Manpage zur Anzeige der Hilfedatei

  • der häufigste Aufruf auf der Kommandozeile
man KommandoName
  • Im Konqueror man:Kommandoname im URL-Eingabefeld
  • weiter Möglichkeiten xman emacs und viele andere



Häufig benötigte Aufrufe rund um Manpages

* man -a KommandoName             #alle Handbuchseiten aller Sektionen
* man ? KommandoName              #nur Seiten der Sektion ?
* man -l ./KommandoName.1.gz      #Anzeigen des Inhaltes einer Manpagedatei
* man -t KommandoName | DRUCKER   #Seite wird in Postscript umgewandelt und zum DRUCKER gesendet
* apropos Kommando                #Liste aller Manpages mit "Kommando" im Beschreibung oder Name
* whatis Kommando                 #sucht wie apropos doch nur im Namen ; gibt Beschreibung als Text aus
* mandb                           #aktualisieren der Datenbank
* echo $MANPATH                   #Ausgabe des SuchPath der Manpages

mit der Option -L LANG-Umgebung können wir versuchen die Anzeigereihenfolge der verschiedene Sprachen zu beeinflussen. Normalerweise sollten die SuSE Rechner so konfiguriert sein, das wenn Deutsche Einstellungen an den Umgebungsvariable gesetzt sind, sollte es deutsche Manpages zum Suchbegriff geben sollte, diese Vorrang vor der Englischen Manpages haben sollten. Es ist aber so, dass es den überwiegende Teil der Manpages nur in Englisch gibt.

man -Lde man    # sollte die deutschen manpage von man(1) anzeigen
man -Len man    # sollte die englische Manpage von man(1) anzeigen



Manpages in anderes Format übertragen

# man ls | rman > ./man_ls.txt             # erzeugt Textdatei von Manpage ls(1)
# man -T ls | ps2pdf - > ./man-ls.pdf      # erzeugt eine PDF-Datei von ls(1)
# man -T ls > ./man-ls.ps                  # erzeugt eine PostSkript-Datei von ls(1)
# man ls | rman -f html > ./man-ls.html    # erzeugt eine html-Datei von ls(1)



Der innere Gliederung der Manpage

Manpages besteht aus mehreren Teilen. Die üblichen Bezeichnungen der Abschnitte sind

  NAME,  SYNTAX,  BESCHREIBUNG, OPTIONEN, DATEIEN, SIEHE AUCH, FEHLER, und AUTOR.

bzw.

  NAME, SYNOPSIS, DESCRIPTION, OPTIONS, FILES, SEE ALSO, BUGS, and AUTHOR.




Die Sektionen oder Abschnitte

Die einzelnen Handbuchseiten werden in Sektionen gegliedert auf dem Rechner abgelegt. Anhand der Sektion der Manpage kann man erkennen, um welchen inhaltlichen Zusammenhang es sich bei dieser Manpage handelt.


Die wichtigsten Sektionen (Abschnitte) in folgender Tabelle

       1   Ausführbare Programme oder Shellbefehle
       2   Systemaufrufe (Kernelfunktionen)
       3   Bibliotheksaufrufe (Funktionen in System-Bibliotheken)
       4   Spezielle Dateien (gewöhnlich in /dev)
       5   Dateiformate und Konventionen, z. B. /etc/passwd
       6   Spiele
       7   Makropakete und Konventionen, z. B. man(7), groff(7)
       8   Systemadministrationsbefehle (in der Regel nur für root)
       9   Kernelroutinen [Nicht Standard]
       n   neu [veraltet]
       l   lokal [veraltet]
       p   öffentlich [veraltet]
       o   alt [veraltet]

Anhand der Sektion kann man also feststellen ob es sich um eine Beschreibung eines Kommandos oder zB um die Beschreibung einer Kernelfunktion, oder um die Beschreibung eines Admin Befehls handelt.

Anhand der Ausgabe von zB apropos kann man sofort sehen um was es sich bei dieser Manpage handelt

# apropos umount
umount (2)           - mount and unmount filesystems
smbumount (8)        - smbfs umount for normal users
umount (8)           - unmount file systems
umount2 (2)          - mount and unmount filesystems

Um also Informationen über das Admin Kommando umount zu erhalten, müssen wir uns die umount (8) Datei ansehen



Beispiel für Benutzung

  • Wir möchten gerne wissen was die einzelnen Felder in der /etc/passwd für Bedeutung haben.


man passwd liefert uns eine passwd(1) Manpage mit der Beschreibung zum ändern des Passwortes
man -a passwd es werden uns mehrere Manpages nacheinander ausgegeben erst die letzte passwd(5) ist die gesuchte
man 5 passwd wir erhalten sofort die Manpage mit der Beschreibung der Konfigurationsdatei gleichen Namens



Handbuchseiten im WWW



Zurück zu Allgemeines