<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pt-BR">
	<id>http://fiscomp.if.ufrgs.br/index.php?action=history&amp;feed=atom&amp;title=32_bits_rodando_em_64</id>
	<title>32 bits rodando em 64 - Histórico de revisão</title>
	<link rel="self" type="application/atom+xml" href="http://fiscomp.if.ufrgs.br/index.php?action=history&amp;feed=atom&amp;title=32_bits_rodando_em_64"/>
	<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=32_bits_rodando_em_64&amp;action=history"/>
	<updated>2026-04-16T13:24:36Z</updated>
	<subtitle>Histórico de revisões para esta página neste wiki</subtitle>
	<generator>MediaWiki 1.39.4</generator>
	<entry>
		<id>http://fiscomp.if.ufrgs.br/index.php?title=32_bits_rodando_em_64&amp;diff=50&amp;oldid=prev</id>
		<title>Tekkito: Criou página com 'Muitos programas úteis como openoffice (BrOffice) ou flash plugins  para navegadores não tem versões estáveis  para 64 bits. Os passos abaixo mostram como fazer isto em um AM...'</title>
		<link rel="alternate" type="text/html" href="http://fiscomp.if.ufrgs.br/index.php?title=32_bits_rodando_em_64&amp;diff=50&amp;oldid=prev"/>
		<updated>2011-09-19T17:53:30Z</updated>

		<summary type="html">&lt;p&gt;Criou página com &amp;#039;Muitos programas úteis como openoffice (BrOffice) ou flash plugins  para navegadores não tem versões estáveis  para 64 bits. Os passos abaixo mostram como fazer isto em um AM...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Muitos programas úteis como openoffice (BrOffice) ou flash plugins  para navegadores não tem versões estáveis  para 64 bits. Os passos abaixo mostram como fazer isto em um AMD64 com instalação [http://www.debian.org Debian]. &lt;br /&gt;
&lt;br /&gt;
Resumidamente, o método consiste em fazer uma instalação básica de 32 bits em um diretório (/var)  da instalação de 64 bits e, quando  os programas de 32 bits forem solicitadas, passa-se a usar (chroot) automaticamente &lt;br /&gt;
esse diretório como raiz para a execução do mesmo.&lt;br /&gt;
&lt;br /&gt;
Os passos abaixo são uma tradução aproximada de [http://www.debian-administration.org/articles/356 artigo]&lt;br /&gt;
encontrado em uma página do administrador Debian. &lt;br /&gt;
&lt;br /&gt;
'''1. Instalando o chroot'''&lt;br /&gt;
&lt;br /&gt;
1.1) Criar (com o usuário root) o diretório vazio na raiz:&lt;br /&gt;
&lt;br /&gt;
 $ mkdir /var/etch-386-chroot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.2) Instalar o sistema base Debian etch versão i386 nesse diretório (abaixo é uma única linha de comando):&lt;br /&gt;
&lt;br /&gt;
 $ debootstrap --arch i386  etch  /var/etch-386-chroot  http://debian.if.ufrgs.br/debian/&lt;br /&gt;
&lt;br /&gt;
Escolha o espelho mais próximo... Isto deve demorar de 10 a 15 min. &lt;br /&gt;
Se tudo deu certo até aqui deve aparecer ao final a mensagem:&lt;br /&gt;
   &lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se o comando debootstrap não existir, instale com:&lt;br /&gt;
&lt;br /&gt;
 $ apt-get install debootstrap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.3) Coloque o caminho(path) de suas bibliotecas no /etc/ld.so.conf. Para isto edite esse arquivo de forma&lt;br /&gt;
que ele fique assim:&lt;br /&gt;
&lt;br /&gt;
      /usr/X11R6/lib&lt;br /&gt;
      # chroot i386 system libs&lt;br /&gt;
      /var/etch-386-chroot/lib&lt;br /&gt;
      /var/etch-386-chroot/usr/lib&lt;br /&gt;
      /var/etch-386-chroot/usr/X11R6/lib&lt;br /&gt;
      /var/etch-386-chroot/usr/local/lib&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.4) Coloque o link para o seu linker de 32 bits no caminho&lt;br /&gt;
