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

ІМʼЯ

manpath - формат файлу /etc/man_db.conf

ОПИС

Файл конфігурації manpath використовується утилітами сторінок довідки для оцінки шляхів користувачів під час роботи, щоб вказати, які ієрархії сторінок довідки (manpaths) повинні розглядатися як системні ієрархії та призначати їм каталоги для зберігання файлів cat.

Якщо змінна середовища $MANPATH вже встановлена, інформація, яка міститься у /etc/man_db.conf, не буде її перезаписувати.

ШЛЯХ ПОШУКУ

За замовчуванням, man-db перевіряє шлях користувача $PATH. Для кожного знайденого тут елементу_шляху, воно додає елемент_шляху до шляху пошуку.

Якщо у конфігураційному файлі немає рядка MANPATH_MAP для заданого елементу_шляху, тоді до шляху пошуку додаються всі наявні каталоги елементи_шляху/../man, елементи_шляху/man, елементи_шляху/../share/man, та елементи_шляху/share/man.

Потім додає всі записи MANDATORY_MANPATH з файлу конфігурації до шляху пошуку.

Нарешті, якщо використовується опція --systems або встановлена змінна середовища $SYSTEM, то це повинно складатися з послідовності імен операційних систем, розділених комами або двокрапками. Це діє як шаблон, розширюючи шлях пошуку ще раз, щоб дозволити доступ до сторінок керівництва інших операційних систем: для кожної назви системи man-db шукає цю назву як підкаталог кожного запису у шляху пошуку та додає його до остаточного шляху пошуку, якщо він існує. Назва системного man вставляє звичайний шлях пошуку без підкаталогів. Наприклад, якщо шлях пошуку був би /usr/share/man:/usr/local/man, а $SYSTEM встановлено на newOS:man, то остаточний шлях пошуку буде /usr/share/man/newOS:/usr/share/man:/usr/local/man/newOS:/usr/local/man.

Змінна середовища $MANPATH перекриває шляхи пошуку сторінок довідки за замовчуванням у man-db. Зазвичай користувачам не потрібно її встановлювати. Синтаксис схожий на змінну середовища $PATH: вона складається з послідовності імен каталогів, розділених двокрапками. Вона перекриває типовий шлях пошуку, описаний вище.

Якщо значення $MANPATH починається з двокрапки, то допоміжний шлях пошуку додається на початок. Якщо значення $MANPATH закінчується двокрапкою, то допоміжний шлях пошуку додається в кінець. Якщо значення $MANPATH містить подвійну двокрапку (::), то допоміжний шлях пошуку вставляється посередині значення, між двома двокрапками.

ФОРМАТ

Наступні типи полів визнаються зараз:

# коментар
Порожні рядки або ті, що починаються з #, будуть вважатися коментарями і проігноровані.
Ці рядки вказують на шляхи до каталогів, які повинні бути включені до кожного автоматично згенерованого $MANPATH. Зазвичай це включає /usr/man.
Ці рядки встановлюють відповідність між елементами шляху $PATH та $MANPATH. Для кожного знайденого елементу_шляху у $PATH користувача, елемент_шляху_до_man буде додано до $MANPATH.
Ці рядки вказують, які шляхи до man повинні розглядатися як системні шляхи і, необовʼязково, де мають зберігатися їхні файли cat. Цей тип полів особливо важливий, якщо man є програмою з правами setuid, оскільки вона вказує, які ієрархії сторінок довідки потрібно отримувати від користувача setuid, а які - від користувача що викликав команду (при наявності у системному конфігураційному файлі /etc/man_db.conf замість персонального конфігураційного файлу .manpath).

Системні ієрархії сторінок довідки зазвичай зберігаються в /usr, такі як /usr/man, /usr/local/man та /usr/X11R6/man.

Якщо сторінки каталогу з певного елементу_шляху_до_man не повинні зберігатися або мають бути збережені в традиційному розташуванні, то можна опустити елементу_шляху_до_cat.

Традиційне розміщення файлів cat було б неможливим для ієрархій сторінок довідки змонтованих тільки для читання, тому, через це, можна вказати будь-яку дійсну ієрархію каталогів для зберігання їх. Щоб відповідати стандарту Linux FSSTND, замість фактичного каталогу можна використовувати ключове слово FSSTND.

На жаль, необхідно вказати ВСІ шляхи до дерева системних сторінок man, включаючи альтернативні шляхи операційної системи, такі як /usr/man/sun, а також будь-які шляхи NLS locale, наприклад /usr/man/de_DE.88591.

Оскільки інформація аналізується по рядку в тому порядку, в якому вони записані, необхідно, щоб будь-який шлях до man, який є підієрархією іншої ієрархії, був перерахований першим, інакше буде зроблено неправильну відповідність. Наприклад, шлях /usr/man/de_DE.88591 повинен йти перед /usr/man.

Ці рядки визначають різні конфігураційні змінні; дивіться файл конфігурації за замовчуванням для тих змінних, які використовуються утилітами переглядача сторінок. Вони включають шляхи за замовчуванням до різних програм (таких як grep і tbl) та набори аргументів для цих програм.
Ці рядки визначають порядок пошуку розділів довідки. Якщо в конфігураційному файлі немає директив SECTION, то за замовчуванням використовується:
SECTION 1 n l 8 3 0 2 3type 5 4 9 6 7

Якщо вказано кілька директив SECTION, їхні списки розділів будуть обʼєднані.

Якщо певне розширення не знаходиться у цьому списку (наприклад, 1mh), воно буде показано разом з іншою секцією, до якої воно належить. Наслідком є те, що вам потрібно вказати розширення явно лише тоді, коли ви хочете задати певний порядок. Секції з розширеннями зазвичай повинні бути суміжними з їхньою основною секцією (наприклад, "1 1mh 8 ...").

SECTIONS також приймається як альтернативна назва для цієї директиви.

Якщо ширина терміналу менша за ширину, сторінки cat не будуть створені (якщо їх немає) або показані. За замовчуванням це 80.
Якщо ширина терміналу більша за ширину, сторінки cat не будуть створені (якщо вони відсутні) або показані. За замовчуванням це 80.
Якщо ширина не дорівнює нулю, сторінки cat будуть завжди форматовані для терміналу вказаної ширини, незалежно від фактично використовуваного терміналу. Це перевизначає MINCATWIDTH та MAXCATWIDTH.
Цей прапорець забороняє man(1) автоматично створювати сторінки категорій.

ПОМИЛКИ

Якщо правила вище не будуть дотримані точно, утиліти переглядача сторінок не працюватимуть так, як бажано. Правила занадто складні.

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

2025-05-02 2.13.1