White space fix only. Translators can ignore.

Approved by:  bcr (mentor)
This commit is contained in:
Dru Lavigne 2013-01-28 15:14:36 +00:00
parent 1bf9bcb110
commit 821fa97a04
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=40782

View file

@ -113,10 +113,10 @@
</itemizedlist>
<note>
<para>Throughout this chapter, the <command>svn</command> command
is used to obtain and update &os; sources. To use it, you will
need to install the port or the package for <filename
role="package">devel/subversion</filename>.</para>
<para>Throughout this chapter, the <command>svn</command>
command is used to obtain and update &os; sources. To use it,
you will need to install the port or the package for <filename
role="package">devel/subversion</filename>.</para>
</note>
</sect1>
@ -362,10 +362,11 @@ MergeChanges /etc/ /var/named/etc/</programlisting>
<para><emphasis>Major version</emphasis> upgrades are when &os;
is upgraded from one major version to another, like from
&os;&nbsp;8.X to &os;&nbsp;9.X. Major version upgrades will remove old object files and
libraries which will break most third party applications.
It is recommended that all installed ports either be removed
and re-installed or upgraded after a major version upgrade by using the
&os;&nbsp;8.X to &os;&nbsp;9.X. Major version upgrades will
remove old object files and libraries which will break most
third party applications. It is recommended that all
installed ports either be removed and re-installed or upgraded
after a major version upgrade by using the
<filename role="package">ports-mgmt/portupgrade</filename>
utility. A brute-force rebuild of all installed
applications can be accomplished with this command:</para>
@ -383,45 +384,47 @@ MergeChanges /etc/ /var/named/etc/</programlisting>
<title>Dealing with Custom Kernels</title>
<para>If a custom kernel is in use, the upgrade process is
slightly more involved, and the procedure varies depending on
the version of &os;.</para>
slightly more involved, and the procedure varies depending
on the version of &os;.</para>
<sect4 id="freebsd-update-custom-kernel-8x">
<title>Custom Kernels with &os;&nbsp;8.X and Earlier</title>
<para>A copy of the
<filename>GENERIC</filename> kernel is needed, and it should
be placed in
<filename class="directory">/boot/GENERIC</filename>. If the
<filename>GENERIC</filename> kernel is not already present in
the system, it may be obtained using one of the following
methods:</para>
<filename>GENERIC</filename> kernel is needed, and it
should be placed in <filename
class="directory">/boot/GENERIC</filename>. If the
<filename>GENERIC</filename> 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
kernel in <filename
class="directory">/boot/kernel.old</filename> is
actually the <filename>GENERIC</filename> 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 <filename>GENERIC</filename> kernel can be
installed from the CD-ROM media. Insert your installation
disc and use the following commands:</para>
<para>Assuming physical access to the machine is
possible, a copy of the <filename>GENERIC</filename>
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
<filename>GENERIC</filename> kernel will be installed in
<filename class="directory">/boot/GENERIC</filename> by
class="directory"><replaceable>X.Y-RELEASE</replaceable></filename>
with the actual version of the release you are using.
The <filename>GENERIC</filename> kernel will be
installed in <filename
class="directory">/boot/GENERIC</filename> by
default.</para>
</listitem>
@ -438,14 +441,15 @@ MergeChanges /etc/ /var/named/etc/</programlisting>
<para>For this kernel to be picked up as
<filename>GENERIC</filename>
by <command>freebsd-update</command>, the
<filename>GENERIC</filename> configuration file must not
have been modified in any way. It is also suggested that
it is built without any other special options.</para>
<filename>GENERIC</filename> configuration file must
not have been modified in any way. It is also
suggested that it is built without any other special
options.</para>
</listitem>
</itemizedlist>
<para>Rebooting to the <filename>GENERIC</filename> kernel is
not required at this stage.</para>
<para>Rebooting to the <filename>GENERIC</filename> kernel
is not required at this stage.</para>
</sect4>
<sect4 id="freebsd-update-custom-kernel-9x">
@ -455,7 +459,8 @@ MergeChanges /etc/ /var/named/etc/</programlisting>
<listitem>
<para>If a custom kernel has only been built once, the
kernel in
<filename class="directory">/boot/kernel.old</filename>
<filename
class="directory">/boot/kernel.old</filename>
is actually the <literal>GENERIC</literal> kernel.
Rename this directory to <filename
class="directory">/boot/kernel</filename>.</para>
@ -490,8 +495,8 @@ MergeChanges /etc/ /var/named/etc/</programlisting>
</listitem>
</itemizedlist>
<para>Rebooting to the <filename>GENERIC</filename> kernel is
not required at this stage.</para>
<para>Rebooting to the <filename>GENERIC</filename> kernel
is not required at this stage.</para>
</sect4>
</sect3>
@ -507,10 +512,11 @@ MergeChanges /etc/ /var/named/etc/</programlisting>
<para>After the command has been received,
<command>freebsd-update</command> will evaluate the
configuration file and current system in an attempt to gather
the information necessary to update the system. A screen
listing will display what components have been detected and
what components have not been detected. For example:</para>
configuration file and current system in an attempt to
gather the information necessary to update the system. A
screen listing will display what components have been
detected and what components have not been detected. For
example:</para>
<screen>Looking up update.FreeBSD.org mirrors... 1 mirrors found.
Fetching metadata signature for 8.0-RELEASE from update1.FreeBSD.org... done.
@ -531,11 +537,11 @@ Does this look reasonable (y/n)? y</screen>
<para>At this point, <command>freebsd-update</command> will
attempt to download all files required for the upgrade. In
some cases, the user may be prompted with questions regarding
what to install or how to proceed.</para>
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>
<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 8.0-RELEASE.
@ -543,20 +549,21 @@ 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 <filename>GENERIC</filename> kernel will be used as an
intermediate step in the upgrade process.</para>
updated <filename>GENERIC</filename> 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.
Configuration files will then be merged&nbsp;&mdash; this part
of the process requires some user intervention as a file may
be merged or an editor may appear on screen for a manual
merge. The results of every successful merge will be shown to
the user as the process continues. A failed or ignored merge
will cause the process to abort. Users may wish to make a
backup of <filename class="directory">/etc</filename> and
manually merge important files, such as
Configuration files will then be merged&nbsp;&mdash; this
part of the process requires some user intervention as a
file may be merged or an editor may appear on screen for a
manual merge. The results of every successful merge will be
shown to the user as the process continues. A failed or
ignored merge will cause the process to abort. Users may
wish to make a backup of <filename
class="directory">/etc</filename> and manually merge
important files, such as
<filename>master.passwd</filename> or
<filename>group</filename> at a later time.</para>
@ -576,8 +583,8 @@ before running "/usr/sbin/freebsd-update install"</screen>
<para>The kernel and kernel modules will be patched first. At
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
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>
@ -585,16 +592,16 @@ before running "/usr/sbin/freebsd-update install"</screen>
<warning>
<para>Before rebooting with the <filename>GENERIC</filename>
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 <filename>GENERIC</filename> 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
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 <filename>GENERIC</filename> 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>
@ -607,9 +614,9 @@ before running "/usr/sbin/freebsd-update install"</screen>
<command>freebsd-update</command> will need to be started
again. The state of the process has been saved and thus,
<command>freebsd-update</command> will not start from the
beginning, but will remove all old shared libraries and object
files. To continue to this stage, issue the following
command:</para>
beginning, but will remove all old shared libraries and
object files. To continue to this stage, issue the
following command:</para>
<screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
@ -623,10 +630,10 @@ before running "/usr/sbin/freebsd-update install"</screen>
<sect3 id="freebsdupdate-portsrebuild">
<title>Rebuilding Ports After a Major Version Upgrade</title>
<para>After a major version upgrade, all third party software will now need to be rebuilt and
re-installed. This is required as installed software may
depend on libraries which have been removed during the upgrade
process. The
<para>After a major version upgrade, all third party software
will now need to be rebuilt and re-installed. This is
required as installed software may depend on libraries which
have been removed during the upgrade process. The
<filename role="package">ports-mgmt/portupgrade</filename>
command may be used to automate this process. The following
commands may be used to begin this process:</para>
@ -637,19 +644,19 @@ before running "/usr/sbin/freebsd-update install"</screen>
&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db</userinput>
&prompt.root; <userinput>portupgrade -af</userinput></screen>
<para>Once this has completed, finish the upgrade process with a
final call to <command>freebsd-update</command>. Issue the
following command to tie up all loose ends in the upgrade
process:</para>
<para>Once this has completed, finish the upgrade process with
a final call to <command>freebsd-update</command>. Issue
the following command to tie up all loose ends in the
upgrade process:</para>
<screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
<para>If the <filename>GENERIC</filename> kernel was temporarily
used, this is the time to build and install a new custom
kernel in the usual way.</para>
<para>If the <filename>GENERIC</filename> 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>
<para>Reboot the machine into the new &os; version. The
process is complete.</para>
</sect3>
</sect2>
@ -1493,16 +1500,18 @@ Fetching 133 new ports or files... done.</screen>
</indexterm>
<listitem>
<para>Use the <link linkend="svn">svn</link> program to
check out the desired development or release branch.
This is the recommended method, providing access to
&os; development as it occurs. The preferred URL
prefix for <application>Subversion</application>
checkout of the -CURRENT base system is
<literal>http://svn.freebsd.org/base/head/</literal>;
<para>Use the <link linkend="svn">svn</link> program
to check out the desired development or release
branch. This is the recommended method, providing
access to &os; development as it occurs. The
preferred URL prefix for
<application>Subversion</application> checkout of
the -CURRENT base system is
<literal>http://svn.freebsd.org/base/head/</literal>;
because of the size of the repository, it is
recommended that only desired subtrees be checked out.
</para>
recommended that only desired subtrees be checked
out.</para>
</listitem>
<listitem>
@ -1516,8 +1525,8 @@ Fetching 133 new ports or files... done.</screen>
environment.</para>
<warning>
<para><command>cvsup</command> has been deprecated by
the Project, and is not recommended.</para>
<para><command>cvsup</command> has been deprecated
by the Project, and is not recommended.</para>
</warning>
<note>
@ -1557,7 +1566,7 @@ Fetching 133 new ports or files... done.</screen>
for fairly long periods of time. We recommend using
<application><link
linkend="svn">Subversion</link></application> for
any system with Internet connectivity.</para>
any system with Internet connectivity.</para>
</listitem>
</orderedlist>
</listitem>
@ -1730,22 +1739,22 @@ Fetching 133 new ports or files... done.</screen>
</indexterm>
<listitem>
<para>Use the <link linkend="svn">svn</link> program to
check out the desired development or release branch.
This is the recommended method, providing access to
&os; development as it occurs. Branch names include
<literal>head</literal> for the current development
head, and branches identified in <ulink
url="&url.base;/releng/">the release engineering page</ulink>,
such as
<para>Use the <link linkend="svn">svn</link> program
to check out the desired development or release
branch. This is the recommended method, providing
access to &os; development as it occurs. Branch
names include <literal>head</literal> for the
current development head, and branches identified in
<ulink url="&url.base;/releng/">the release
engineering page</ulink>, such as
<literal>stable/9</literal> or
<literal>releng/9.0</literal>. The preferred URL
prefix for <application>Subversion</application>
checkout of the base system is
<literal>http://svn.freebsd.org/base/</literal>;
because of the size of the repository, it is
recommended that only desired subtrees be checked out.
</para>
recommended that only desired subtrees be checked
out.</para>
</listitem>
<listitem>
@ -1760,8 +1769,8 @@ Fetching 133 new ports or files... done.</screen>
your environment.</para>
<warning>
<para><command>cvsup</command> has been deprecated by
the Project, and is not recommended.</para>
<para><command>cvsup</command> has been deprecated
by the Project, and is not recommended.</para>
</warning>
</listitem>
@ -1839,25 +1848,25 @@ Fetching 133 new ports or files... done.</screen>
<secondary>anonymous</secondary>
</indexterm>
<para><application>Subversion</application>, <application>Anonymous
CVS</application> and <application>CVSup</application> use the
<para><application>Subversion</application>,
<application>Anonymous CVS</application> and
<application>CVSup</application> use the
<emphasis>pull</emphasis> model of updating sources. For
<application>Subversion</application>,
the user (or a <command>cron</command> script) invokes the
<application>Subversion</application>, the user (or a
<command>cron</command> script) invokes the
<command>svn</command> program, and it brings files up-to-date.
<application>Subversion</application> is the preferred means of
updating local source trees.
<command>cvsup</command> and <command>cvs</command> work under
similar principles, but are now deprecated in favour of Subversion.
The updates you receive are up-to-the-minute and
you get them when, and only when, you want them. You can easily
restrict your updates to the specific files or directories that
are of interest to you. Updates are generated on the fly by the
server, according to what you have and what you want to have.
Unless the reason is truly compelling,
<application>Subversion</application> should be used in preference
to other synchronization mechanisms, which have been deprecated
and will be discontinued in the future.</para>
updating local source trees. <command>cvsup</command> and
<command>cvs</command> work under similar principles, but are
now deprecated in favour of Subversion. The updates you receive
are up-to-the-minute and you get them when, and only when, you
want them. You can easily restrict your updates to the specific
files or directories that are of interest to you. Updates are
generated on the fly by the server, according to what you have
and what you want to have. Unless the reason is truly
compelling, <application>Subversion</application> should be used
in preference to other synchronization mechanisms, which have
been deprecated and will be discontinued in the future.</para>
<indexterm>
<primary><application>CTM</application></primary>