Migrating a running Linux distro to Debian
This document was created to help in migrating a colo server. It has been used in the real world. The previous content that could be found here was non-functional; only some initial notes I took when doing the process by hand. It has since been converted into proper scripts.
One thing that must be understood is that the script is not going to convert the whole system to Debian. It will install a clean base system keeping some configuration, but will not map all previous installed programs to their Debian counterparts. It should, however, preserve user data and backups of the old system configuration. The new system is a clean Debian system; it's not a chroot, and no traces of the old distro should remain, except for data restored from backups.
The intention is to create a wide framework to convert anything to Debian. The program is named debtakeover.
Currently, the script is in beta testing stage. I didn't want to release a broken program that has to do such a critical operation, though by making the initial draft public, I did precisely this. Sorry to anyone who has used this previous immature draft. I've tested the current script on RedHat, SuSE and Gentoo. It has some provisions now to be extended to any GNU/Linux distribution. Next step will be to do cross-installs from (for example) a FreeBSD to a Debian GNU/kFreeBSD or a Debian GNU/Linux system.
Current implementation can be found on http://www.hadrons.org/~guillem/debian/debtakeover/
You will need debootstrap, found on http://packages.debian.org/debootstrap
Build debootstrap and use "make install" to place it in the proper directories. Make sure the main script can be found in the PATH (however, that will be checked by debtakeover).
Place debtakeover in any excluded directory (eg., /root), and run it from there.
Take a look at debtakeover's --help option. By default, it installs a stable suite and uses the colo profile.