MANPATH(5) /etc/man_db.conf MANPATH(5)

manpath - formatet för filen /etc/man_db.conf

Konfigurationsfilen för manpath används av verktygen för manualsidor för att bedöma användarnas man-sökvägar i körtid, för att indikera vilka hierarkier av manualsidor (man-sökvägar) som ska hanteras som systemhierarkier och för att tilldela dem kataloger som används för att lagra cat-filer.

Om miljövariabeln $MANPATH redan är satt kommer informationen i /etc/man_db.conf inte att åsidosätta den.

By default, man-db examines the user's $PATH. For each path_element found there, it adds manpath_element to the search path.

If there is no MANPATH_MAP line in the configuration file for a given path_element, then it adds all of path_element/../man, path_element/man, path_element/../share/man, and path_element/share/man that exist as directories to the search path.

It then adds any MANDATORY_MANPATH entries from the configuration file to the search path.

Finally, if the --systems option is used or the $SYSTEM environment variable is set, then that should consist of a sequence of operating system names separated by commas or colons. This acts as a template, expanding the search path once more to allow access to other operating systems' manual pages: for each system name, man-db looks for that name as a subdirectory of each entry in the search path, and adds it to the final search path if it exists. A system name of man inserts the normal search path without subdirectories. For example, if the search path would otherwise have been /usr/share/man:/usr/local/man, and $SYSTEM is set to newOS:man, then the final search path will be /usr/share/man/newOS:/usr/share/man:/usr/local/man/newOS:/usr/local/man.

The $MANPATH environment variable overrides man-db's default manual page search paths. Most users should not need to set it. Its syntax is similar to the $PATH environment variable: it consists of a sequence of directory names separated by colons. It overrides the default search path described above.

If the value of $MANPATH starts with a colon, then the default search path is added at its start. If the value of $MANPATH ends with a colon, then the default search path is added at its end. If the value of $MANPATH contains a double colon (::), then the default search path is inserted in the middle of the value, between the two colons.

Följande fälttyper erkänns för närvarande:

# kommentar
Tomma rader eller de som börjar med ett # kommer att hanteras som kommentarer och ignoreras.
Rader på detta format indikerar man-sökvägar som varje automatiskt genererad $MANPATH bör innehålla. Detta kommer typiskt att inkludera /usr/man.
Rader på detta format ställer in mappningarna från $PATH till $MANPATH. För varje sökvägselement som hittas i användarens $PATH, kommer man-sökvägselement att läggas till i $MANPATH.
Rader på detta format indikerar vilka man-sökvägar som ska behandlas som systemman-sökvägar och valfritt om deras cat-filer bör lagras. Denna fälttyp är särskilt viktig om man är ett setuid-program eftersom (när det finns i systemkonfigurationsfilen /etc/man_db.conf snarare än i användarnas konfigurationsfil .manpath) det indikerar vilka hierarkier av manualsidor som ska nås som setuid-användaren och vilka som ska nås som den anropande användaren.

Systemets hierarkier av manualsidor är vanligtvis de som lagras under /usr så som /usr/man, /usr/local/man och /usr/X11R6/man.

Om cat-sidor från ett visst man-sökvägselement inte ska lagras eller ska lagras på den traditionella platsen kan cat-sökvägselement utelämnas.

Traditionell cat-placering skulle vara omöjlig för skrivskyddade hierarkier av manualsidor och på grund av detta är det möjligt att ange vilken giltig kataloghierarki som helst för att lagra dem. För att vara kompatibel med Linux FSSTND kan nyckelordet FSSTND användas istället för en riktig katalog.

Tyvärr är det nödvändigt att ange alla systemsökvägar för manualträd, inklusive alternativa operativsystemssökvägar så som /usr/man/sun och eventuella NLS-lokal-sökvägar så som /usr/man/de_DE.88591.

Eftersom informationen tolkas rad för rad i den ordning de är skrivna, så är det nödvändigt att först lista den man-sökväg som är underhierarki till en annan hierarki, annars kommer felaktiga matchningar att göras. Ett exempel är att /usr/man/de_DE.88591 måste komma före /usr/man.

Rader på detta format definierar diverse konfigurationsvariabler; se standardkonfigurationsfilen för vilka de variabler är som används av sidvisaren för manualsidor. De inkluderar standardsökvägar till diverse program (så som grep och tbl), och standarduppsättningar av argument för dessa program.
Rader på denna form definierar ordningen i vilken manualavsnitt bör genomsökas. Om det inte finns några SECTION-direktiv i konfigurationsfilen är standardvärdet:
SECTION 1 n l 8 3 0 2 5 4 9 6 7

Om flera SECTION-direktiv anges kommer avsnittslistorna att konkateneras.

Om en särskild ändelse inte finns i denna lista (säg, 1mh) kommer den att visas med resten av avsnittet som den hör till. Effekten av detta är att du bara behöver att uttryckligen lista ändelser om du vill tvinga fram en särskild ordning. Avsnitt med ändelser bör vanligtvis finnas intill deras huvudavsnitt (t.ex. ”1 1mh 8...”).

SECTIONS accepteras som ett alternativt namn på detta direktiv.

Om terminalbredden är mindre än bredd kommer cat-sidor inte att skapas (om de saknas) eller visas. Standardvärdet är 80.
Om terminalbredden är större än bredd kommer cat-sidor inte att skapas (om de saknas) eller visas. Standardvärdet är 80.
Om bredd inte är noll kommer cat-sidor alltid att formateras för en terminal av en angivna bredden, oavsett bredden på terminalen som faktiskt används. Detta bör generellt vara inom intervallet inställt av MINCATWIDTH och MAXCATWIDTH.
Denna flagga förhindrar man(1) från att automatiskt skapa cat-sidor.

Om reglerna ovan inte följs till punkt och pricka kommer verktygen för sidvisning av manualer inte att fungera som önskat. Dessa regler är överdrivet komplicerade.

https://gitlab.com/cjwatson/man-db/-/issues
https://savannah.nongnu.org/bugs/?group=man-db

2022-03-17 2.10.2