Recognize the installation program used by each operating system

Author: hubertf, David Stanford dthomas53_at_gmail_dot_com FreeBSD

Reviewer: David Stanford dthomas53_at_gmail_dot_com FreeBSD

Reviewer: Chris Silva racerx@makeworld.com FreeBSD/OpenBSD


(((installation)))

Concept

While BSDA candidates are not expected to plan an installation, they should be able to start and complete an installation according to a provided list of requirements. Since the install procedure is operating system dependent, it is recommended that the candidate have prior experience in the default install routine for each tested BSD operating system. Have some familiarity with release numbering practices in general (e.g. "dot-zero releases") and where to find the release engineering practices at each BSD project's website.

Introduction

This section first goes into release naming, then describes how to access the installer.

Release naming

The list below details the release names as shown e.g. by "uname -r" for a given operating system version. This may be different from the branch names used in any version control system, e.g. the stable branch that leads up to NetBSD 4.1 lists version numbers as 4.1_BETA from "uname -r", in CVS the branch is called "netbsd-4". The list below covers the former data, the latter item is covered elsewhere.(((version, operating system)))(((uname)))

The following release version numbers are available:

  • Development branch ("-current") naming scheme:

    • NetBSD: 4.99.x (bumped for kernel API/ABI changes)
    • FreeBSD: 7.0-CURRENT
    • OpenBSD: 4.0-current
  • Alpha release naming scheme:

    • NetBSD: TODO
    • FreeBSD:
    • OpenBSD:
  • Beta release naming scheme:

    • NetBSD: 4.0_BETA, 4.1_BETA, ...
    • FreeBSD: 6.2-BETA1, 6.2-BETA2, ...
    • OpenBSD: 4.0-beta
  • Release candidate naming scheme:

    • NetBSD: 4.0_RC1, 4.0_RC2,
    • FreeBSD: 6.2-RC1, 6.2-RC2, ...
    • OpenBSD: TODO
  • Full (major / "dot") release naming scheme:

    • NetBSD: 4.0, 5.0, ...
    • FreeBSD: 5.0-RELEASE, 6.0-RELEASE, ...
    • OpenBSD: 3.8-release, 3.9-release, 4.0-release ....
  • Stable branch version naming scheme:

    • NetBSD: 3.0_STABLE, 3.1_STABLE, 5.0_STABLE
    • FreeBSD: 6.1-STABLE, 6.2-STABLE, ...
    • OpenBSD: 3.9-stable 4.0-stable
  • Bugfix/feature update release naming scheme:

    • NetBSD: 3.1, 3.2, 4.1, 4.2, ...
    • FreeBSD: TODO
    • OpenBSD: TODO
  • Security branch version naming scheme:

    • NetBSD: 3.0.1_PATCH
    • FreeBSD: 6.1-RELEASE-p1, 6.1-RELEASE-p2, ...
    • OpenBSD: 4.0-stable
  • Security update release naming scheme:

    • NetBSD: 3.1.0, 3.1.1, 4.2.1, 4.2.2, ...
    • FreeBSD: 6.1-SECURITY
    • OpenBSD: TODO

Installer

NetBSD

Most NetBSD ports use the 'sysinst' (((sysinst))) installer, a few still provide the old script-based installer as an alternative. The installer is usually started automatically when booting install media, and doesn't need to be started manually. Install media in various formats (depending on the port) can be found in a NetBSD release's "installation" subdirectory.

Major, minor (stable) and security NetBSD releases can be found at ftp.NetBSD.org (and its mirrors) in /pub/NetBSD, ISO images are in /pub/NetBSD/iso and daily snapshots of the various branches can be found on the same host in /pub/NetBSD-daily. The development branch "NetBSD-current" can be found in the "HEAD" directory.

FreeBSD

For years now FreeBSD has used an installer known as 'sysinstall' (((sysinstall))) to install its operating system on a variety of computer architectures. While most modern installers use graphical interfaces for ease of use, sysinstall is a text-based installer consisting of a series of menus used for configuring necessary installation parameters. Despite its appearance, however, sysinstall is more than adequate at performing common installation configurations, including partitioning hard disks, configuring network interfaces, creating additional users and adding third-party software. The traditional method for installing FreeBSD is often through the use of some form of boot media; for instance, floppy disks or compact discs. Booting into sysinstall is simply a matter of setting your BIOS to the correct "boot priority", which would usually mean setting your floppy or CD-ROM drive as the first boot option.

