Differences between revisions 2 and 3
Revision 2 as of 2013-06-14 08:07:19
Size: 1648
Comment:
Revision 3 as of 2013-06-14 08:34:35
Size: 2011
Comment:
Deletions are marked like this. Additions are marked like this.
Line 14: Line 14:
The first Debian release to feature [[Multiarch]] is [[Wheezy]], so you will need to upgrade before the procedure described here. The first Debian release to feature [[Multiarch]] is [[Wheezy]], so you will need to upgrade before attempting the procedure described here.
Line 16: Line 16:
== Steps (more or less copy-pasted from Guillem's mail) == == Steps ==

These are the steps for converting an `i386` install to `amd64`, but they should be applicable for any other architecture pairs if your machine can run '''both''' (e.g. `armel` and `armhf`).

=== Add the new architecture ===
Line 25: Line 29:
}}}

=== Install a kernel capable to run the new architecture with the old architecture in userspace ===

{{{
Line 29: Line 38:
Make sure you are running the amd64 kernel before proceeding with the next steps. Make sure you are actually running the new kernel before proceeding with the next steps (`uname -a`).

=== Crossgrade `dpkg` and `apt` ===
Line 32: Line 43:
# apt-get download gcc-4.6-base:amd64 libgcc1:amd64 libc6:amd64 libselinux1:amd64 zlib1g:amd64 libbz2-1.0:amd64 dpkg:amd64
# dpkg -i *.deb
# apt-get --download-only install dpkg:amd64 apt:amd64
# dpkg --install /var/cache/apt/archives/*_amd64.deb
Line 40: Line 51:
If you got this far you are now effectively running amd64, but with mostly i386 packages. You can try to replace them with the corresponding amd64 packages. If that doesn't work (it is expected that not all libraries will be converted to Multiarch in wheezy) simply remove the i386 package and install the amd64 version instead. If you got this far you are now effectively running amd64, but with mostly i386 packages. You can try to replace them with the corresponding amd64 packages. If that doesn't work (it is expected that not all libraries will be converted to [[Multiarch]] in [[Wheezy]]) it should be possible to remove the i386 package and install the amd64 version instead.

Cross-grading a Debian System

This page is meant to document the procedure for cross-grading a Debian install using Multiarch.

Please note this is still work in progress and re-installing is still safer.

Pre-requisites

The first Debian release to feature Multiarch is Wheezy, so you will need to upgrade before attempting the procedure described here.

Steps

These are the steps for converting an i386 install to amd64, but they should be applicable for any other architecture pairs if your machine can run both (e.g. armel and armhf).

Add the new architecture

# dpkg --print-architecture
i386
# dpkg --add-architecture amd64
# dpkg --print-foreign-architectures
amd64
# apt-get update

Install a kernel capable to run the new architecture with the old architecture in userspace

# apt-get install linux-image-amd64:amd64
# reboot

Make sure you are actually running the new kernel before proceeding with the next steps (uname -a).

Crossgrade `dpkg` and `apt`

# apt-get --download-only install dpkg:amd64 apt:amd64
# dpkg --install /var/cache/apt/archives/*_amd64.deb
# dpkg --print-architecture
amd64
# dpkg --print-foreign-architectures
i386

If you got this far you are now effectively running amd64, but with mostly i386 packages. You can try to replace them with the corresponding amd64 packages. If that doesn't work (it is expected that not all libraries will be converted to Multiarch in Wheezy) it should be possible to remove the i386 package and install the amd64 version instead.