Switch from x86 64 to i686 HOWTO

From ArchWiki

Jump to: navigation, search

Contents

Preparation

Prepare the disk space

It will take about twice free space of `/var/cache/pacman/pkg',if you have run `pacman -Sc' but not `pacman -Scc' from the finish of the Arch Linux system installation. We should keep all of the i686 packages, and download the x86_64 packages that installed in your system.

If you have not enough disk, please use `gparted' resize your root partition, or mount other partition to `/var/cache/pacman'.

Confirm the power

This operation may take about 1 hour or more, and can't be terminated. Please confirm you power supply.


Prepare packages

Download the x86_64 packages for fallback:

pacman -Sw $(pacman -Q |awk '{print $1}')

Download the i686 packages for upgrade. Edit `/etc/pacman.d/mirrorlist',change `x86_64' to `i686',modify it manually, or use the follow script:

sed -i -e s/x86_64/i686/g /etc/pacman.d/mirrorlist

Do it:

rm -rf /var/lib/pacman/sync/*  # cleanup the repos cache
pacman -Sy  # sync 
pacman -Sw $(pacman -Q |awk '{print $1}')

If there are some packages can't be downloaded, please remove them.

Prepare fallback environment

pacman -S busybox

Open a root console

Terminal will be ok, too. But in the upgrade, some program will be destroyed, console is stable. Just press `Ctrl+Alt+F1' and login as root.

Switch

Swtich pacman to 32bit

Warning: When this step is starting, it won't be terminated.

The pacman and all of its depends must be install at one time.

pacman -S pacman glibc libfetch libarchive openssl acl attr xz-utils bzip2 zlib readline bash ncurses

When this operation finished, only busybox, bash and pacman work now.


Switch the whole system

pacman -S $(pacman -Q|busybox awk '{print $1}')


Confirm the kernel switch

pacman -S kerne26

Then reboot the computer. Good luck!

See Also

Upgrade Arch Linux from i686 to x86 64 HOWTO

Personal tools