Updating i386 in-place to amd64
Ruslan Ermilov
ru at FreeBSD.org
Thu Dec 22 14:11:28 PST 2005
Hi there,
Yesterday, I was playing updating the i386 6.0-STABLE in-place to
amd64 (the system was initially running on i386 core, then the
disk was moved to the Opteron server). It succeeded, but there
were some fun. The idea I had is to:
1) cross-build world and kernel
2) install kernel
3) install32
4) reboot
5) install world
6) update /etc etc.
7) remove i386 dust
1-3 went fine. On reboot, I was hoping that COMPAT_IA32 would be
enough to run shell, make and mount* tools. I booted into single
user. When it asked me to press ENTER for /bin/sh, I did this;
it failed with SIGBUS. I have waited some seconds, and when it
asked it again, this time it worked (I verified several times, and
it always worked like this). i386 mount(8) did NOT work, so I
had to use the "rescue" binary from /usr/obj to NFS mount /usr/src.
After that, I fooled make(1) into thinking it runs on i386 and
did an install of cross-built amd64 world (env MACHINE_ARCH=i386
MACHINE=i386 TARGET_ARCH=amd64 make installworld). This worked.
I then updated /etc etc. from i386 to amd64 (by hand), and now
I'm running a native amd64 world+kernel.
P.S. It would be nice to be able to run i386 world under the
amd64 kernel, but a lot of things don't just work (of course
mainly syscalls).
P.P.S. It would be nice to win a prize. :-)
Cheers,
--
Ruslan Ermilov
ru at FreeBSD.org
FreeBSD committer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-amd64/attachments/20051223/a1dc5fae/attachment.bin
More information about the freebsd-amd64
mailing list