Gerenciamento adequado do ld.so.conf e das bibliotecas compartilhadas

3

Estou curioso sobre como outros administradores Linux gerenciam /etc/ld.so.conf e, em geral, compartilham bibliotecas em vários servidores Linux.

Temos cerca de 30 a 40 servidores Linux executando o SLES 11. Como estão vinculados ao Active Directory, os usuários podem fazer login em qualquer servidor com as mesmas credenciais. Originalmente, cada servidor tinha seu próprio ld.so.conf local. No entanto, nos deparamos com problemas nos quais um software específico, o php, por exemplo, rodava no servidor X, mas travava no servidor Y porque um administrador de sistema rearranjava ld.so.conf no servidor Y. Nos esforçamos para obter consistência entre os servidores para que os usuários possam usar facilmente qualquer número de servidores para balanceamento de carga. Existem alguns servidores que têm objetivos específicos, claro.

Pensamos no link simbólico para um ld.so.conf compartilhado com um script que sai e executa ldconfig em todos os servidores sempre que uma alteração é feita. Eu pensei que isso traria consistência em todos os servidores, mas eu vejo como alguns servidores precisariam de um ld.so.conf customizado porque ele roda softwares diferentes que podem precisar de uma versão lib diferente.

Eu sou apenas um administrador do Linux há menos de três anos, então isso pode ser uma resposta simples para alguns, por isso só estou procurando conselhos sobre esse tópico. Perguntas que me vieram à mente:

  • local ou com link simbólico /etc/ld.so.conf ?
  • limpa versões antigas de bibliotecas compartilhadas se existirem várias versões em diferentes diretórios de lib?
por Banjer 06.03.2012 / 20:06

1 resposta

3

Normalmente as configurações relacionadas ao usuário ou ao aplicativo devem estar em:

/etc/ld.so.conf.d

e incluído em /etc/ld.so.conf . O que pode ser idêntico em todos os servidores e não deve ser tocado

Dessa forma, seu gerenciamento fica mais fácil simplesmente tornando o diretório /etc/ld.so.conf.d/ consistente em todos os seus servidores.

Você provavelmente pode criar um script rsync simples que fará isso para você.

    
por 06.03.2012 / 20:31