de /lib, mas preserve o link original, caso algo dê errado...&lt;br /&gt;
&lt;br /&gt;
 $ cd /lib&lt;br /&gt;
 $ mv ld-linux.so.2 ld-linux.so.2.orig&lt;br /&gt;
 $ ln -s /var/etch-386-chroot/lib/ld-linux.so.2  ld-linux.so.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.5) Rode ldconfig para atualizar o cache do seu linker.&lt;br /&gt;
&lt;br /&gt;
 $ ldconfig&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.6) Para rodar um programa dentro do chroot necessita-se que algumas partes do sistema 64 bits estejam dentro do chroot. Isto pode ser feito com um &amp;quot;bind mount&amp;quot;. No exemplo abaixo, ligaremos o /tmp, o /home e o  proc. Edite o arquivo /etc/fstab adicionando as linhas abaixo:&lt;br /&gt;
&lt;br /&gt;
    #ia32 chroot&lt;br /&gt;
    /home /var/etch-386-chroot/home none bind 0 0&lt;br /&gt;
    /tmp  /var/etch-386-chroot/tmp none bind 0 0&lt;br /&gt;
    proc  /var/etch-386-chroot/proc proc defaults 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.7) Monte todos eles...&lt;br /&gt;
 $ mount /var/etch-386-chroot/home&lt;br /&gt;
 $ mount /var/etch-386-chroot/tmp&lt;br /&gt;
 $ mount /var/etch-386-chroot/proc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.8) Passe os usuários e grupos para o chroot:&lt;br /&gt;
 $ cp /etc/passwd /var/etch-386-chroot/etc/passwd&lt;br /&gt;
 $ cp /etc/shadow /var/etch-386-chroot/etc/shadow&lt;br /&gt;
 $ cp /etc/group /var/etch-386-chroot/etc/group&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.9) Nesse ponto pode-se já rodar programas dentro do chroot. Troque o shell do diretório raiz  para o do seu chroot:&lt;br /&gt;
 $ chroot /var/etch-386-chroot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.10) Experimente rodar algo simples como:&lt;br /&gt;
 $ cat /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2. Instalar programas 32-bits no chroot'''&lt;br /&gt;
&lt;br /&gt;
2.1) Ainda dentro do shell do chroot instale uns pacotes que precisaremos (o comando abaixo é de apenas uma  linha)...&lt;br /&gt;
&lt;br /&gt;
 $ apt-get install libogg0 libogg-dev libvorbis0a libvorbis-dev vorbis-tools&lt;br /&gt;
    libpng12-0 libpng12-dev liblogfile-rotate-perl libconfhelper-perl &lt;br /&gt;
    debhelper   fakeroot gcc g++ libgtk1.2 libgtk1.2-dev svgalibg1&lt;br /&gt;
    svgalibg1-dev libsdl1.2-dev  libaa1 libaa1-dev libxv1 libxv-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2.2) Além de outros que sempre precisamos:&lt;br /&gt;
&lt;br /&gt;
 $ apt-get install vim bzip2 jed xjed &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2.3) Perl vai reclamar de não ter locale configurado... Adicione&lt;br /&gt;
     export LC_ALL=C &lt;br /&gt;
ao arquivo /root/.bashrc e carregue-o:&lt;br /&gt;
     source ~/.bashrc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2.4) Agora que chegamos até aqui, instale da maneira usual aqueles  programas que só rodam  em 32 bits, e.g., para instalar o firefox:&lt;br /&gt;
&lt;br /&gt;
 $ apt-get install firefox&lt;br /&gt;
&lt;br /&gt;
Saia do chroot e não esqueça de desinstalar a versão em 64 bits.&lt;br /&gt;
&lt;br /&gt;
 $ exit&lt;br /&gt;
 $ apt-get remove firefox&lt;br /&gt;
&lt;br /&gt;
Teste para ver se o firefox  64 foi desinstalada:&lt;br /&gt;
&lt;br /&gt;
 $ firefox&lt;br /&gt;
 bash: firefox: command not found&lt;br /&gt;
&lt;br /&gt;
Verifique se a versão 32 bits funciona:&lt;br /&gt;
&lt;br /&gt;
 $ xhost +&lt;br /&gt;
 $ chroot /var/etch-386-chroot&lt;br /&gt;
 $ firefox&lt;br /&gt;
&lt;br /&gt;
Instale os plugins necessários como de hábito. &lt;br /&gt;
O item 4, ao final desta, mostra detalhes para a&lt;br /&gt;
instalação do flashplayer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3. Tornando transparente ao usuário'''&lt;br /&gt;
&lt;br /&gt;
Até agora tudo funcionou porque estamos trabalhando como root e fazendo&lt;br /&gt;
manualmente a passagem para 32 bits via chroot. Para o usuário normal isto&lt;br /&gt;
tudo deve ser feito quando ele chama o programa do ambiente de 64 bits.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3.1) Saia do chroot e instale o pacote dchroot:&lt;br /&gt;
&lt;br /&gt;
 $ exit&lt;br /&gt;
 $ apt-get install dchroot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3.2) Crie o arquivo /etc/dchroot.conf com o conteúdo abaixo:&lt;br /&gt;