BSDA candidates should be familiar with the menus and options presented by sysinstall during installation. This includes partitioning your system's hard disks using the FDisk utility, applying the filesystem layout, choosing the correct distribution set, selecting the proper installation media, configuring local resources (such as network interfaces and timezone settings), adding user accounts, setting start-up services and adding additional software sets. BSDA candidates should also be capable of locating additional resources online through the use of search engines, forums and mailing list archives. The FreeBSD Handbook also covers installation using sysinstall in-depth and should be considered your primary resource for information. As with nearly every software utility in the *BSD family, a manual page also exists describing both sysinstall's features and purpose.

ISO images, used for creating bootable installation CDs, can be found from FreeBSD's primary FTP server, ftp.FreeBSD.org. FreeBSD, through community support, also has numerous mirror sites available for downloading images. Depending on which site you choose, images for current and past releases may be available, including snapshots of both STABLE and CURRENT source branches. Ideally, only official RELEASE images should be used for production systems (e.g. 6.2-RELEASE).

OpenBSD

OpenBSD's installer is a straight forward install script with no curses or X. For each architecture there is an INSTALL.[arch] which goes through the installation of OpenBSD on that architecture in detail. The install script behaves the same on all architectures with every method of installation. Installing OpenBSD is usually done using either a floppy boot image, a bootable CD, booting across a network e.g. PXE on i386 (not available on all architectures). Only changes in the BIOS/Open Firmware will select what installer will be run.

A BSDA candidate should be familiar with the different installation methods, the options presented once the installer is started (Install/Upgrade/Shell), and setting up disks using fdisk(8) and disklabel(8). The candidate should also know the different installation sets to be installed and what each one adds to the system, how to merge changes in case of update. After the first reboot the BSDA applicant should be able to add and delete users and groups, to add and remove packages and to secure the system. These points will be discussed in greater depth later in the book.

DragonFly

TODO

Examples

NetBSD

(((NetBSD))) Release version numbers: see above

Installer:

For NetBSD/i386, download e.g. the 'boot[12].fs' floppy images or the 'i386cd-*.iso' ISO image. Installation floppies for machines with little memory are in the 'boot-small?.fs' files, the 'bootlap-*.fs' floppies have drivers for laptops, and the 'boot-com?.fs' images are useful for machines with serial consoles.

FreeBSD

(((FreeBSD))) For FreeBSD-6.2-RELEASE/i386, download the following images (for installation using floppies or CDs, respectively):

Floppy Images: (((floppy images)))

  • boot.flp
  • kern1.flp
  • kern2.flp

ISO Images: (((CD images)))

  • 6.2-RELEASE-i386-disc1.iso

Verify the integrity of each downloaded image using either MD5 or SHA256. The images can then be written or burned to their respective media using a utility of your choice (such as dd(1) for floppy images or burncd(8) for the ISO images). Once the images are placed on their respective media, setting your system's BIOS to the correct boot sequence and booting the system is all that's left. Assuming everything goes without error, you should eventually be prompted with the initial sysinstall screen asking you to choose your country/region.

OpenBSD

For OpenBSD (((OpenBSD))) 4.0-release, download any of the following images (for installation using floppies or CDs, respectively) some of these images are not available on all platforms:

Floppy Images:

  • floppy40.fs
  • floppyB40.fs
  • floppyC40.fs

ISO Images:

  • cd40.iso
  • cdemu40.iso

Verify the integrity of the downloaded image. Each image has a specific purpose. The candidate should know which image to boot depending on the hardware.

Practice Exercises

More information

Release naming

http://www.netbsd.org/Releases/release-map.html for NetBSD(((release-map)))

http://www.freebsd.org/doc/en_US.ISO8859-1/articles/releng for FreeBSD(((RELENG)))

http://openbsd.org/faq/faq5.html#Flavors(((flavors)))

Installer

Custom installer for DragonFly (formerly described at http://www.bsdinstaller.org(((www.bsdinstaller.org))) but the site not available for many months), bsdinstall(8) (((bsdinstall))) (since FreeBSD 9.0, replacing sysinstall(8)) for FreeBSD, sysinst on NetBSD install media, and INSTALL.[arch] on OpenBSD install media.

http://openbsd.org/faq/faq4.html#MkInsMedia(((media)))