HOWTO: 32-Bit Chroot on 64-Bit Installs (ubuntu)

Original: http://ubuntuforums.org/showthread.php?t=24575


Most of this comes from http://digital-conquest.ath.cx/wiki/...h_debbootstrap but I wanted to put together a cleaned up version that worked for me here (There are typos and inaccuracies on the wiki page).

REPLACE 'hoary' WITH YOUR CURRENT UBUNTU CODE NAME.

Quote:
Step 1:
  • sudo apt-get install dchroot debootstrap
  • sudo mkdir /chroot/
  • sudo gedit /etc/dchroot.conf
    • Add this line: hoary /chroot
  • sudo debootstrap --arch i386 hoary /chroot/ http://archive.ubuntu.com/ubuntu
  • sudo chroot /chroot/
  • dpkg-reconfigure locales
Step 2:
In another terminal window (or by existing chroot): (We do this step because gedit has yet to be installed in the chroot environment)

Step 3:
In your chrooted environment (chroot /chroot):
  • apt-get update ; apt-get upgrade
Step 4:
In another terminal window (or by existing chroot):
  • sudo cp /etc/passwd /chroot/etc/
  • sudo cp /etc/shadow /chroot/etc/
  • sudo cp /etc/group /chroot/etc/
  • sudo cp /etc/sudoers /chroot/etc/
  • sudo cp /etc/hosts /chroot/etc/
  • sudo gedit /etc/fstab
  • Add the following lines:
    • /home /chroot/home none bind 0 0
    • /tmp /chroot/tmp none bind 0 0
    • /dev /chroot/dev none bind 0 0
    • /proc /chroot/proc proc defaults 0 0
    • /media/cdrom0 /chroot/media/cdrom0 none bind 0 0
    • /usr/share/fonts /chroot/usr/share/fonts none bind 0 0
  • sudo mkdir /chroot/media/cdrom0
  • sudo mount -a
  • sudo gedit /usr/local/bin/do_dchroot
  • Add the following:
    • #!/bin/sh
    • /usr/bin/dchroot -d "`echo $0 | sed 's|^.*/||'` $*"
  • sudo chmod 755 /usr/local/bin/do_dchroot
Step 5:
In a new terminal:
  • 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
At this point you should have a 32 bit environment setup with synaptic setup. When you run synaptic32 from your main environment it will chroot execute it and all installations will be made to your 32 bit environment. If you want to be able to easily launch 32 bit chroot apps from your 64 bit environment symlink the app name to /usr/local/bin/do_dchroot. If you're using this as desktop system you'll probably want to use synaptic to install x, gnome, ubuntu specific themes, etc.


UPDATE:

To get Firefox setup with Flash I did the following:

  • Ran sudo synaptic32 (as noted in the above thread
  • Installed mozilla-firefox
  • dchroot -d
  • sudo ln -s /usr/lib/libesd.so.0 /usr/lib/libesd.so.1
  • sudo ln -s /usr/bin/firefox /usr/bin/firefox32
  • exit
  • sudo ln -s /usr/local/bin/do_dchroot /usr/local/bin/firefox32
  • Made sure all instances of firefox are closed (you can not run both 32 and 64 bit firefoxes at the same time afaik... it just spawns a new 64 bit thread when you launch the old.
  • firefox32
  • Visited a site with flash on it and ran the automated firefox flash install.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值