On 2007-01-14 11:56, Dino Vliet <[EMAIL PROTECTED]> wrote: > Hi folks, > from different sources I have written my steps to compile a new kernel > & upgrade to the latest sources.
Your instructions, however, are different from what /usr/src/UPDATING contains. Please, make *sure* you read `/usr/src/UPDATING' very carefully. Especially the commands of the section ``To upgrade in-place ...'' and *all* the footnotes they reference. > Can anyone have a look into them and tell me if I won't run into > troubles or if there are better ways to achieve the same? > > Upgrade procedure to the newest freebsd kernel and userland. > > 1.Make sure that the cvsup file (src-supfile) is adjusted in the right > way. That's ok. > 2. Cd /usr/src/sys/amd64/conf which contains the file MYKERNEL No it doesn't. CVSup will delete the files it doesn't know about, so you should *SAVE a copy* of your favorite kernel config file outside of the source tree and *copy* it into `/usr/src/sys/amd64/conf' after CVSup finishes updates the sources. > 3.MYKERNEL is then adjusted, if necessary and copied to > root/kernels/MYKERNEL Nice :) > 4.Copy everything under /etc to /root/etc Why? This isn't mentioned in `/usr/src/UPDATING' and it doesn't really help much if you manage to trash your /lib and /usr/lib trees. A better suggestion is to ``make sure you have good level 0 dumps'', as suggested by ``/usr/src/UPDATING''. > 5.cvsup -g -L 2 src-supfile You've deleted "MYKERNEL" here. > 6. cd /usr/src > 7. make cleanworld The ``make cleanworld'' command is unnecessary if you haven't been building stuff manually inside the tree. > 8. make buildworld > 9. make buildkernel KERNCONF=MYKERNEL You can do both at the same time, with: # cd /usr/src # make KERNCONF=MYKERNEL buildworld buildkernel > 10. Go into single user mode You forgot to install the new kernel *before* rebooting here. This should be done with: # cd /usr/src # make KERNCONF=MYKERNEL installkernel > 11. If the new kernel doesn't boot reboot and hit the space bar at the > boot prompt and boot kernel.old If the new kernel boots OK mount -a No, "mount -a" is not enough. Please read the `UPDATING' file. The full sequence of commands would be something like: (escape to loader prompt) (at the OK prompt of the boot loader, type): boot -s Then, when the system starts a /bin/sh shell instance, type: # adjkerntz -i # fsck -p # mount -u / # mount -a > 12. cd /usr/src > 13. make installkernel KERNCONF=MYKERNEL It is too late to install a new kernel here, if you didn't do it *before* rebooting into single user mode. The whole 'exercise' of installing the new kernel and booting into single user mode is meant to provide a level of testing for the new kernel. If you haven't installed it and booted into the old kernel, some things may fail to install later on, you don't know if the new kernel actually works, etc. > 14. Go into single user mode You *ARE* in single-user mode already. > 15. cd /usr/src > 16. mergemaster -p > 17. make installworld > 18. mergemaster -i > 19. exit and reboot These look fine. > Is this ok? Or have I forgot about something? I'm running a freebsd > 6.1 machine on a amd64 system with an adjusted kernel called MYKERNEL. Please read ``/usr/src/UPDATING''. Then read it again. Let the text and all its footnotes sink in, and if you don't understand *why* a particular step exists, or what a specific step is supposed to do, feel free to ask. We are here to help you update the system, but we are *also* here to help you understand the why, when, how and what for of each step of the process :-) - Giorgos _______________________________________________ firstname.lastname@example.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"