Giorgos Keramidas wrote:
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.
But in my practice, CVSup did nothing with my own kernel config file.
In my memory, cvs did nothing with the files not in the source tree.
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

_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to