On 1999-01-24 15:20:14 -0800, Jordan K. Hubbard wrote:
> > This is a *VERY* good example of what not to do on a production system.
> > People should know better. Grrr.
>
> You know of a better way of upgrading machines? If so, tell me now
> before we do hub. :)
I did update my machine to ELF some days ago.
1. grab a working snapshot of the current sources, e.g.
from 5th January (before the ELF kernel and the broken texinfo import)
2. create a chroot environment
mkdir /a/chroot
cd /; tar cf - bin dev etc sbin var | ( cd /a/chroot; tar xfv -)
cd /usr; tar cf - bin compat include lib libdata libexec sbin share |
(cd /a/chroot; tar xfv -)
2b) mkdir -p /a/chroot/tmp /a/chroot/var/tmp
3. put the sources from 1) into /a/chroot/usr/src
4. Start chroot
chroot /a/chroot
5. Start aout-to-elf-build
cd /usr/src
make aout-to-elf-build
5b) repeat 5) until `make aout-to-elf-build' was successfully
6. Install elf binaries
make aout-to-elf-install
7. leave the chroot environment
exit
8. Do the real update
- set some symlinks
Sources: /usr/src -> /a/chroot/usr/src
obj tree: /usr/obj -> /a/chroot/usr/obj
[from my memory, without any warranty]:
mkdir -p /a/chroot/usr/obj/elf/a/chroot/usr
cd /a/chroot/usr/obj/elf/a/chroot/usr
ln -s src -> ../../../../usr/src
mkdir -p /a/chroot/usr/obj/aout/a/chroot/usr
cd /a/chroot/usr/obj/aout/a/chroot/usr
ln -s src -> ../../../../usr/src
9. Install elf binaries
cd /usr/src; make aout-to-elf-install
If you forgot a obj symlink it will fail without damage - go
back to 8) and create the symlinks
-- Wolfram Schneider <wosch@freebsd.org> http://freebsd.org/~w/To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message -- end of forwarded message --
-- С тем, что не помешает никогда, Kittle