table of contents
MANPATH(5) | /etc/manpath.config | MANPATH(5) |
NAMN¶
manpath - formatet för filen /etc/manpath.config
BESKRIVNING¶
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/manpath.config inte att åsidosätta den.
SÖKVÄG¶
Som standard genomsöker man-db användarens $SÖKVÄG. För varje path_element som hittas där lägger det till manpath_element till sökvägen.
Om det inte finns någon MANPATH_MAP-rad i konfigurationsfilen för ett givet path_element, då läggs alla path_element/../man, path_element/man, path_element/../share/man och path_element/share/man till som existerar som kataloger i sökvägen.
Det lägger sedan till de MANDATORY_MANPATH-poster från konfigurationsfilen till sökvägen.
Avslutningsvis, om flaggan --systems används eller om miljövariabeln $SYSTEM är satt, då bör denna bestå av en sekvens av operativsystemsnamn separerade av komman eller kolon. Detta fungerar som en mall och expanderar sökvägen ännu en gång för att tillåta åtkomst till andra operativsystems manualsidor: för varje systemnamn kommer man-db att leta efter det namnet som en underkatalog i varje post i sökvägen och lägger till den till den slutgiltiga sökvägen om den existerar. Systemnamnet man infogar den normala sökvägen utan underkataloger. Om till exempel sökvägen annars hade varit /usr/share/man:/usr/local/man och $SYSTEM är satt till nyttOS:man, då kommer den slutgiltiga sökvägen att vara /usr/share/man/nyttOS:/usr/share/man:/usr/local/man/nyttwOS:/usr/local/man.
Miljövariabeln $MANPATH åsidosätter man-dbs standardsökväg för manualsidor. De flesta användare behöver inte sätta den. Dess syntax liknar den för miljövariabeln $PATH: den består av en sekvens av katalognamn separerade av kolon. Den åsidosätter standardsökvägen som beskrivits ovan.
Om värdet av $MANPATH börjar med ett kolon så kommer standardsökvägen att läggas till i dess början. Om värdet av $MANPATH slutar med ett kolon så kommer standardsökvägen att läggas till i dess slut. Om värdet av $MANPATH innehåller dubbla kolon (::) så kommer standardsökvägen att infogas mitt i värdet mellan de två kolonen.
FORMAT¶
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.
- MANDATORY_MANPATH man-sökvägselement
- 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.
- MANPATH_MAP sökvägselement man-sökvägselement
- 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.
- MANDB_MAP man-sökvägselement [ cat-sökvägselement ]
- 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/manpath.config
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.
- DEFINE nyckel värde
- 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.
- SECTION avsnitt ...
SECTION 1 n l 8 3 0 2 3type 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.
- MINCATWIDTH bredd
- Om terminalbredden är mindre än bredd kommer cat-sidor inte att skapas (om de saknas) eller visas. Standardvärdet är 80.
- MAXCATWIDTH bredd
- Om terminalbredden är större än bredd kommer cat-sidor inte att skapas (om de saknas) eller visas. Standardvärdet är 80.
- CATWIDTH bredd
- 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 åsidosätter MINCATWIDTH och MAXCATWIDTH.
- NOCACHE
- Denna flagga förhindrar man(1) från att automatiskt skapa cat-sidor.
FEL¶
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/man-db/man-db/-/issues
https://savannah.nongnu.org/bugs/?group=man-db
2024-08-29 | 2.13.0 |