From owner-p4-projects@FreeBSD.ORG Fri Jan 2 16:45:31 2009 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D7C4E106568C; Fri, 2 Jan 2009 16:45:30 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9126B1065687 for ; Fri, 2 Jan 2009 16:45:30 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7FB7C8FC21 for ; Fri, 2 Jan 2009 16:45:30 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n02GjUrE061682 for ; Fri, 2 Jan 2009 16:45:30 GMT (envelope-from rene@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n02GjUjB061680 for perforce@freebsd.org; Fri, 2 Jan 2009 16:45:30 GMT (envelope-from rene@FreeBSD.org) Date: Fri, 2 Jan 2009 16:45:30 GMT Message-Id: <200901021645.n02GjUjB061680@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rene@FreeBSD.org using -f From: Rene Ladan To: Perforce Change Reviews Cc: Subject: PERFORCE change 155582 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2009 16:45:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=155582 Change 155582 by rene@rene_self on 2009/01/02 16:45:12 IFC Affected files ... .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/book.sgml#4 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.sgml#7 integrate .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/filesystems/chapter.sgml#9 integrate .. //depot/projects/docproj_nl/www/en/releases/7.1R/schedule.sgml#10 integrate Differences ... ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/book.sgml#4 (text+ko) ==== @@ -1,7 +1,7 @@ 2006 2007 2008 + 2009 The FreeBSD Documentation Project ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.sgml#7 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -294,17 +294,51 @@ or any kernel modules were modified. This will allow &os; to load the new binaries into memory. + The freebsd-update utility can + automatically update the GENERIC kernel only. + If a custom kernel is in use, it will have to be rebuilt and + reinstalled after freebsd-update finishes + installing the rest of the updates. However, + freebsd-update will detect and update the + GENERIC kernel in /boot/GENERIC (if it exists), even if + it is not the current (running) kernel of the system. + + + It is a good idea to always keep a copy of the + GENERIC kernel in /boot/GENERIC. It will be helpful + in diagnosing a variety of problems, and in performing version + upgrades using freebsd-update as described in + section . + + + Unless the default configuration in + /etc/freebsd-update.conf has been changed, + freebsd-update will install the updated kernel + sources along with the rest of the updates. Rebuilding and + reinstalling your new custom kernel can then be performed in the usual + way. + - The freebsd-update only works with - the GENERIC kernel. If any changes have - been made to GENERIC or a custom kernel - has been installed, freebsd-update will - not complete — failing in the former case and - producing an error in the latter. + The updates distributed via freebsd-update, + do not always involve the kernel. It will not be necessary to + rebuild your custom kernel if the kernel sources have not been + modified by the execution of + freebsd-update install. However, + freebsd-update will always update the + /usr/src/sys/conf/newvers.sh file. The current + patch level (as indicated by the -p number + reported by uname -r) is + obtained from this file. Rebuilding your custom kernel, even if + nothing else changed, will allow &man.uname.1; to accurately report + the current patch level of the system. This is particularly + helpful when maintaining multiple systems, as it allows for a quick + assessment of the updates installed in each one. - + Major and Minor Upgrades This process will remove old object files and @@ -324,12 +358,66 @@ any prompts during this process, removing the need for manual intervention during the build process. + If a custom kernel is in use, the upgrade process is slightly + more involved. A copy of the GENERIC kernel is + needed, and it should be placed in /boot/GENERIC. If the + GENERIC kernel is not already present in the + system, it may be obtained using one of the following methods: + + + + If a custom kernel has only been built once, the kernel in + /boot/kernel.old is + actually the GENERIC one. Simply rename this + directory to + /boot/GENERIC. + + + + Assuming physical access to the machine is possible, a copy + of the GENERIC kernel can be installed from + the CD-ROM media. Insert your installation disc and use the + following commands: + + &prompt.root; mount /cdrom +&prompt.root; cd /cdrom/X.Y-RELEASE/kernels +&prompt.root; ./install.sh GENERIC + + Replace X.Y-RELEASE + with the actual version of the release you are using. The + GENERIC kernel will be installed in /boot/GENERIC by default. + + + + Failing all the above, the GENERIC kernel + may be rebuilt and installed from the sources: + + &prompt.root; cd /usr/src +&prompt.root; env DESTDIR=/boot/GENERIC make kernel +&prompt.root; mv /boot/GENERIC/boot/kernel/* /boot/GENERIC +&prompt.root; rm -rf /boot/GENERIC/boot + + For this kernel to be picked up as GENERIC + by freebsd-update, the + GENERIC configuration file must not have been + modified in any way. It is also suggested that it is built + without any other special options (preferably with an empty + /etc/make.conf). + + + + Rebooting to the GENERIC kernel is not + required at this stage. + Major and minor version updates may be performed by providing freebsd-update with a release version target, for example, the following command will - update to &os; 6.3: + update to &os; 6.4: - &prompt.root; freebsd-update -r 6.3-RELEASE upgrade + &prompt.root; freebsd-update -r 6.4-RELEASE upgrade After the command has been received, freebsd-update will evaluate the @@ -339,7 +427,7 @@ what components have not been detected. For example: Looking up update.FreeBSD.org mirrors... 1 mirrors found. -Fetching metadata signature for 6.3-BETA1 from update1.FreeBSD.org... done. +Fetching metadata signature for 6.3-RELEASE from update1.FreeBSD.org... done. Fetching metadata index... done. Inspecting system... done. @@ -360,6 +448,18 @@ some cases, the user may be prompted with questions regarding what to install or how to proceed. + When using a custom kernel, the above step will produce a warning + similar to the following: + + WARNING: This system is running a "MYKERNEL" kernel, which is not a +kernel configuration distributed as part of FreeBSD 6.3-RELEASE. +This kernel will not be updated: you MUST update the kernel manually +before running "/usr/sbin/freebsd-update install" + + This warning may be safely ignored at this point. The updated + GENERIC kernel will be used as an intermediate + step in the upgrade process. + After all patches have been downloaded to the local system, they will then be applied. This process may take a while depending on the speed and workload of the machine. @@ -388,9 +488,28 @@ &prompt.root; freebsd-update install The kernel and kernel modules will be patched first. At - this point the machine must be rebooted. The following - command may be issued to restart the machine so the new - kernel will be loaded into memory: + this point the machine must be rebooted. If the system was running + with a custom kernel, use the &man.nextboot.8; command to set the + kernel for the next boot to /boot/GENERIC (which was + updated): + + &prompt.root; nextboot -k GENERIC + + + Before rebooting with the GENERIC kernel, + make sure it contains all drivers required for your system to boot + properly (and connect to the network, if the machine that is being + updated is accessed remotely). In particular, if the previously + running custom kernel contained built-in functionality usually + provided by kernel modules, make sure to temporarily load these + modules into the GENERIC kernel using the + /boot/loader.conf facility. You may also wish + to disable non-essential services, disk and network mounts, etc. + until the upgrade process is complete. + + + The machine should now be restarted with the updated kernel: &prompt.root; shutdown -r now @@ -431,6 +550,10 @@ &prompt.root; freebsd-update install + If the GENERIC kernel was temporarily used, + this is the time to build and install a new custom kernel in the + usual way. + Reboot the machine into the new &os; version. The process is complete. ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/filesystems/chapter.sgml#9 (text+ko) ==== @@ -1,6 +1,6 @@