PERFORCE change 155582 for review

Rene Ladan rene at FreeBSD.org
Fri Jan 2 16:45:32 UTC 2009


http://perforce.freebsd.org/chv.cgi?CH=155582

Change 155582 by rene at 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 @@
 <!--
      The FreeBSD Documentation Project
 
-     $FreeBSD: doc/en_US.ISO8859-1/books/handbook/book.sgml,v 1.174 2008/12/23 18:59:03 trhodes Exp $
+     $FreeBSD: doc/en_US.ISO8859-1/books/handbook/book.sgml,v 1.175 2009/01/02 12:35:26 manolis Exp $
 -->
 
 <!DOCTYPE BOOK PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
@@ -77,6 +77,7 @@
       <year>2006</year>
       <year>2007</year>
       <year>2008</year>
+      <year>2009</year>
       <holder>The FreeBSD Documentation Project</holder>
     </copyright>
 

==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.sgml#7 (text+ko) ====

@@ -1,7 +1,7 @@
 <!--
      The FreeBSD Documentation Project
 
-     $FreeBSD: doc/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.sgml,v 1.233 2008/12/24 21:47:59 manolis Exp $
+     $FreeBSD: doc/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.sgml,v 1.234 2009/01/02 12:34:14 manolis Exp $
 -->
 
 <chapter id="updating-upgrading">
@@ -294,17 +294,51 @@
 	or any kernel modules were modified.  This will allow &os; to
 	load the new binaries into memory.</para>
 
+      <para>The <command>freebsd-update</command> utility can
+	automatically update the <literal>GENERIC</literal> kernel only.
+	If a custom kernel is in use, it will have to be rebuilt and
+	reinstalled after <command>freebsd-update</command> finishes
+	installing the rest of the updates.  However,
+	<command>freebsd-update</command> will detect and update the
+	<literal>GENERIC</literal> kernel in <filename
+	  class="directory">/boot/GENERIC</filename> (if it exists), even if
+	it is not the current (running) kernel of the system.</para>
+
+      <note>
+	<para>It is a good idea to always keep a copy of the
+	  <literal>GENERIC</literal> kernel in <filename
+	    class="directory">/boot/GENERIC</filename>.  It will be helpful
+	  in diagnosing a variety of problems, and in performing version
+	  upgrades using <command>freebsd-update</command> as described in
+	  section <xref linkend="freebsdupdate-upgrade">.</para>
+      </note>
+
+      <para>Unless the default configuration in
+	<filename>/etc/freebsd-update.conf</filename> has been changed,
+	<command>freebsd-update</command> 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.</para>
+
       <note>
-	<para>The <command>freebsd-update</command> only works with
-	  the <filename>GENERIC</filename> kernel.  If any changes have
-	  been made to <filename>GENERIC</filename> or a custom kernel
-	  has been installed, <command>freebsd-update</command> will
-	  not complete&nbsp;&mdash; failing in the former case and
-	  producing an error in the latter.</para>
+	<para>The updates distributed via <command>freebsd-update</command>,
+	  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
+	  <command>freebsd-update install</command>.  However,
+	  <command>freebsd-update</command> will always update the
+	  <filename>/usr/src/sys/conf/newvers.sh</filename> file.  The current
+	  patch level (as indicated by the <literal>-p</literal> number
+	  reported by <command>uname -r</command>) 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.</para>
       </note>
     </sect2>
 
-    <sect2>
+    <sect2 id="freebsdupdate-upgrade">
       <title>Major and Minor Upgrades</title>
 
       <para>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.</para>
 
