Cette page n'a pas encore d'étiquettes.
Apportez votre aide…

Ceci est une ancienne révision du document !


Toutes versions amd64

Mettre en place un environnement 32 bits

Traduit et adapté par Raphaël Doursenaud Attention cette version n'est pas a jour pour feisty. Pour l'utiliser avec la feisty, remplacer dapper par feisty.

Dans un environnement 64 bits tels que les versions amd64 de Ubuntu, certaines applications compilées ou adaptées uniquement pour des architecture 32 bits ne fonctionnent pas. Ceci est particulièrement vrai pour les applications propriétaires telles que Flash ou encore les applications exclusivement 32 bits comme Wine ainsi que les transfuges des deux tels w32codecs.

La solution consiste à mettre en place un second environnement en 32 bits et d'y exécuter les applications problématiques. C'est l'objet de cette page.

Nous utiliserons ici la version 5.10 (Breezy) mais ceci est également exploitable pour 5.04 (Hoary) et 6.06 (Dapper) en interchangeant toutes les références faites.

Première étape

Dans un terminal, A :

sudo apt-get install dchroot debootstrap
sudo mkdir -p /chroot/breezy/32bits
gksudo gedit /etc/dchroot.conf

Ajoutez la ligne

breezy /chroot/breezy/32bits

Enregistrez et fermez

sudo debootstrap --arch i386 breezy /chroot/breezy/32bits http://archive.ubuntu.com/ubuntu
sudo cp /etc/resolv.conf /chroot/breezy/32bits/etc/resolv.conf
sudo chroot /chroot/breezy/32bits
dpkg-reconfigure locales

Pour un système français, sélectionner dans la liste :

fr_FR.UTF-8 UTF-8

et indiquez la comme valeur par défaut.

Voici une solution qui fonctionne sous dapper

cd /chroot/dapper/32bits/var/lib/locales/supported.d
cp /var/lib/locales/supported.d/* .
cd -
dpkg-reconfigure locales
Deuxième étape

Dans un autre terminal, B, nous allons créer un source.list pour notre environement 32bits:

gksudo gedit /chroot/breezy/32bits/etc/apt/sources.list

Vous trouverez à la fin de cet autre article de la documentation traitant des dépots quelques exemples de sources.list correspondant à l'univers ubuntu que vous êtes en train d'installer: Article sur les dépots

Troisième étape

Dans l'environnement chrooté A (premier terminal ouvert) :

apt-get update
Quatrième étape

Dans l'environnement habituel B (deuxième terminal ouvert) :

sudo cp /etc/passwd /chroot/breezy/32bits/etc/
sudo cp /etc/shadow /chroot/breezy/32bits/etc/
sudo cp /etc/group /chroot/breezy/32bits/etc/
sudo cp /etc/sudoers /chroot/breezy/32bits/etc/
sudo cp /etc/hosts /chroot/breezy/32bits/etc/
gksudo gedit /etc/fstab

Ajoutez les lignes suivantes :

# chroot 32 bits
/home /chroot/breezy/32bits/home none bind 0 0
/tmp /chroot/breezy/32bits/tmp none bind 0 0
/dev /chroot/breezy/32bits/dev none bind 0 0
/proc /chroot/breezy/32bits/proc proc defaults 0 0
/media/cdrom0 /chroot/breezy/32bits/media/cdrom0 none bind 0 0
/media/floppy0 /chroot/breezy/32bits/media/floppy0 none bind 0 0
/usr/share/fonts /chroot/breezy/32bits/usr/share/fonts none bind 0 0

Si vous avez d'autres volumes auxquels vous souhaitez pouvoir accéder dans l'environnement 32 bits, ajoutez les avec des lignes de la forme suivante :

/point_de_montage/d_origine /chroot/breezy/32bits/point_de_montage/d_origine none bind 0 0

Enregistrez et fermez

Attention : si l'envie vous prenait de supprimer votre chroot, NE LE FAITES PAS pendant que ces volumes sont montés ou vous risquez de perdre certaines données de votre répertoire personnel
sudo mkdir /chroot/breezy/32bits/media/cdrom0
sudo mkdir /chroot/breezy/32bits/media/floppy0
sudo mkdir /chroot/breezy/32bits/usr/share/fonts

De la même manière, si vous avez choisi de monter d'autres volumes, utilisez des commandes de la forme suivante :

sudo mkdir /chroot/breezy/32bits/point_de_montage/d_origine
sudo mount -a
gksudo gedit /usr/local/bin/do_dchroot

Ajoutez les lignes suivantes:

#!/bin/sh
/usr/bin/dchroot -d "`basename $0` $*"

Enregistrez et fermez

sudo chmod 755 /usr/local/bin/do_dchroot
Cinquième étape

Afin de bien faire la différence entre votre environnement normal et votre chroot, nous allons renseigner un fichier qui vous indiquera si vous etes dans un chroot ou non.

sudo chroot /chroot/breezy/32bits
echo 32bits > etc/debian_chroot
exit
dchroot -d
sudo apt-get install synaptic
sudo ln -s /usr/sbin/synaptic /usr/sbin/synaptic32
exit
sudo ln -s /usr/local/bin/do_dchroot /usr/local/bin/synaptic32
sudo synaptic32

Désormais vous devriez avoir un environnement 32 bits avec synaptic. Si vous désirez garder une uniformité visuelle entre vos deux environnements, vous devriez installer les paquets ubuntu-artwork, libgnome2-perl ainsi que les paquets de langue puis redémarrer synaptic32.

L'installation de logiciels doit se faire depuis synaptic de l'environnement 32 bits.

L'exemple de Flash

Flash étant un greffon (plugin) il est aussi nécessaire d'installer la version 32 bits de son application hôte en l'occurrence Firefox.

Lancez synaptic32 depuis un terminal

sudo synaptic32

Installez mozilla-firefox, libxt6, libxt-dev, libxmu6, libxext6 libxext-dev

Fermez synaptic32

Entrez dans l'environnement 32 bits et créez les liens nécessaires à l'exécution depuis l'environnement 64 bits:

dchroot -d ( modif par cabusar : cette commande ne marche pas chez moi, j'ai utilisé "sudo chroot /chroot/breezy/32bits" comme cité plus haut ceci dit je ne suis pas expert... )
sudo ln -s /usr/bin/firefox /usr/bin/firefox32

Quittez et créez les liens suivants

exit
sudo ln -s /usr/local/bin/do_dchroot /usr/local/bin/firefox32

Assurez-vous d'avoir fermé toutes les instances de Firefox sinon firefox32 lancera simplement une nouvelle instance 64 bits

firefox32

Visitez un site avec du flash puis installer le greffon par la procédure automatisée de Firefox.

Attention il se peut qu'il manque la bibliothèque libXmu6 nécessaire à la bonne execution du plugin flash, si c'est le cas, installez-la avec synaptic32.

  • installation/chroot32bits.1178649763.txt.gz
  • Dernière modification: Le 18/04/2011, 14:49
  • (modification externe)