On 2006/09/23 02:36, Bertrand CHERRIER wrote:
> would you mind sharing how you did it ?
> I'm very interested !!

I don't mind sharing, but reading installboot(8) is a prerequisite,
because you need to understand what changes you're making with boot
blocks or you are likely to become unstuck. So I won't include the
command lines to type :-)

I would not have chosen to do this if I didn't have working
serial console access, also the box is on a masterswitch which
gives me a bit more confidence to do this remotely. And I don't
mind too much if this box is down until I can travel to fix it
if I have to (about 4h by train, the most civilised way to
travel to colo sites in the UK unless you have to carry kit!)

In my case I've run amd64 on the same type of motherboard before;
if you haven't, don't forget that the amd64 kernel might not run well
on the box you're trying to change arch on. Also check that any
devices you rely on are supported on amd64; some are not.

I fetched the amd64 /usr/mdec files to /usr/mdec.amd64 (in this
case from another amd64 box, but you could untar them from baseXX.tgz).
I kept a copy of the i386 ones in /usr/mdec.i386 as well. I copied
amd64 boot to /boot.amd, amd64 bsd.rd to /bsd.rd.amd64, then I used
i386 installboot(8) to install amd64 biosboot and have it use the
boot.amd bootloader.

Then I edited boot.conf with 'set image bsd.rd.amd64' and rebooted
into the installer and did a usual upgrade. (Without booting into
bsd.rd there is a lot more mess, because you have to keep things like
reboot, tar, gunzip, ld.so, libz, libc all working ok). I suppose
yaifo is another alternative to bsd.rd here (but you have to hope
the network comes up..)

I was doing this on a box with 512mb DiskOnModule and I didn't have
space to keep a local copy of the install files; given the space
I would choose to do this in case there's any trouble getting the
network to work.

If you have any packages installed (I didn't), stop rc.local from
running anything that's not in base since it will be the wrong arch.
Also check over any important users, making sure that shells are
from base not from packages.

When you're done with upgrading base, you'll need to remove and
reinstall your packages.

If you haven't done a remote upgrade before (this is not the
ideal way to start!), practice a lot before you try this. Have it
clear in your mind what steps you need to take. Like the other
recent thread about upgrading between versions, do practice on
an similarly configured box locally if it's at all possible.

If you have another way to do the changeover (say, reinstall
from CD media at the console), it would probably be better to
use it. But if you're going to have a long journey anyway,
and you don't mind the box being down until you get there if
it goes wrong, and you want a chance to avoid the trip, then
maybe it's worth a try. But do plan for it to go wrong, that
way you can't be disappointed!

Reply via email to