openbsd_faq4.html - webdump_tests - Testfiles for webdump
 (HTM) git clone git://git.codemadness.org/webdump_tests
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
       ---
       openbsd_faq4.html (26110B)
       ---
            1 <!doctype html>
            2 <html lang=en id=faq>
            3 
            4 <!-- If you make edits to any FAQ documents, please start each sentence
            5      on a new line, and try to keep the general formatting consistent
            6      with the rest of the pages -->
            7 
            8 <title>OpenBSD FAQ: Installation Guide</title>
            9 <meta charset=utf-8>
           10 <meta name="viewport" content="width=device-width, initial-scale=1">
           11 <link rel="stylesheet" type="text/css" href="../openbsd.css">
           12 <link rel="canonical" href="https://www.openbsd.org/faq/faq4.html">
           13 
           14 <h2 id=OpenBSD>
           15 <a href="../index.html">
           16 <i>Open</i><b>BSD</b></a>
           17 FAQ - Installation Guide
           18 <small>
           19 <a href="index.html">[FAQ Index]</a>
           20 </small>
           21 </h2>
           22 <hr>
           23 
           24 <ul>
           25   <li><a href="#bsd.rd"      >Overview of the Installation Procedure</a>
           26   <li><a href="#Checklist"   >Pre-Installation Checklist</a>
           27   <li><a href="#Download"    >Downloading OpenBSD</a>
           28   <li><a href="#MkInsMedia"  >Creating Install Media</a>
           29   <li><a href="#Install"     >Performing a Simple Install</a>
           30   <li><a href="#FilesNeeded" >File Sets</a>
           31   <li><a href="#Partitioning">Disk Partitioning</a>
           32   <li><a href="#WifiOnly"    >Bootstrapping Wireless Firmware</a>
           33   <li><a href="#SendDmesg"   >Sending Your dmesg After the Install</a>
           34   <li><a href="#site"        >Customizing the Install Process</a>
           35   <li><a href="#Multibooting">Multibooting</a>
           36 </ul>
           37 <hr>
           38 
           39 <h2 id="bsd.rd">Overview of the Installation Procedure</h2>
           40 
           41 The OpenBSD installer uses a special ramdisk kernel (<code>bsd.rd</code>)
           42 that spawns a live environment running entirely in memory.
           43 It contains the install script and a small number of utilities needed
           44 to perform a complete installation.
           45 These utilities can also be useful for disaster recovery.
           46 
           47 <p>
           48 The ramdisk kernel can be booted from a number of different sources:
           49 
           50 <ul>
           51   <li>CD/DVD
           52   <li>USB drive
           53   <li>An existing partition
           54   <li>Over the network
           55       (<a href="faq6.html#PXE">PXE</a> or other
           56        <a href="https://man.openbsd.org/diskless">network boot options</a>)
           57   <li>Floppy disk
           58 </ul>
           59 
           60 Not every <a href="../plat.html">platform</a> supports all of these options.
           61 
           62 <p>
           63 If you have a running OpenBSD system, <code>bsd.rd</code> is all you need to
           64 reinstall or upgrade to a newer version.
           65 To do so,
           66 <a href="#Download">download and verify</a> the new <code>bsd.rd</code>,
           67 place it on an existing filesystem, and boot from it.
           68 The general method of booting <code>bsd.rd</code> is to change your boot kernel
           69 from <code>/bsd</code> to <code>/bsd.rd</code> through whatever means used on
           70 your platform.
           71 
           72 <p>
           73 Booting from <code>bsd.rd</code> on an amd64 system can be done like so:
           74 
           75 <pre class="cmdbox">
           76 Using drive 0, partition 3.
           77 Loading......
           78 probing: pc0 com0 com1 mem[638K 1918M a20=on]
           79 disk: hd0+ hd1+
           80 >> OpenBSD/amd64 BOOT 3.33
           81 boot> <b>bsd.rd</b>
           82 </pre>
           83 
           84 This will boot the kernel named <code>bsd.rd</code> from the first partition
           85 of the first recognized hard disk.
           86 
           87 <p>
           88 If you need to specify a different drive or partition, just prefix the
           89 kernel name with its location.
           90 The following example would boot from the fourth partition of the second
           91 hard drive:
           92 
           93 <pre class="cmdbox">
           94 Using drive 0, partition 3.
           95 Loading......
           96 probing: pc0 com0 com1 mem[638K 1918M a20=on]
           97 disk: hd0+ hd1+
           98 >> OpenBSD/amd64 BOOT 3.33
           99 boot> <b>boot hd1d:/bsd.rd</b>
          100 </pre>
          101 
          102 OpenBSD boot loaders are documented in the architecture-specific
          103 <a href="https://man.openbsd.org/boot.8">boot(8)</a> man pages.
          104 
          105 <h2 id="Checklist">Pre-Installation Checklist</h2>
          106 
          107 Before you start, you should have some idea what you want to end up with.
          108 A few things worth considering beforehand:
          109 
          110 <ul>
          111   <li>Machine name
          112   <li>Hardware installed and available:
          113     <ul>
          114       <li>Verify compatibility with your hardware.
          115           You may want to consult the platform-specific installation notes,
          116           especially if you're using one of the non-x86 CPU architectures.
          117           They contain detailed instructions and any possible caveats:
          118           <p>
          119 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/alpha/INSTALL.alpha">alpha</a>]
          120 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/amd64/INSTALL.amd64">amd64</a>]
          121 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/arm64/INSTALL.arm64">arm64</a>]
          122 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/armv7/INSTALL.armv7">armv7</a>]
          123 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/hppa/INSTALL.hppa">hppa</a>]
          124 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/i386/INSTALL.i386">i386</a>]
          125 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/landisk/INSTALL.landisk">landisk</a>]
          126 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/loongson/INSTALL.loongson">loongson</a>]
          127 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/luna88k/INSTALL.luna88k">luna88k</a>]
          128 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/macppc/INSTALL.macppc">macppc</a>]
          129 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/octeon/INSTALL.octeon">octeon</a>]
          130 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/powerpc64/INSTALL.powerpc64">powerpc64</a>]
          131 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/riscv64/INSTALL.riscv64">riscv64</a>]
          132 [<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/sparc64/INSTALL.sparc64">sparc64</a>]
          133       <li>If wireless internet is your only networking option, does the card
          134         require additional firmware?
          135         If so, read the section on
          136         <a href="#WifiOnly">bootstrapping wireless firmware</a>.
          137     </ul>
          138   <li>Install method to be used
          139   <li>Desired disk layout:
          140     <ul>
          141       <li>Does existing data need to be saved elsewhere?
          142       <li>Will OpenBSD coexist on this system with another OS?
          143         If so, how will each system be booted?
          144         Will you need to install a boot manager?
          145       <li>Will the entire disk be used for OpenBSD, or do you want to
          146         keep an existing partition/OS? (or space for a future one)
          147       <li>How do you wish to sub-partition the OpenBSD part of your disk?
          148       <li>Do you want disk encryption?
          149     </ul>
          150   <li>Network settings, if not using DHCP:
          151     <ul>
          152       <li>Domain name and DNS address
          153       <li>IP address and subnet masks for each NIC
          154       <li>Gateway address
          155     </ul>
          156 </ul>
          157 
          158 <h2 id="Download">Downloading OpenBSD</h2>
          159 
          160 The following installation images are available:
          161 
          162 <p>
          163 <table class="zebra">
          164 
          165 <tr>
          166 <td>
          167 <b>install73.img</b>
          168 <td>
          169 A disk image that can be written to a USB flash drive or similar device.
          170 Includes the <a href="#FilesNeeded">file sets</a>.
          171 <hr>
          172 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/amd64/install73.img">amd64</a> |
          173 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/arm64/install73.img">arm64</a> |
          174 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/i386/install73.img">i386</a> |
          175 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/octeon/install73.img">octeon</a> |
          176 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/powerpc64/install73.img">powerpc64</a> |
          177 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/riscv64/install73.img">riscv64</a> |
          178 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/sparc64/install73.img">sparc64</a>
          179 
          180 <tr>
          181 <td>
          182 <b>miniroot73.img</b>
          183 <td>
          184 The same as above, but file sets are not included.
          185 They can be pulled down from the internet or from a local disk.
          186 <hr>
          187 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/alpha/miniroot73.img">alpha</a> |
          188 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/amd64/miniroot73.img">amd64</a> |
          189 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/arm64/miniroot73.img">arm64</a> |
          190 <!-- armv7 has multiple miniroot files for different boards -->
          191 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/armv7/">armv7</a> |
          192 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/i386/miniroot73.img">i386</a> |
          193 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/landisk/miniroot73.img">landisk</a> |
          194 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/loongson/miniroot73.img">loongson</a> |
          195 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/luna88k/miniroot73.img">luna88k</a> |
          196 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/octeon/miniroot73.img">octeon</a> |
          197 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/powerpc64/miniroot73.img">powerpc64</a> |
          198 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/riscv64/miniroot73.img">riscv64</a> |
          199 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/sparc64/miniroot73.img">sparc64</a>
          200 
          201 <tr>
          202 <td>
          203 <b>install73.iso</b>
          204 <td>
          205 An ISO 9660 image that can be used to create an install CD/DVD.
          206 Includes the file sets.
          207 <hr>
          208 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/alpha/install73.iso">alpha</a> |
          209 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/amd64/install73.iso">amd64</a> |
          210 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/hppa/install73.iso">hppa</a> |
          211 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/i386/install73.iso">i386</a> |
          212 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/macppc/install73.iso">macppc</a> |
          213 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/powerpc64/install73.iso">powerpc64</a> |
          214 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/sparc64/install73.iso">sparc64</a>
          215 
          216 <tr>
          217 <td>
          218 <b>cd73.iso</b>
          219 <td>
          220 The same as above, but file sets are not included.
          221 <hr>
          222 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/alpha/cd73.iso">alpha</a> |
          223 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/amd64/cd73.iso">amd64</a> |
          224 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/hppa/cd73.iso">hppa</a> |
          225 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/i386/cd73.iso">i386</a> |
          226 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/loongson/cd73.iso">loongson</a> |
          227 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/macppc/cd73.iso">macppc</a> |
          228 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/sparc64/cd73.iso">sparc64</a>
          229 
          230 <tr>
          231 <td>
          232 <b>floppy73.img</b>
          233 <td>
          234 Supports some older machines that lack other booting options.
          235 <hr>
          236 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/amd64/floppy73.img">amd64</a> |
          237 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/i386/floppy73.img">i386</a> |
          238 <a href="https://cdn.openbsd.org/pub/OpenBSD/7.3/sparc64/floppy73.img">sparc64</a>
          239 
          240 </table>
          241 
          242 <p>
          243 Images can also be downloaded from a number of alternate
          244 <a href="../ftp.html">mirror sites</a>.
          245 
          246 <p>
          247 An <code>SHA256</code> file containing checksums can be found in the same
          248 directory as the installation files.
          249 You can confirm that none of the downloaded files were mangled in transit
          250 using the <a href="https://man.openbsd.org/sha256">sha256(1)</a> command.
          251 
          252 <pre class="cmdbox">
          253 $ <b>sha256 -C SHA256 miniroot*.img</b>
          254 (SHA256) miniroot73.img: OK
          255 </pre>
          256 
          257 Or, if you're using the GNU coreutils:
          258 
          259 <pre class="cmdbox">
          260 $ <b>sha256sum -c --ignore-missing SHA256</b>
          261 miniroot73.img: OK
          262 </pre>
          263 
          264 However, this only checks for <i>accidental</i> corruption.
          265 You can use <a href="https://man.openbsd.org/signify">signify(1)</a> and the
          266 <code>SHA256.sig</code> file to cryptographically verify the downloaded image.
          267 
          268 <pre class="cmdbox">
          269 $ <b>signify -Cp /etc/signify/openbsd-73-base.pub -x SHA256.sig miniroot*.img</b>
          270 Signature Verified
          271 miniroot73.img: OK
          272 </pre>
          273 
          274 Note that the signify package on other operating systems may not include the
          275 required <a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/openbsd-73-base.pub">
          276 public key</a>, or it may be installed in another location.
          277 
          278 <p>
          279 The <code>install73.iso</code> and <code>install73.img</code> images do not
          280 contain an <code>SHA256.sig</code> file, so the installer will complain that
          281 it can't check the signature of the included sets:
          282 
          283 <pre class="cmdbox">
          284 Directory does not contain SHA256.sig. Continue without verification? [no]
          285 </pre>
          286 
          287 This is because it would make no sense for the installer to verify them.
          288 If someone were to make a rogue installation image, they could certainly
          289 change the installer to say the files were legitimate.
          290 If the image's signature has been verified beforehand, it is safe to answer
          291 "yes" at that prompt.
          292 
          293 <h2 id="MkInsMedia">Creating Install Media</h2>
          294 
          295 <h3 id="MkFlash">Flash Drives</h3>
          296 
          297 A bootable USB flash drive can be created by attaching the target device and
          298 copying over the image with <a href="https://man.openbsd.org/dd">dd(1)</a>.
          299 
          300 <p>
          301 Using OpenBSD, assuming the device was recognized as <code>sd6</code>:
          302 
          303 <pre class="cmdbox">
          304 # <b>dd if=install*.img of=/dev/rsd6c bs=1M</b>
          305 </pre>
          306 
          307 Note that the <b>raw I/O device</b> is used: <code>rsd6c</code> rather than
          308 <code>sd6c</code>.
          309 
          310 <p>
          311 Details of this will vary on other platforms.
          312 If you're using a different OS, be sure to select the appropriate device
          313 name: <code>/dev/sdX</code> on Linux or <code>/dev/rdiskX</code> on macOS
          314 for example.
          315 
          316 <h3 id="MkCD-ROM">CD-ROMs</h3>
          317 
          318 You can create a bootable CD-ROM on OpenBSD by using
          319 <a href="https://man.openbsd.org/cdio">cdio(1)</a>.
          320 
          321 <pre class="cmdbox">
          322 # <b>cdio tao cd*.iso</b>
          323 </pre>
          324 
          325 <h2 id="Install">Performing a Simple Install</h2>
          326 
          327 If you need instructions on booting from your preferred media, check the
          328 relevant <a href="../plat.html">platform page</a> of your machine.
          329 
          330 <p>
          331 The installer is designed to install OpenBSD in a very usable default
          332 configuration with a minimum of user intervention.
          333 In fact, you can often just hit <code>&lt;Enter&gt;</code> to get a good OpenBSD
          334 install, moving your hands to the rest of the keyboard only to enter the
          335 root password.
          336 
          337 <p>
          338 After the <a href="https://man.openbsd.org/dmesg">dmesg(8)</a> is shown,
          339 you will see the first installer question:
          340 
          341 <pre class="cmdbox">
          342 ...
          343 root on rd0a swap on rd0b dump on rd0b
          344 erase ^?, werase ^W, kill ^U, intr ^C, status ^T
          345 
          346 Welcome to the OpenBSD/amd64 7.3 installation program.
          347 (I)nstall, (U)pgrade, (A)utoinstall or (S)hell?
          348 </pre>
          349 
          350 Choose <code>(I)nstall</code> and follow the instructions.
          351 
          352 <h2 id="FilesNeeded">File Sets</h2>
          353 
          354 The complete OpenBSD installation is broken up into a number of file sets:
          355 
          356 <p>
          357 <table style="margin-left: 3em">
          358 <tr>
          359         <td><code>bsd</code>
          360         <td>The kernel <strong>(required)</strong>
          361 <tr>
          362         <td><code>bsd.mp</code>
          363         <td>The multi-processor kernel (only on some platforms)
          364 <tr>
          365         <td><code>bsd.rd</code>
          366         <td>The <a href="#bsd.rd">ramdisk kernel</a>
          367 <tr>
          368         <td><code>base73.tgz</code>
          369         <td>The base system <strong>(required)</strong>
          370 <tr>
          371         <td><code>comp73.tgz</code>
          372         <td>The compiler collection, headers and libraries
          373 <tr>
          374         <td><code>man73.tgz</code>
          375         <td>Manual pages
          376 <tr>
          377         <td><code>game73.tgz</code>
          378         <td>Text-based games
          379 <tr>
          380         <td><code>xbase73.tgz</code>
          381         <td>Base libraries and utilities for X11
          382         (requires <code>xshare73.tgz</code>)
          383 <tr>
          384         <td><code>xfont73.tgz</code>
          385         <td>Fonts used by X11
          386 <tr>
          387         <td><code>xserv73.tgz</code>
          388         <td>X11's X servers
          389 <tr>
          390         <td><code>xshare73.tgz</code>
          391         <td>X11's man pages, locale settings and includes
          392 </table>
          393 
          394 <p>
          395 New users are recommended to install all of them.
          396 
          397 <p>
          398 Some libraries from <code>xbase73.tgz</code>, like freetype or fontconfig, can
          399 be used outside of X by programs that manipulate text or graphics.
          400 Such programs will usually need fonts, either from <code>xfont73.tgz</code> or
          401 font packages.
          402 For the sake of simplicity, the developers decided against maintaining a minimal
          403 <code>xbase73.tgz</code> set that would allow most non-X ports to run.
          404 
          405 <h3>Adding a File Set After Install</h3>
          406 
          407 If you chose to skip some file sets at install time, you might realize later
          408 that you really do need them after all.
          409 Simply boot <a href="#bsd.rd">bsd.rd</a> from your root file system and choose
          410 <code>(U)pgrade</code>.
          411 When you get to the list of file sets, select the ones you need.
          412 
          413 <h2 id="Partitioning">Disk Partitioning</h2>
          414 
          415 OpenBSD can be installed in as little as 512MB, but using a device that small
          416 is something for advanced users.
          417 Until you have some experience, 8GB or more disk space is recommended.
          418 
          419 <p>
          420 Unlike some other operating systems, OpenBSD encourages users to split their
          421 disk into a number of partitions, rather than just one or two large ones.
          422 Some of the reasons for doing so are:
          423 
          424 <ul>
          425   <li>Security:
          426       Some of OpenBSD's default security features rely on filesystem
          427       <a href="https://man.openbsd.org/mount#o">mount options</a> such as
          428       <code>nosuid</code>, <code>nodev</code>, <code>noexec</code> or
          429       <code>wxallowed</code>.
          430   <li>Stability:
          431       A user or a misbehaved program can fill a filesystem with garbage if they
          432       have write permissions for it.
          433       Your critical programs, which hopefully run on a different filesystem,
          434       do not get interrupted.
          435   <li><a href="https://man.openbsd.org/fsck">fsck(8)</a>:
          436       You can mount partitions that you never or rarely need to write to as
          437       <code>readonly</code> most of the time, which will eliminate the need for
          438       a filesystem check after a crash or power interruption.
          439 </ul>
          440 
          441 The installer will create a partitioning plan based on the size of your
          442 hard disk.
          443 While this will not be a perfect layout for all people, it provides a
          444 good starting point for figuring out what you need.
          445 Read about disklabel's defaults for
          446 <a href="https://man.openbsd.org/disklabel#AUTOMATIC_DISK_ALLOCATION">
          447 automatic disk allocation</a> and the
          448 <a href="https://man.openbsd.org/hier">hier(7)</a> man page before making
          449 decisions about custom partitioning schemes.
          450 
          451 <ul>
          452   <li>Since some <a href="faq15.html">packages</a> need to be started from a
          453     <code>wxallowed</code> filesystem, it is recommended to have a separate
          454     <code>/usr/local</code> partition.
          455   <li>Very small partitions can become troublesome when you need to upgrade.
          456   <li>A <code>/home</code> partition can be nice.
          457     New version of the OS?
          458     Leave your <code>/home</code> partition untouched, wipe and reload
          459     everything else.
          460   <li>You may also want to create an
          461     <a href="faq14.html#altroot">altroot partition</a> for backing up your
          462     root filesystem.
          463   <li>A system exposed to the internet should have a separate <code>/var</code>
          464     and maybe even a separate <code>/var/log</code>.
          465   <li>
          466     Compiling some <a href="ports/index.html">ports</a> from source can take
          467     huge amounts of space on your <code>/usr</code> and <code>/tmp</code>
          468     partitions.
          469 </ul>
          470 
          471 <h2 id="WifiOnly">Bootstrapping Wireless Firmware</h2>
          472 
          473 For licensing reasons, some firmware cannot be directly distributed with
          474 OpenBSD.
          475 The <a href="https://man.openbsd.org/fw_update">fw_update(8)</a> tool
          476 will automatically download and install any missing firmware, but this
          477 requires a working internet connection.
          478 
          479 <p>
          480 In the case of certain hardware configurations, such as a laptop with
          481 no ethernet port, the user will have to manually download and install
          482 the firmware in order to get online for the first time.
          483 This can be done pre-installation, by adding the firmware files to the
          484 install media, or after the OS has been installed from a CD or disk.
          485 
          486 <p>
          487 Start by finding the wireless adapter's
          488 <a href="https://man.openbsd.org/?query=wireless&apropos=1">interface name</a>
          489 with <a href="https://man.openbsd.org/dmesg">dmesg(8)</a>.
          490 
          491 <p>
          492 From an existing OpenBSD installation, mount the install image as a vnode
          493 disk with <a href="https://man.openbsd.org/vnconfig">vnconfig(8)</a> and
          494 use <a href="https://man.openbsd.org/fw_update">fw_update(8)</a> to download
          495 the required files to it.
          496 This example uses firmware for an
          497 <a href="https://man.openbsd.org/iwm">iwm(4)</a> card:
          498 
          499 <pre class="cmdbox">
          500 # <b>vnconfig install73.img</b>
          501 vnd0
          502 # <b>mount /dev/vnd0a /mnt</b>
          503 # <b>fw_update -Fv -p /mnt iwm</b>
          504 # <b>umount /mnt</b>
          505 # <b>vnconfig -u vnd0</b>
          506 </pre>
          507 
          508 The resulting file can then be used to <a href="#MkInsMedia">create</a>
          509 a bootable install image with the necessary firmware.
          510 
          511 <p>
          512 If you don't have an existing OpenBSD system with internet access, use
          513 another computer to download the appropriate file from
          514 <!-- XXX needs https -->
          515 <a href="http://firmware.openbsd.org">firmware.openbsd.org</a> and put
          516 it on a USB drive that's readable by OpenBSD.
          517 Then, on the OpenBSD machine,
          518 <a href="https://man.openbsd.org/mount">mount(8)</a> the drive and use
          519 <a href="https://man.openbsd.org/fw_update">fw_update(8)</a> to install it
          520 from there.
          521 
          522 <h2 id= "SendDmesg">Sending Your dmesg After the Install</h2>
          523 
          524 After a successful install, look at the output of the
          525 <a href="https://man.openbsd.org/dmesg">dmesg(8)</a> command and see if
          526 anything stands out.
          527 If a device shows up as <code>not configured</code>,
          528 this means that it is not currently supported by the kernel.
          529 This may be improved in the future by sending the dmesg.
          530 
          531 A quote from <code>/usr/src/etc/root/root.mail</code>:
          532 
          533 <pre class="cmdbox">
          534 If you wish to ensure that OpenBSD runs better on your machines, please do us
          535 a favor (after you have your mail system configured!) and type something like:
          536 
          537 # <b>(dmesg; sysctl hw.sensors) | \
          538    mail -s "Sony VAIO 505R laptop, apm works OK" dmesg@openbsd.org</b>
          539 
          540 so that we can see what kinds of configurations people are running.  As shown,
          541 including a bit of information about your machine in the subject or the body
          542 can help us even further.  We will use this information to improve device driver
          543 support in future releases.  (Please do this using the supplied GENERIC kernel,
          544 not for a custom compiled kernel, unless you're unable to boot the GENERIC
          545 kernel.  If you have a multi-processor machine, dmesg results of both GENERIC.MP
          546 and GENERIC kernels are appreciated.)  The device driver information we get from
          547 this helps us fix existing drivers. Thank you!
          548 </pre>
          549 
          550 Alternatively, save your dmesg output to a text file and send us its contents:
          551 
          552 <pre class="cmdbox">
          553 $ <b>(dmesg; sysctl hw.sensors) > ~/dmesg.txt</b>
          554 </pre>
          555 
          556 Please configure your email client to use plain text.
          557 In particular, do not use HTML formatting or forced line breaks.
          558 Put the dmesg into the body of the mail, not as an attachment.
          559 
          560 <h2 id="site">Customizing the Install Process</h2>
          561 
          562 <h3>The <code>site73.tgz</code> File Set</h3>
          563 
          564 The OpenBSD install and upgrade scripts allow the selection of a user-created
          565 set called <code>site73.tgz</code>.
          566 Like the official <a href="#FilesNeeded">file sets</a>, this is a
          567 <a href="https://man.openbsd.org/tar">tar(1)</a> archive rooted in
          568 <code>/</code> and untarred with the <code>-xzphf</code> options.
          569 It is installed last, so it can be used to complement and modify the files from
          570 a default install.
          571 Furthermore, it is possible to use hostname-dependent sets named
          572 <code>site73-$(hostname -s).tgz</code>.
          573 
          574 <b>Note:</b>
          575 If you intend to provide the sets over HTTP(s), place <code>site73.tgz</code>
          576 in your source directory and include it in your <code>index.txt</code>.
          577 It will then be an option at install time.
          578 
          579 <h3>The <code>install.site</code> and <code>upgrade.site</code> Scripts</h3>
          580 
          581 If the <code>site73.tgz</code> file set contains an executable file
          582 <code>/install.site</code>, the installer runs it with
          583 <a href="https://man.openbsd.org/chroot">chroot(8)</a>
          584 based at the freshly installed system's root.
          585 Similarly, the upgrade script runs <code>/upgrade.site</code>.
          586 The latter can be placed in the system's root directory before rebooting
          587 for the upgrade.
          588 
          589 <p>
          590 Example usage:
          591 
          592 <ul>
          593   <li>Set the system time.
          594   <li>Do an immediate backup/archive of the new system before you expose it to
          595     the rest of the world.
          596   <li>Have a set of arbitrary commands be run after the first boot.
          597     This will happen if install.site is used to append any such commands to an
          598     <a href="https://man.openbsd.org/rc.firsttime">rc.firsttime(8)</a>
          599     file (appending to this file is necessary since the installer itself may
          600     write to this file).
          601     At boot time, <code>rc.firsttime</code> is executed once then deleted.
          602 </ul>
          603 
          604 <h2 id="Multibooting">Multibooting</h2>
          605 
          606 Multibooting is having several operating systems on one computer, with some
          607 means of selecting which OS is to boot.
          608 You may want to familiarize yourself with the
          609 <a href="faq14.html#BootAmd64">OpenBSD boot process</a> before you start.
          610 A brief introduction to <a href="https://man.openbsd.org/fdisk">fdisk(8)</a>
          611 is in the section on <a href="faq14.html#fdisk">using OpenBSD's fdisk</a>.
          612 
          613 <p>
          614 If you are adding OpenBSD to an existing system, you will probably need to
          615 create some free space before installing OpenBSD.
          616 In addition to your existing system's native tools,
          617 <a href="https://gparted.org/">gparted</a>
          618 may be useful for deleting or resizing existing partitions.
          619 Preferably use one of the four primary MBR partitions for booting OpenBSD.
          620 Extended partitions may not work.
          621 
          622 <p>
          623 <a href="https://www.rodsbooks.com/refind/">rEFInd</a> is reported to usually
          624 work.
          625 <a href="https://www.gnu.org/software/grub/">GRUB</a> is reported to usually
          626 fail.
          627 In either case, you are completely on your own.
          628 
          629 <h3>Windows</h3>
          630 
          631 The Boot Configuration Data (BCD) store allows multiple versions of Windows
          632 to be booted through <code>bcdedit</code>.
          633 A good introduction can be found in
          634 <a href="https://technet.microsoft.com/en-us/library/cc721886%28WS.10%29.aspx">
          635 this article</a>.
          636 If you want a GUI alternative, you may want to try
          637 <a href="https://neosmart.net/EasyBCD/">EasyBCD</a>.
          638 
          639 <p>
          640 You will need a copy of your OpenBSD install's
          641 <a href="faq14.html#BootAmd64">Partition Boot Record (PBR)</a>.
          642 You can copy it to a file using a process similar to:
          643 <pre class="cmdbox">
          644 # <b>dd if=/dev/rsd0a of=openbsd.pbr bs=512 count=1</b>
          645 </pre>
          646 where <code>sd0a</code> is your boot device, and you will need to get the
          647 file <code>openbsd.pbr</code> to your Windows system partition.
          648 
          649 <p>
          650 Once OpenBSD's PBR is copied to the Windows system partition, you need a shell
          651 with administrative privileges to run the following commands:
          652 
          653 <pre class="cmdbox">
          654 C:\Windows\system32> <b>bcdedit /create /d "OpenBSD/i386" /application bootsector</b>
          655 The entry {0154a872-3d41-11de-bd67-a7060316bbb1} was successfully created.
          656 C:\Windows\system32> <b>bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device boot</b>
          657 The operation completed successfully.
          658 C:\Windows\system32> <b>bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} path \openbsd.pbr</b>
          659 The operation completed successfully.
          660 C:\Windows\system32> <b>bcdedit /set {0154a872-3d41-11de-bd67-a7060316bbb1} device partition=c:</b>
          661 The operation completed successfully.
          662 C:\Windows\system32> <b>bcdedit /displayorder {0154a872-3d41-11de-bd67-7060316bbb1} /addlast</b>
          663 The operation completed successfully.
          664 </pre>
          665 
          666 Note that OpenBSD expects the computer's real-time clock to be set to
          667 Coordinated Universal Time (UTC).
          668 See <a href="faq10.html#TimeZone">this section</a> for more info.