&lt;br /&gt;
 #etchi386 chroot&lt;br /&gt;
  etchi386 /var/etch-386-chroot&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3.3) Agora um usuário normal deve ser capaz de rodar comandos no chroot:&lt;br /&gt;
      &lt;br /&gt;
 $ dchroot -d firefox&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3.4) Adicione um script para facilitar as coisas de forma que se possa chamar&lt;br /&gt;
os programas 32 bits transparentemente da linha de comando. No diretório&lt;br /&gt;
/usr/local/bin crie o  script abaixo, nomeie-o do_chroot e troque as permissões&lt;br /&gt;
para 755:&lt;br /&gt;
&lt;br /&gt;
   #!/bin/sh&lt;br /&gt;
   ARGS=&amp;quot;&amp;quot;&lt;br /&gt;
   for i in &amp;quot;$@&amp;quot; ; do&lt;br /&gt;
      ARGS=&amp;quot;$ARGS '$i'&amp;quot;&lt;br /&gt;
   done&lt;br /&gt;
   exec dchroot -d -q &amp;quot;`basename $0`&amp;quot; &amp;quot;$ARGS&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3.5) Último passo crie os links simbólicos dos programas para o script:&lt;br /&gt;
&lt;br /&gt;
 $ln -s do_chroot firefox&lt;br /&gt;
&lt;br /&gt;
'''4.) Instalando o flashplayer'''&lt;br /&gt;
&lt;br /&gt;
4.1) Crie e entre em um diretório temporário, baixe o pacote flashplayer da Macromedia e&lt;br /&gt;
abra-o.&lt;br /&gt;
&lt;br /&gt;
   $ mkdir tmp; cd tmp&lt;br /&gt;
   $ wget http://fpdownload.macromedia.com/get/flashplayer/current/install_flash_player_7_linux.tar.gz&lt;br /&gt;
   $ tar xvzf install_flash_player_7_linux.tar.gz&lt;br /&gt;
&lt;br /&gt;
4.2) Como root, entre no diretório install_flash_player_7_linux (criado no desempacotamento) e copie &lt;br /&gt;
os arquivos flashplayer.xpt  e libflashplayer.so para o diretório de plugins de instalação do firefox:&lt;br /&gt;
&lt;br /&gt;
   $ cp flashplayer.xpt /var/etch-386-chroot/usr/lib/firefox/plugins&lt;br /&gt;
   $ cp libflashplayer.so /var/etch-386-chroot/usr/lib/firefox/plugins&lt;br /&gt;
&lt;br /&gt;
4.3) Acerte as permissões:&lt;br /&gt;
&lt;br /&gt;
   $ cd /var/etch-386-chroot/usr/lib/firefox/plugins&lt;br /&gt;
   $ chmod a+rw flashplayer.xpt&lt;br /&gt;
   $ chmod a+rw  libflashplayer.so&lt;br /&gt;
&lt;br /&gt;
4.4) Provavelmente faltará a biblioteca  libXmu6 na sua instalação i386; faça o chroot para a instalação 386 &lt;br /&gt;
e instale a biblioteca:&lt;br /&gt;
&lt;br /&gt;
   $ chroot /var/etch-386-chroot/&lt;br /&gt;
   $ apt-get update&lt;br /&gt;
   $ apt-get install libXmu6&lt;br /&gt;
&lt;br /&gt;
4.5) Saia do chroot, abra o firefox como usuário normal e digite na linha de endereços internet do navegador:&lt;br /&gt;
&lt;br /&gt;
   about:plugins&lt;br /&gt;
&lt;br /&gt;
O Shockwave flash deve aparecer entre os plugins instalados.&lt;/div&gt;</summary>
		<author><name>Tekkito</name></author>
	</entry>
</feed>