Instalando dois glibc ao lado no debian / ubuntu

14

É possível instalar e usar duas versões diferentes da glibc na mesma máquina. Onde uma versão é usada apenas para executar software legado, que depende de binários antigos da glibc?

É possível fazer isso com o auxílio do gerenciador de pacotes (algo como "instalar este pacote e suas dependências, em /opt/old-glibc ), em vez de gerenciá-lo dire

    
por Elazar Leibovich 03.05.2011 / 14:16

1 resposta

8

Sim, é possível. Você terá que ter muito cuidado com os caminhos de carregamento da biblioteca e talvez seja necessário recompilar algumas outras bibliotecas.

Como o caminho de menor atrito, eu recomendo instalar uma versão mais antiga do Debian ou Ubuntu em um chroot . Isto é, crie um diretório, diga /old/etch , e instale a distribuição mais antiga na árvore enraizada lá; para executar esse programa problemático, chame chroot para restringir sua visualização do sistema de arquivos para /old/etch .

O Debian (ou Ubuntu) vem com um pacote para ajudar na instalação de outro sistema em um chroot: schroot (sucessor do dchroot) . Primeiro, use o debootstrap para instalar a distribuição antiga (instale apenas o sistema básico e o que seu programa precisa, sem servidores). Em seguida, configure o schroot para executar o programa convenientemente (com /dev , /proc , /home e outros sistemas de arquivos “satélites” acessíveis).

Então o plano é: debootstrap, então dchroot. Em Como eu executo programas de 32 bits em um Debian / Ubuntu de 64 bits ?, eu dou um tutorial sobre uma configuração similar - se você está executando versões diferentes da distribuição, ou arquiteturas diferentes, ou diferentes tipos de Debian distribuições, é apenas uma questão de selecionar a fonte do pacote apropriado, o resto é o mesmo.

    
por 04.05.2011 / 00:43