Recommit this rewrite, recreating all the changes that were wiped out

by the version control system.
This commit is contained in:
Warren Block 2017-05-12 20:33:27 +00:00
parent aa76ce37db
commit 881218adc1
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=50253

View file

@ -246,7 +246,7 @@ MergeChanges /etc/ /var/named/etc/ /boot/device.hints</programlisting>
Merges are either accepted, open an editor, or cause
<command>freebsd-update</command> to abort. When in doubt,
backup <filename>/etc</filename> and just accept the merges.
See <xref linkend="mergemaster"/> for more information about
See &man.mergemaster.8; for more information about
<command>mergemaster</command>.</para>
<programlisting># Directory in which to store downloaded updates and temporary
@ -1077,7 +1077,7 @@ before running "/usr/sbin/freebsd-update install"</screen>
to take advantage of specific hardware. Parts of the base
system can be built with non-default settings, or left out
entirely where they are not needed or desired. The build
process takes longer to update a system than binary updates, but
process takes longer to update a system than just installing binary updates, but
allows complete customization to produce a tailored version of
&os;.</para>
@ -1089,23 +1089,6 @@ before running "/usr/sbin/freebsd-update install"</screen>
the process in more detail.</para>
<procedure>
<step xml:id="updating-src-quick-start-preparing">
<title>Preparing</title>
<para>The very first time a computer is updated from source,
run</para>
<screen>&prompt.root; <userinput>etcupdate extract</userinput></screen>
<para>This creates a checkpoint for later comparison and
merging of system settings.</para>
<para><emphasis>This step is only done once on a particular
computer.</emphasis> &man.etcupdate.8; does not need any
additional updates after the first
<emphasis>extract</emphasis>.</para>
</step>
<step>
<title>Update and Build</title>
@ -1115,7 +1098,7 @@ before running "/usr/sbin/freebsd-update install"</screen>
&prompt.root; <userinput>make -j<replaceable>4</replaceable> buildworld</userinput> <co xml:id="updating-src-qs-buildworld"/>
&prompt.root; <userinput>make -j<replaceable>4</replaceable> kernel</userinput> <co xml:id="updating-src-qs-kernel"/>
&prompt.root; <userinput>make installworld</userinput> <co xml:id="updating-src-qs-installworld"/>
&prompt.root; <userinput>etcupdate</userinput> <co xml:id="updating-src-qs-etcupdate"/>
&prompt.root; <userinput>mergemaster -Ui</userinput> <co xml:id="updating-src-qs-mergemaster"/>
&prompt.root; <userinput>shutdown -r now</userinput> <co xml:id="updating-src-qs-shutdown"/></screen>
<calloutlist>
@ -1152,7 +1135,7 @@ before running "/usr/sbin/freebsd-update install"</screen>
<para>Install the world.</para>
</callout>
<callout arearefs="updating-src-qs-etcupdate">
<callout arearefs="updating-src-qs-mergemaster">
<para>Update and merge configuration files in
<filename>/etc/</filename>.</para>
</callout>
@ -1169,12 +1152,6 @@ before running "/usr/sbin/freebsd-update install"</screen>
<sect2 xml:id="updating-src-preparing">
<title>Preparing for a Source Update</title>
<para>If this is the first time that a source update has
ever been done on this computer, run
<command>etcupdate extract</command> to create a record of
system settings for later update and merging. This step only
needs to be done once on a particular computer.</para>
<para>Read <filename>/usr/src/UPDATING</filename>. Any manual
steps that must be performed before or after an update are
described in this file.</para>
@ -1324,12 +1301,10 @@ Working Copy Root Path: /usr/src
previously-compiled code in the temporary object directory,
<filename>/usr/obj</filename>. This can speed up later
builds by avoiding recompiling code that has not changed.
To force a clean rebuild of everything, remove
<filename>/usr/obj</filename> before starting a build.
This is roughly equivalent to performing a
<command>make clean</command>, but much faster:</para>
To force a clean rebuild of everything, use
<buildtarget>cleanworld</buildtarget> before starting a build:</para>
<screen>&prompt.root; <userinput>rm -rf /usr/obj/*</userinput></screen>
<screen>&prompt.root; <userinput>make cleanworld</userinput></screen>
</sect3>
<sect3 xml:id="updating-src-building-jobs">
@ -1354,14 +1329,6 @@ Working Copy Root Path: /usr/src
</example>
</sect3>
<sect3 xml:id="updating-src-building-go-fast">
<title>go-fast</title>
<para>Go-fast: Describe other go-fast options like NO_CLEAN
here. Preferably avoid having different sections for
different versions of &os;.</para>
</sect3>
<sect3 xml:id="updating-src-building-only-kernel">
<title>Building Only the Kernel</title>
@ -1454,22 +1421,23 @@ Working Copy Root Path: /usr/src
libraries are located and removed, then the system is
restarted.</para>
<sect3 xml:id="updating-src-completing-merge-etcupdate">
<sect3 xml:id="updating-src-completing-merge-mergemaster">
<title>Merging Configuration Files with
<application>etcupdate</application></title>
&man.mergemaster.8;</title>
<para><application>etcupdate</application> provides an easy
<para>&man.mergemaster.8; provides an easy
way to merge changes that have been made to system
configuration files with new versions of those files.</para>
<para><command>etcupdate</command></para>
</sect3>
<para>With <option>-Ui</option>, &man.mergemaster.8;
automatically updates files that have not been user-modified
and installs new files that are not already present:</para>
<sect3 xml:id="updating-src-completing-merge-mergemaster">
<title xml:id="mergemaster">Merging Configuration Files with
<application>mergemaster</application></title>
<screen>&prompt.root; <userinput>mergemaster -Ui</userinput></screen>
<para><command>mergemaster -Ui</command></para>
<para>If a file must be manually merged, an interactive
display allows the user to choose which portions of the files are
kept. See &man.mergemaster.8; for more information.</para>
</sect3>
<sect3 xml:id="updating-src-completing-check-old">