1 <!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
2 <!ENTITY % articles.ent PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Articles Entity Set//EN">
5 <!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN">
11 <title>&os; &release.current; Installation Instructions</title>
13 <corpauthor>The &os; Project</corpauthor>
15 <pubdate>$FreeBSD$</pubdate>
20 <holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder>
23 <legalnotice id="trademarks" role="trademarks">
32 <para>This article gives some brief instructions on installing
33 &os; &release.current; and upgrading the systems running earlier
38 <title>Installing &os;</title>
41 url="&url.books.handbook;/bsdinstall.html"><quote>Installing
44 url="&url.books.handbook;/">&os;
45 Handbook</ulink> provides more in-depth information about the
46 installation program itself, including a guided walk-through with
51 <title>Upgrading &os;</title>
53 <para>If you are upgrading from a previous release of &os;, please
55 url="http://www.FreeBSD.org/releases/9.0R/relnotes-detailed.html#UPGRADE">upgrading
56 section in the Release Notes</ulink> for notable
57 incompatibilities carefully.</para>
60 <title>Upgrading from Source</title>
62 <para>The procedure for doing a source code based update is
64 <ulink url="&url.books.handbook;/synching.html"></ulink> and
65 <ulink url="&url.books.handbook;//makeworld.html"></ulink>.</para>
67 <para>For SVN use the <filename>releng/9.0</filename> branch
68 which will be where any upcoming Security Advisories or Errata
69 Notices will be applied. The branch tag to use for updating
70 the source is <literal>RELENG_9_0</literal> for CVS.</para>
74 <title>Upgrading Using <quote>&os; Update</quote></title>
76 <para>The &man.freebsd-update.8; utility supports binary
77 upgrades of &arch.i386; and &arch.amd64; systems running
78 earlier FreeBSD releases. Systems running
79 <literal>7.[34]-RELEASE</literal>,
80 <literal>8.[12]-RELEASE</literal>,
81 <literal>9.0-BETA[123]</literal>, or
82 <literal>9.0-RC[123]</literal> can upgrade as follows:</para>
84 <para>First, ensure that your current system is up to date; a
85 change was recently made to &man.freebsd-update.8; (Errata
87 url="http://security.FreeBSD.org/advisories/FreeBSD-EN-12:01.freebsd-update.asc">FreeBSD-EN-12:01.freebsd-update</ulink>)
88 which is needed in order to upgrade to &os;
89 &release.current;.</para>
91 <screen>&prompt.root; freebsd-update fetch
92 &prompt.root; freebsd-update install</screen>
94 <para>Now the &man.freebsd-update.8; utility can fetch bits
95 belonging to &release.current;. During this process
96 &man.freebsd-update.8; will ask for help in merging
97 configuration files.</para>
99 <screen>&prompt.root; freebsd-update upgrade -r 9.0-RELEASE</screen>
101 <para>Due to changes in the way that &os; is packaged on the
102 release media, two complications may arise in this process if
103 upgrading from FreeBSD 7.x or 8.x:</para>
107 <para>The &os;, which previously could appear in either
108 <filename>/boot/kernel</filename> or
109 <filename>/boot/GENERIC</filename>, now only appears as
110 <filename>/boot/kernel</filename>. As a result, any
111 kernel appearing in <filename>/boot/GENERIC</filename>
112 will be deleted. Please carefully read the output printed
113 by &man.freebsd-update.8; and confirm that an updated
114 kernel will be placed into
115 <filename>/boot/kernel</filename> before proceeding beyond
120 <para>The &os; source tree in <filename>/usr/src</filename>
121 (if present) will be deleted. (Normally the
122 &man.freebsd-update.8; utility will update a source tree,
123 but in this case the changes in release packaging result
124 in the &man.freebsd-update.8; utility not recognizing that
125 the source tree from the old release and the source tree
126 from the new release correspond to the same part of
131 <screen>&prompt.root; freebsd-update install</screen>
133 <para>The system must now be rebooted with the newly installed
134 kernel before the non-kernel components are updated.</para>
136 <screen>&prompt.root; shutdown -r now</screen>
138 <para>After rebooting, &man.freebsd-update.8; needs to be run
139 again to install the new userland components:</para>
141 <screen>&prompt.root; freebsd-update install</screen>
143 <para>At this point, users of systems being upgraded from &os;
144 8.2-RELEASE or earlier will be prompted by
145 &man.freebsd-update.8; to rebuild all third-party applications
146 (e.g., ports installed from the ports tree) due to updates in
147 system libraries.</para>
149 <para>After updating installed third-party applications (and
150 again, only if &man.freebsd-update.8; printed a message
151 indicating that this was necessary), run
152 &man.freebsd-update.8; again so that it can delete the old (no
153 longer used) system libraries:</para>
155 <screen>&prompt.root; freebsd-update install</screen>
157 <para>Finally, reboot into &release.current;</para>
159 <screen>&prompt.root; shutdown -r now</screen>