+      <para>If a custom kernel is in use, the upgrade process is slightly
+	more involved.  A copy of the <literal>GENERIC</literal> kernel is
+	needed, and it should be placed in <filename
+	  class="directory">/boot/GENERIC</filename>.  If the
+	<literal>GENERIC</literal> kernel is not already present in the
+	system, it may be obtained using one of the following methods:</para>
+
+      <itemizedlist>
+	<listitem>
+	  <para>If a custom kernel has only been built once, the kernel in
+	    <filename class="directory">/boot/kernel.old</filename> is
+	    actually the <literal>GENERIC</literal> one.  Simply rename this
+	    directory to
+	    <filename class="directory">/boot/GENERIC</filename>.</para>
+	</listitem>
+
+	<listitem>
+	  <para>Assuming physical access to the machine is possible, a copy
+	    of the <literal>GENERIC</literal> kernel can be installed from
+	    the CD-ROM media.  Insert your installation disc and use the
+	    following commands:</para>
+
+	  <screen>&prompt.root; <userinput>mount /cdrom</userinput>
+&prompt.root; <userinput>cd /cdrom/<replaceable>X.Y-RELEASE</replaceable>/kernels</userinput>
+&prompt.root; <userinput>./install.sh GENERIC</userinput></screen>
+
+	  <para>Replace <filename
+	      class="directory"><replaceable>X.Y-RELEASE</replaceable></filename>
+	    with the actual version of the release you are using.  The
+	    <literal>GENERIC</literal> kernel will be installed in <filename
+	      class="directory">/boot/GENERIC</filename> by default.</para>
+	</listitem>
+
+	<listitem>
+	  <para>Failing all the above, the <literal>GENERIC</literal> kernel
+	    may be rebuilt and installed from the sources:</para>
+
+	  <screen>&prompt.root; <userinput>cd /usr/src</userinput>
+&prompt.root; <userinput>env DESTDIR=/boot/GENERIC make kernel</userinput>
+&prompt.root; <userinput>mv /boot/GENERIC/boot/kernel/* /boot/GENERIC</userinput>
+&prompt.root; <userinput>rm -rf /boot/GENERIC/boot</userinput></screen>
+
+	  <para>For this kernel to be picked up as <literal>GENERIC</literal>
+	    by <command>freebsd-update</command>, the
+	    <literal>GENERIC</literal> 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
+	    <filename>/etc/make.conf</filename>).</para>
+	</listitem>
+      </itemizedlist>
+
+      <para>Rebooting to the <literal>GENERIC</literal> kernel is not
+	required at this stage.</para>
+
       <para>Major and minor version updates may be performed by
 	providing <command>freebsd-update</command> with a release
 	version target, for example, the following command will
-	update to &os;&nbsp;6.3:</para>
+	update to &os;&nbsp;6.4:</para>
 
-      <screen>&prompt.root; <userinput>freebsd-update -r 6.3-RELEASE upgrade</userinput></screen>
+      <screen>&prompt.root; <userinput>freebsd-update -r 6.4-RELEASE upgrade</userinput></screen>
 
       <para>After the command has been received,
 	<command>freebsd-update</command> will evaluate the
@@ -339,7 +427,7 @@
 	what components have not been detected.  For example:</para>
 
       <screen>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.</para>
 
+      <para>When using a custom kernel, the above step will produce a warning
+	similar to the following:</para>
+
+      <screen>WARNING: This system is running a "<replaceable>MYKERNEL</replaceable>" 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"</screen>
+
+      <para>This warning may be safely ignored at this point.  The updated
+	<literal>GENERIC</literal> kernel will be used as an intermediate
+	step in the upgrade process.</para>
+
       <para>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 @@
       <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
 
       <para>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:</para>
+	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 <filename
+	  class="directory">/boot/GENERIC</filename> (which was
+	updated):</para>
+
+      <screen>&prompt.root; <userinput>nextboot -k GENERIC</userinput></screen>
+
+      <warning>
+	<para>Before rebooting with the <literal>GENERIC</literal> 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 <literal>GENERIC</literal> kernel using the
+	  <filename>/boot/loader.conf</filename> facility.  You may also wish
+	  to disable non-essential services, disk and network mounts, etc.
+	  until the upgrade process is complete.</para>
+      </warning>
+
+      <para>The machine should now be restarted with the updated kernel:</para>
 
       <screen>&prompt.root; <userinput>shutdown -r now</userinput></screen>
 
@@ -431,6 +550,10 @@
 
       <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
 
+      <para>If the <literal>GENERIC</literal> kernel was temporarily used,
+	this is the time to build and install a new custom kernel in the
+	usual way.</para>
+
       <para>Reboot the machine into the new &os; version.  The process
 	is complete.</para>
     </sect2>

==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/filesystems/chapter.sgml#9 (text+ko) ====

@@ -1,6 +1,6 @@
 <!--
      The FreeBSD Dutch Documentation Project
-     $FreeBSD: doc/nl_NL.ISO8859-1/books/handbook/filesystems/chapter.sgml,v 1.2 2009/01/01 20:02:04 remko Exp $
+     $FreeBSD: doc/nl_NL.ISO8859-1/books/handbook/filesystems/chapter.sgml,v 1.3 2009/01/02 12:25:30 rene Exp $
 
      %SOURCE%   en_US.ISO8859-1/books/handbook/filesystems/chapter.sgml
      %SRCID%    1.5

==== //depot/projects/docproj_nl/www/en/releases/7.1R/schedule.sgml#10 (text+ko) ====

@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
 <!ENTITY base CDATA "../..">
 <!ENTITY email 'freebsd-qa'>
-<!ENTITY date "$FreeBSD: www/en/releases/7.1R/schedule.sgml,v 1.12 2008/12/23 20:56:19 hrs Exp $">
+<!ENTITY date "$FreeBSD: www/en/releases/7.1R/schedule.sgml,v 1.13 2009/01/02 09:05:45 blackend Exp $">
 <!ENTITY local.rel "7.1">
 <!ENTITY local.rel.tag "7_1">
 <!ENTITY title "FreeBSD &local.rel; Release Process">
@@ -170,7 +170,7 @@
     <tr>
       <td><tt>RELEASE</tt> builds</td>
       <td>TBD</td>
-      <td>--</td>
+      <td>1&nbsp;January&nbsp;2009</td>
       <td>Begin RELEASE builds.</td>
     </tr>
 


More information about the p4-projects mailing list