1 <?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
2 <!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN" [
3 <!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN">
6 <!ENTITY % release PUBLIC "-//FreeBSD//ENTITIES Release Specification//EN">
9 <!-- Text constants which probably don't need to be changed.-->
11 <!ENTITY % include.historic "IGNORE">
12 <!ENTITY % no.include.historic "IGNORE">
17 <title>&os; &release.current; Installation Instructions</title>
19 <corpauthor>The &os; Project</corpauthor>
21 <pubdate>$FreeBSD$</pubdate>
26 <holder role="mailto:doc@FreeBSD.org">The &os; Documentation Project</holder>
29 <legalnotice id="trademarks" role="trademarks">
38 <para>This article gives some brief instructions on installing
39 &os; &release.current; and upgrading the systems running earlier
44 <title>Installing &os;</title>
47 url="&url.books.handbook;/bsdinstall.html"><quote>Installing
50 url="&url.books.handbook;/">&os;
51 Handbook</ulink> provides more in-depth information about the
52 installation program itself, including a guided walk-through with
57 <title>Upgrading &os;</title>
59 <para>If you are upgrading from a previous release of &os;, please
61 url="http://www.FreeBSD.org/releases/9.0R/relnotes-detailed.html#UPGRADE">upgrading
62 section in the Release Notes</ulink> for notable
63 incompatibilities carefully.</para>
66 <title>Upgrading from Source</title>
68 <para>The procedure for doing a source code based update is
70 <ulink url="&url.books.handbook;/synching.html"></ulink> and
71 <ulink url="&url.books.handbook;//makeworld.html"></ulink>.</para>
73 <para>For SVN use the <filename>releng/9.0</filename> branch
74 which will be where any upcoming Security Advisories or Errata
75 Notices will be applied. The branch tag to use for updating
76 the source is <literal>RELENG_9_0</literal> for CVS.</para>
80 <title>Upgrading Using <quote>&os; Update</quote></title>
82 <para>The &man.freebsd-update.8; utility supports binary
83 upgrades of &arch.i386; and &arch.amd64; systems running
84 earlier FreeBSD releases. Systems running
85 <literal>7.[34]-RELEASE</literal>,
86 <literal>8.[12]-RELEASE</literal>,
87 <literal>9.0-BETA[123]</literal>, or
88 <literal>9.0-RC[123]</literal> can upgrade as follows:</para>
90 <para>First, ensure that your current system is up to date; a
91 change was recently made to &man.freebsd-update.8; (Errata
93 url="http://security.FreeBSD.org/advisories/FreeBSD-EN-12:01.freebsd-update.asc">FreeBSD-EN-12:01.freebsd-update</ulink>)
94 which is needed in order to upgrade to &os;
95 &release.current;.</para>
97 <screen>&prompt.root; freebsd-update fetch
98 &prompt.root; freebsd-update install</screen>
100 <para>Now the &man.freebsd-update.8; utility can fetch bits
101 belonging to &release.current;. During this process
102 &man.freebsd-update.8; will ask for help in merging
103 configuration files.</para>
105 <screen>&prompt.root; freebsd-update upgrade -r 9.0-RELEASE</screen>
107 <para>Due to changes in the way that &os; is packaged on the
108 release media, two complications may arise in this process if
109 upgrading from FreeBSD 7.x or 8.x:</para>
113 <para>The &os;, which previously could appear in either
114 <filename>/boot/kernel</filename> or
115 <filename>/boot/GENERIC</filename>, now only appears as
116 <filename>/boot/kernel</filename>. As a result, any
117 kernel appearing in <filename>/boot/GENERIC</filename>
118 will be deleted. Please carefully read the output printed
119 by &man.freebsd-update.8; and confirm that an updated
120 kernel will be placed into
121 <filename>/boot/kernel</filename> before proceeding beyond
126 <para>The &os; source tree in <filename>/usr/src</filename>
127 (if present) will be deleted. (Normally the
128 &man.freebsd-update.8; utility will update a source tree,
129 but in this case the changes in release packaging result
130 in the &man.freebsd-update.8; utility not recognizing that
131 the source tree from the old release and the source tree
132 from the new release correspond to the same part of
137 <screen>&prompt.root; freebsd-update install</screen>
139 <para>The system must now be rebooted with the newly installed
140 kernel before the non-kernel components are updated.</para>
142 <screen>&prompt.root; shutdown -r now</screen>
144 <para>After rebooting, &man.freebsd-update.8; needs to be run
145 again to install the new userland components:</para>
147 <screen>&prompt.root; freebsd-update install</screen>
149 <para>At this point, users of systems being upgraded from &os;
150 8.2-RELEASE or earlier will be prompted by
151 &man.freebsd-update.8; to rebuild all third-party applications
152 (e.g., ports installed from the ports tree) due to updates in
153 system libraries.</para>
155 <para>After updating installed third-party applications (and
156 again, only if &man.freebsd-update.8; printed a message
157 indicating that this was necessary), run
158 &man.freebsd-update.8; again so that it can delete the old (no
159 longer used) system libraries:</para>
161 <screen>&prompt.root; freebsd-update install</screen>
163 <para>Finally, reboot into &release.current;</para>
165 <screen>&prompt.root; shutdown -r now</screen>