MANPATH не установлен в Scientic Linux 5.5

MANPATH не установлен в Scientic Linux 5.5

В установке Scientific Linux 5.5 $MANPATH не задан. У меня установлены модули окружения, это может привести к перезаписи $MANPATH, но я в этом не уверен. Поэтому мой главный вопрос: в какой момент /etc/man.config интерпретируется для формирования $MANPATH? Является ли это оболочкой bash (жестко закодированной) или это файл, который загружается во время входа в систему, например /etc/profile? Я не могу найти никакой зависимости в /etc ни в одном файле для /etc/man.config.

Причина, по которой я думаю, что модули среды вмешиваются в работу $MANPATH, заключается в том, что после входа в систему единственная запись:

# manpath 
/cm/local/apps/environment-modules/3.2.6/man

РЕДАКТИРОВАТЬ:

Тем временем, в связи с первым ответом я попробовал следующее:

# find . -type f -exec fgrep -l -i manpath {} \;
./profile.d/man.sh
./profile.d/man.csh
./man.config

Ну, это содержание

# cat /etc/profile.d/man.sh 
export MANPATH=:ignore:/cm/local/apps/environment-modules/3.2.6/man

Если я удалю этот файл, то по крайней мере "/usr/man" появится в $MANPATH, но это только вершина айсберга того, что определено в /etc/man.config . Поэтому я думаю, что /etc/man.config все еще не полностью обработан. Изменение /etc/profile.d/man.sh на следующее не дало никакого эффекта:

# cat /etc/profile.d/man.sh 
export MANPATH=:ignore:/cm/local/apps/environment-modules/3.2.6/man:$MANPATH
# echo $MANPATH 
ignore:/cm/local/apps/environment-modules/3.2.6/man:

решение1

Вот решение: если $MANPATH установлен, пути по умолчанию для страниц руководства будут перезаписаны. Поэтому отмена $MANPATH раскрывает путь по умолчанию, просто выполните команду "manpath":

/usr/local/share/man:/usr/share/man/en:/usr/share/man:/usr/man:/usr/local/man

Содержимое /etc/profile.d/man.sh также верно, потому чтоначальное двоеточие в переменной $MANPATH предотвратит перезапись manpath по умолчанию! Это фактическое решениемоей проблемы, потому что один модуль среды добавил ручной путь к переменной $MANPATH без начального двоеточия, и из-за этого страницы руководства по умолчанию больше не были доступны.

решение2

Ну, хотя я пишу вВаш ответполе, я не знаю ОТВЕТА, я просто знаю мета-ответ, который можно использовать всякий раз, когда всплывает вопрос «в каком конфигурационном файле это искажено?».

Установите midnight commander, если вы этого еще не сделали. Запустите mc в /etc:

mc /etc

запустите диалоговое окно «Найти файл» с помощью F9,c,f или Alt-? или Meta-? (если Alt не является вашей Meta)

позволятьНачало в:быть.(одна точка) по умолчанию, пустьИмя файла:быть * по умолчанию, и пустьСодержание:бытьЧЕЛОВЕК-ПАТ.

Поиск контентанеобходимо проверить иПервый ударне должна.

Просто дайте поиску закончиться, и в диалоговом окне вы увидите все вхождения MANPATH во всех файлах, где он записан. Вы можете просмотреть и оценить, что усложняет вам жизнь.

По сути, это то же самое, как если бы вы запустили rgrep для /etc в поисках MANPATH и прочитали его вывод, просто, на мой взгляд, это гораздо удобнее.

Связанный контент