DESpliegue DESatendido de LINux – Blog de Desarrollo

Debuggeando que es gerundio

28 Enero 2009 · 2 comentarios

Después de probar una, dos, tres, cuatro, cinco y hasta seis veces que Fai funcionese creo que he llegado a algo lógico.

El problema de la libreria libsepol no encontrada puede ser debido a un path de librerias mal especificado.

Voy a explicar esto un poco. Supongo que si estáis medio metidos en la consola de Linux conocereis la variable PATH. Esta sirve para especificar en qué rutas y en qué rutas se han de ejecutar los programas.

Ahora bien los programas a su vez (los dinámicos que son la mayoría) necesitan encontrar librerias para leer funciones, procedimientos y otros datos de ellas para poder funcionar. Pues parece ser que editando el fichero: /etc/ld.so.conf y ejecutando ldconfig como root podemos alterar esos valores.

FAI para su instalación usa este truco para poder ejecutar programas del directorio /root sin apenas problemas ya que especifica que las librerias están en: /root/lib y /root/usr/lib a parte de /lib y /usr/lib.

Como comento en el último mail esta definición de librerias tiene que fallar en algun momento porque si no no explica tantas librerias no encontradas… ¡Cuando sí están en /root!

Adrián


Categorías: Uncategorized

2 respuestas hasta el momento ↓

  • Kronoss // 29 Enero 2009 a 11:51 | Responder

    Hola Adrian,

    ¿Estás en Ubuntu, no? Si te instalas libsepol-dev te mete las librerías en las rutas por defecto (/lib, /usr/lib) y los programas no deberían tener problemas para encontrarla.

    ld.so.conf sólo deberías modificarlo si te has instalado unas librerías “en producción” en una ruta no estándar. Si son unas librerías que sólo usas en una ejecución particular, es más recomendable que utilices la variable de entorno LD_LIBRARY_PATH para añadir rutas de librerías a esa ejecución.

    Un saludo!

    • desdeslin // 3 Febrero 2009 a 20:31 | Responder

      Sí, en Ubuntu. Ya veo. Sí, el tema es que las librerias sí están ahi (bueno realmente en /root/lib y /root/usr/lib) pero no las encuentra.
      El ld.so.conf lo modifica la instalación. Lo tiene que modificar porque si no no encontraria las librerias buenas en /root! El tema es que esa configuración de ld.so.conf, se lee, va bien, pero luego va un mount de un cowfs (creo que lo digo de memoria) y el sistema se olvida de la lectura del ld.so.conf anterior.

      Lo del LD_LIBRARY_PATH, claro, eso sería para un programa en particular pero, claro, aqui se entiende que quieres que funcionen todos los del /root que si no mal recuerdo es lo que se monta por nfs.

      Gracias por los apuntes de todas formas.

      Adrián

Dejar un comentario