
En una instalación de Scientific Linux 5.5, $MANPATH no está configurado. Tengo módulos de entorno instalados, esto podría causar una sobrescritura de $MANPATH, pero no estoy seguro de eso. Entonces mi pregunta principal es: ¿En qué punto se interpreta /etc/man.config para formar $MANPATH? ¿Es el bash-shell por sí solo (codificado) o es un archivo que se obtiene al iniciar sesión, por ejemplo, /etc/profile? No puedo encontrar ninguna dependencia en /etc en ningún archivo para /etc/man.config.
Esta razón por la que creo que los módulos del entorno están alterando $MANPATH es que después de iniciar sesión en el sistema la única entrada es:
# manpath
/cm/local/apps/environment-modules/3.2.6/man
EDITAR:
Mientras tanto y con respecto a la primera respuesta probé esto:
# find . -type f -exec fgrep -l -i manpath {} \;
./profile.d/man.sh
./profile.d/man.csh
./man.config
Bueno, este es el contenido de
# cat /etc/profile.d/man.sh
export MANPATH=:ignore:/cm/local/apps/environment-modules/3.2.6/man
Si elimino este archivo, al menos "/usr/man" aparece en $MANPATH, pero esto es solo la punta del iceberg de lo que se define en /etc/man.config. Entonces creo que /etc/man.config todavía no se maneja por completo. Cambiar /etc/profile.d/man.sh a lo siguiente no tuvo ningún efecto:
# 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:
Respuesta1
Esta es la solución: si se establece $MANPATH, las rutas predeterminadas para las páginas del manual se sobrescriben. Entonces, al desarmar $MANPATH se revela la ruta predeterminada, simplemente ejecute el comando "manpath":
/usr/local/share/man:/usr/share/man/en:/usr/share/man:/usr/man:/usr/local/man
El contenido de /etc/profile.d/man.sh también es correcto, porque¡Unos dos puntos iniciales en la variable $MANPATH evitarán que se sobrescriba la ruta de manual predeterminada! Esta es la solución real.a mi problema, porque un módulo de entorno antepuso una ruta manual a la variable $MANPATH sin los dos puntos iniciales y debido a eso las páginas de manual predeterminadas ya no estaban disponibles.
Respuesta2
Bueno, aunque estoy escribiendo en elTu respuestacampo, no sé LA respuesta, solo conozco una metarespuesta que se puede utilizar siempre que este tipo de "¿en qué archivo de configuración está destrozado?" aparece.
Instala Midnight Commander si aún no lo has hecho. Inicie mc en /etc:
mc /etc
iniciar el cuadro de diálogo Buscar archivo con F9,c,f o Alt-? o Meta-? (si Alt no es tu Meta)
dejarEmpieza en:ser un.(un solo punto) por defecto, dejeNombre del archivo:ser * por defecto, y dejarContenido:serMANPATH.
Buscar contenidodebe ser revisado yPrimer golpeno debe.
Simplemente deje que finalice la búsqueda y en el cuadro de diálogo verá todas las apariciones de MANPATH en todos los archivos donde está escrito. Puedes navegar y juzgar qué te hace la vida más difícil.
Básicamente, es lo mismo que si ejecutara rgrep en /etc buscando MANPATH y leyera su salida, solo que, en mi humilde opinión, es mucho más útil.