Usando um chroot para rodar aplicações 32bit em uma instalação amd64
Quem tem um processador 64 bits deve ficar tentado a instalar um sistema inteiro em 64 bits para aproveitar todos os recursos da máquina. Acontece que, após a instalação, nota-se que certas aplicações inexistem para a arquitetura 64 bits (amd64 ou x86_64), como o plugin Flash para Firefox/Iceweasel, o Navegador Opera e Skype.
O Debian dispõe de um pacote ia32-libs, contendo as principais bibliotecas 32 bits necessárias para rodar o FlashPlayer e algumas outras aplicações, mas caso deseja instalar algum outro pacote 32 bits (ia32, x86) então temos um problema. Mas não existe problema que não possa ser resolvido em software livre.
A solução Debian para o problema é criar um chroot 32 bits, um chroot trata-se de uma pasta root (’/') dentro de uma pasta do sistema, em outras paravras, é como instalar um sistema inteiro dentro de outro. Antes de mais nada precisamos instalar os programa necessários para criar e utilizar o chroot:
# aptitude install cdebootstrap schroot
cdebootstrap é um comando presente no atual Debian Testing e Unstable, se estiver usando Stable (Etch) ou anterior, use o comando debootstrap
Então você deve criar o chroot com o comando cdeboostrap:
# cdebootstrap --arch i386 sid /var/chroot/sid-ia32 \ http://ftp.debian.org/debian/
Após isso, você terá uma estrutura completa de diretórios dentro de /var/chroot/sid-ia32. Para alterar para este chroot basta usar o comando chroot:
# chroot /var/chroot/sid-ia32
Podendo instalar qualquer programa ou biblioteca normalmente com apt-get/aptitude:
# aptitude install opera skype
Para executar asplicações dentro de seu chroot ia32m você vai precisar de certas parte do seu sistema 64 bits, isso pode ser obtido com um ‘bind mount‘. No mínimo você precisará de /tmp, para compartilhar a sessão do X11, e de /home, para poder utilizar seus arquivos e configurações pessoais. Você poderá desejar também unir os diretórios /dev, /proc e /sys.
Saia do chroot e escreva em seu /etc/fstab:
# sid32 chroot /home /var/chroot/sid-ia32/home none bind 0 0 /tmp /var/chroot/sid-ia32/tmp none bind 0 0 /dev /var/chroot/sid-ia32/dev none bind 0 0 /proc /var/chroot/sid-ia32/proc none bind 0 0 /sys /var/chroot/sid-ia32/sys none bind 0 0
Depois monte-os:
mount /var/chroot/sid-ia32/home mount /var/chroot/sid-ia32/tmp mount /var/chroot/sid-ia32/dev mount /var/chroot/sid-ia32/proc mount /var/chroot/sid-ia32/sys
Para executar eplicações facilmente no novo chroot, você poderá usar o programa schroot. Para isso configure o arquivo /etc/schroot/schroot.conf:
[sid32] description=Debian Sid i386 (sid32) location=/var/chroot/sid-ia32 priority=3 groups=users,root root-groups=root aliases=default,unstable,ia32 personality=linux32 type=plain run-exec-scripts=true run-setup-scripts=true
A partir daí basta executar os aplicativos com o comando schroot:
schroot -p openoffice
Para facilitar ainda mais, você poderá criar um script que permite executar os aplicativos com um simples comando. Crie um arquivo /usr/local/bin/do_chroot e adicione o conteúdo a seguir:
#!/bin/bash exec schroot -p -c sid32 -q -- "`basename $0`" "$@"
Torne-o executável:
# chmod 755 /usr/local/bin/do_chroot
E então crie links simbólicos para ele dentro de /usr/local/bin:
# cd /usr/local/bin # ln -s do_chroot opera # ln -s do_chroot skype
Agora, para executar estes aplicativos basta executar os comandos opera ou skype normalmente.
NOTA: Os aplicativos Opera e Skype não estão presentes nos repositórios oficiais do Debian, para instalá-los via aptitude adicione as seguintes linhas ao seu /etc/apt/sources.list, dentro do chroot, não esquecendo de executar aptitude update:
## Opera Web-Browser deb http://deb.opera.com/opera/ sid non-free ## Skype deb http://download.skype.com/linux/repos/debian/ stable non-free
Fonte: debian-amd64-howto
Se você gostou deste artigo, inscreva-se em meu RSS feed!



Últimos Comentários