В установке 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

Если я удалю этот файл, в $ MANPATH появится как минимум «/usr/man», но это только верхушка айсберга того, что определено в /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:

2 ответа2

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 без начального двоеточия и из-за этого man-страницы по умолчанию больше не были доступны.

0

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

Установите полночь командир, если вы еще этого не сделали. Запустите mc в /etc:

mc /etc

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

позвольте Начать в: быть . (одна точка) по умолчанию, пусть File name: будет * по умолчанию, и пусть Content: будет MANPATH.

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .