I actually did something similar at the beginning of 2011. My hardware raid card died (RAID 10), so I took one of the two disks, and converted to software raid. It was a bit tricky but doable. I'm using Debian squeeze.
0) I'm not clear if you want to convert from a 32 bit to a 64 bit installation, or you just want to copy a 32 bit install to a 64 bit machine, and will still be running 32 bit. In the latter case, the 64 bitness really isn't relevant to anything. If the former, the system at least is incompatible. You'll just be able to copy your data (/home etc) and have to do a system reinstall.
1) I'd recommend using LVM on top of software raid.
2) Grub 2 can boot from a LVM device on top of a software raid device. GRUB 1 can't. Actually, I think it probably can't boot from a software raid device at all. I had some issues with Grub 2 working smoothly with SW raid + LVM, and had to upgrade to the bleeding edge GRUB 2 package in experimental, but hopefully GRUB 2 is more stable now. As long as you stick to recent versions of GRUB 2 you will probably be Ok.
3) First create the sw raid device, then LVM devices on top of that. Then copy your filesystems onto the LVM devices. I recommend using partimage for this.
4) For booting I used another system to mount the new system as chroot, and then chrooted into the new system to install GRUB 2. That will probably work for you too. Note that
grub-install /dev/md0
should work in the chroot, though for this to work, you'll have to rebind the devices in the host to the chroot. You'll also want to rebind the usual things like /proc, /sys, /dev/pts etc.
Feel free to ask questions (if you have them) in the comments, and if I have anything useful to add, I'll update this answer.
EDIT: Update in response to questions from @trbabb.
Could you talk a little bit more about the advantages of LVM? I'll
want to keep my two raid arrays separate, so it seems like each array
will get a volume group with 1 logical volume each. That seems like an
unnecessary extra layer of abstraction...?
LVM is useful if you later want to resize your volumes or add a second physical device to the volume. I think traditional devices aren't quite that convenient to work with.
Also, can you tell me a little bit more about chrooting? What will I use chroot for, > and why?
The chroot is for you to be able to install grub and generate the config file for your new system. You need to install grub somehow, and you need to do it before you can boot. If you are (re)installing the OS, and only copying user data over to /home or whatever, you can use the Debian installer for example, but if you don't want to (re)install the OS, the Debian installer probably won't work for you. It insists on installing a system. There might be other ways of doing this, but chroot is quite standard I think.
And will partimage be necessary if I have the old/new drives connected
simultaneously?
partimage is a nice clean, way to copy partitions, regardless of whether you have both partitions connected simultaneously. You don't need to use it. You can use dd
or even cp -a
but IMO partimage is better.