Contents

  1. Example installation
    1. Introduction
      1. Note
    2. The installation process
    3. Keyboard layout
    4. Starting the installation
    5. MBR partitions
    6. Disklabel partitions
    7. Setting the disk name
    8. Last chance!
    9. The disk preparation process
    10. Installation type
    11. Choosing the installation media
      1. Installing from CD-ROM / DVD / install image media
      2. The CD-ROM/DVD or other device name
      3. Installing from an unmounted file system
      4. Installing via FTP and Network configuration
      5. Installing via NFS
    12. Extracting sets
    13. System configuration
    14. Finishing the installation

Example installation

Introduction

This chapter will guide you through the installation process. The concepts presented here apply to all installation methods. The only difference is in the way the distribution sets are fetched by the installer. Some details of the installation differ depending on the NetBSD release. The examples from this chapter were created with NetBSD 8.0.

Note

The following install screens are just examples. Do not simply copy them, as your hardware and configuration details may be different!

The installation process

The installation process is divided logically in two parts. In the first part you create a partition for NetBSD and write the disklabel for that partition. In the second part you decide which distribution sets (subsets of the operating system) you want to install and then extract the files into the newly created partition(s).

Keyboard layout

The NetBSD install program sysinst allows you to change the keyboard layout during the installation. If for some reason this does not work for you, you can use the map in the following table.

US IT DE FR
- ' ß )
/ - - !
= ì ' -
: ç Ö M
; ò ö m
# £ § 3
" ° Ä %
* ( ( 8
( ) ) 9
) = = 0
' à ä ù
` \ ^ @
\ ù # `

Starting the installation

To start the installation of NetBSD, insert your chosen boot media (CD/DVD, USB drive, floppy, etc.) and reboot the computer. The kernel on the installation medium will be booted and it will start displaying a lot of messages on the screen about hardware being detected.

Selecting the language
Selecting the language

When the kernel has booted you will find yourself in the NetBSD installation program, sysinst, shown in the previous figure. From here on you should follow the instructions displayed on the screen, using the INSTALL document as a companion reference. You will find the INSTALL document in various formats in the root directory of the NetBSD release. The sysinst screens all have more or less the same layout: the upper part of the screen shows a short description of the current operation or a short help message, and the rest of the screen is made up of interactive menus and prompts. To make a choice, use the cursor keys, the Ctrl+N (next) and Ctrl+P (previous) keys, or press one of the letters displayed left of each choice. Confirm your choice by pressing the Return (also known as "Enter") key.

Start by selecting the language you prefer to use for the installation process.

The next screen will allow you to select a suitable keyboard type:

Selecting a keyboard type
Selecting a keyboard type

This will bring you to the main menu of the installation program:

The sysinst main menu
The sysinst main menu

Choosing the Install NetBSD to hard disk option brings you to the next screen , where you need to confirm that you want to continue the installation:

Confirming to install NetBSD
Confirming to install NetBSD

After choosing Yes to continue, sysinst displays a list of one or more disks and asks which one you want to install NetBSD on. In the example given in the following figure, there are two disks, and NetBSD will be installed on wd0, the first SATA or IDE disk found. If you use SCSI or external USB disks, the first will be named sd0, the second sd1 and so on.

Choosing a hard disk
Choosing a hard disk

Then installer will ask to confirm the detected disk geometry from the information provided by the BIOS. It gives almost always the right values. Choose "This is the correct geometry", unless you know that the information provided by your BIOS is reportedly incorrect.

Disk geometry Disk geometry

MBR partitions

The first important step of the installation has come: the partitioning of the hard disk. First, you need to specify whether NetBSD will use a partition (suggested choice) or the whole disk. In the former case it is still possible to create a partition that uses the whole hard disk (see below) so we recommend that you select this option as it keeps the BIOS partition table in a format which is compatible with other operating systems.

Choosing the partitioning scheme
Choosing the partitioning scheme

The next screen shows the current state of the MBR partition table on the hard disk before the installation of NetBSD. There are four primary partitions, and as you can see, this example disk is currently empty. If you do have other partitions you can leave them around and install NetBSD on a partition that is currently unused, or you can overwrite a partition to use it for NetBSD.

fdisk
fdisk

Deleting a partition is simple: after selecting the partition, a menu with options for that partition will appear (see below). Change the partition kind to Delete partition to remove the partition. Of course, if you want to use the partition for NetBSD you can set the partition kind to NetBSD.

You can create a partition for NetBSD by selecting the partition you want to install NetBSD to. The partition names a to d correspond to the four primary partitions on other operating systems. After selecting a partition, a menu with options for that partition will appear, as shown here:

Partition options
Partition options

To create a new partition, the following information must be supplied:

Choose the partition type NetBSD for the new partition (using the type option). The installation program will try to guess the start position based on the end of the preceding partition. Change this value if necessary. The same thing applies to the size option; the installation program will try to fill in the space that is available until the next partition or the end of the disk (depending on which comes first). You can change this value if it is incorrect, or if you do not want NetBSD to use the suggested amount of space.

After you have chosen the partition type, start position, and size, it is a good idea to set the name that should be used in the boot menu. You can do this by selecting the bootmenu option and providing a label, e.g., NetBSD. Repeat this step for other bootable partitions so you can boot both NetBSD and a Windows system (or other operating systems) using the NetBSD bootselector. You can also choose one of the labelled partitions as default for the boot menu. If you are satisfied with the partition options, confirm your choice by selecting Partition OK. Choose Partition table OK to leave the MBR partition table editor.

If you have made an error in partitioning (for example you have created overlapping partitions) sysinst will display a message and suggest to go back to the MBR partition editor (but you are also allowed to continue). If the data is correct but the NetBSD partition lies outside the range of sectors which is bootable by the BIOS, sysinst will warn you and ask if you want to proceed anyway. Doing so may lead to problems on older PCs.

Note: This is not a limitation of NetBSD. Some old BIOSes cannot boot a partition which lies outside the first 1024 cylinders. To fully understand the problem you should study the different type of BIOSes and the many addressing schemes that they use (physical CHS, logical CHS, LBA, ...). These topics are not described in this guide.

On modern computers (those with support for int13 extensions), it is possible to install NetBSD in partitions that live outside the first 8 GB of the hard disk, provided that the NetBSD boot selector is installed.

Next, sysinst will offer to install a boot selector on the hard disk. This screen is shown here:

Installing the boot selector
Installing the boot selector

At this point, the BIOS partitions (called slices on BSD systems) have been created. They are also called PC BIOS partitions, MBR partitions or fdisk partitions.

Note: Do not confuse the slices or BIOS partitions with the BSD partitions, which are different things.

Disklabel partitions

Some platforms, like PC systems (amd64 and i386), use DOS-style MBR partitions to separate file systems. The MBR partition you created earlier in the installation process is necessary to make sure that other operating systems do not overwrite the diskspace that you allocated to NetBSD.

NetBSD uses its own partition scheme, called a disklabel, which is stored at the start of the MBR partition. In the next few steps you will create a disklabel(5) and set the sizes of the NetBSD partitions, or use existing partition sizes, as shown here:

Edit partitions?
Edit partitions?

When you choose to set the sizes of the NetBSD partitions you can define the partitions you would like to create. The installation program will generate a disklabel based on these settings. This installation screen is shown here:

Setting partition sizes
Setting partition sizes

The default partition scheme of just using a big / (root) file system (plus swap) works fine with NetBSD, and there is little need to change this. The previous figure shows how to change the size of the swap partition to 4096 MB. Note also that partition / is marked with a "+", so it will occupy all the remaining free space (not located for any other partition). Changing /tmp to reside on a RAM disk (mount_tmpfs(8) or mfs(8)) for extra speed may be a good idea. Other partition schemes may use separate partitions for /var, /usr and/or /home, but you should use your own experience to decide if you need this. When you completed the definition of all the desired partitions, choose Accept partition sizes.

The next step is to create the disklabel and edit its partitions, if necessary, using the disklabel editor (see below). If you predefined the partition sizes in the previous step, the resulting disklabel will probably fit your wishes. In that case you can complete the process immediately by selecting Partition sizes ok.

The disklabel editor
The disklabel editor

In the amd64 port, there are two reserved partitions, c, representing the NetBSD partition, and d, representing the whole disk. You can edit all other partitions by using the cursor keys and pressing the return key or using the corresponding letters. You can add a partition by selecting an unused slot and setting parameters for that partition. The partition editing screen is shown below. When you are satisfied with all the values, choose *Partition sizes ok".

Disklabel partition editing
Disklabel partition editing

Setting the disk name

After defining the partitions in the new disklabel, the last item is to enter a name for the NetBSD disk as shown below. This can be used later to distinguish between disklabels of otherwise identical disks.

Naming the NetBSD disk
Naming the NetBSD disk

Last chance!

The installer now has all the data it needs to prepare the disk. Nothing has been written to the disk at this point, and now is your last chance to abort the installation process before actually writing data to the disk. Choose no to abort the installation process and return to the main menu, or continue by selecting yes.

Last chance to abort
Last chance to abort

The disk preparation process

After confirming that sysinst should prepare the disk, it will run disklabel(8) to create the NetBSD partition layout and newfs(8) to create the file systems on the disk.

After preparing the NetBSD partitions and their filesystems, the next question (shown in the next figure) is which bootblocks to install. Usually you will choose the default of BIOS console, i.e., show boot messages on your computer's display.

If you run a farm of machines without monitor, it may be more convenient to use a serial console running on one of the serial ports. The menu also allows changing the serial port's baud rate from the default of 9600 baud, 8 data bits, no parity and one stopbit.

Selecting bootblocks
Selecting bootblocks

Installation type

The installer will then ask whether you want to do a full, minimal or custom installation. NetBSD is broken into a collection of distributions sets. Full installation is the default and will install all sets; Minimal installation will only install a small core set, the minimum of what is needed for a working system. If you select Custom installation you can select which sets you would like to have installed. This step is shown here:

Full or custom installation
Full or custom installation

If you choose to do a custom installation, sysinst will allow you to choose which distribution sets to install, as shown in the following figure. At a minimum, you must select a kernel and the Base and System (/etc) sets.

Choosing the installation media

At this point, you have finished the first and most difficult part of the installation!

The second half of the installation process consists of populating the file systems by extracting the distribution sets that you selected earlier (base, compiler tools, games, etc). Now sysinst needs to find the NetBSD sets and you must tell it where to find them: it can be the same medium where sysinst resides, or a different one, according to your preferences. The menu offers several choices, as shown below. The options are explained in detail in the INSTALL documents.

Installation media
Installation media

Installing from CD-ROM / DVD / install image media

Choose this option if you want to install NetBSD from either an optic medium ("CD-ROM / DVD") or another medium, such as an USB drive. If the running sysinst itself has been loaded from there, the corresponding device will be automatically selected and the extraction of the distribution sets will begin.

The CD-ROM/DVD or other device name

If sysinst is not able to detect the CD-ROM/DVD or the USB flash device, you can gather more information about the hardware configuration as follows:

  1. Press Ctrl-Z to pause sysinst and go to the shell prompt.

  2. Type the command:

    # dmesg
    

    This will show the kernel startup messages, including the name of the CD-ROM device, for example cd0.

  3. If the display scrolls too quickly, you can also use more:

    # dmesg | more
    

This will show the kernel startup messages, including information about not detected or not configured devices. When the first CD-ROM or DVD drive in the system is properly working, it is usually named cd0, regardless of whether it is IDE or SCSI (or even USB or FireWire). The first USB flash drive is named sd0 when it is correctly configured.

  1. As instructed, you can return to the NetBSD installation by typing either exit or ^D (Ctrl+D).

Installing from an unmounted file system

The next figure shows the menu to install NetBSD from an unmounted file system. It is necessary to specify the device (Device), its file system type (File system) and a root directory inside it (Base directory). The binary sets and source sets are .tgz files. The default mountpoint in mnt in amd64. The path is formed as follows:

/<default mountpoint>/<Base directory>/<Binary set directory> or <Source set directory>/set.tgz

Choose a combination of Base directory and Binary set directory (or Source set directory) that generates a valid path in your unmounted filesystem. If more than one consecutive / appear, only the first / will actually be considered. You need to specify a Source set directory only if you previously chose to install some sources. Source sets are usually not included in the installation images.

In the following example the install sets are stored on a MSDOS file system, on partition e on the device sd0.

Mounting a file system
Mounting a file system

Specify the device name and the partition. The following figure shows how to specify device sd0 with partition e.

Mounting a partition
Mounting a partition

In the next figure, the file system type specified is msdos. This value is used to form the command mount_<File system> to mount the volume. Any string (representing a "File system" type) which forms a valid command is accepted: for example, the NetBSD file system "ffs" or "ext2fs", a Linux file system. In this example, the Base directory item is left blank and the binary sets are stored under /sets, so that the path becomes:

/mnt///sets

Ignoring the multiple /, this is equivalent to /mnt/sets and it is a valid one. Choosing Continue will start the extraction of the sets.

Accessing a MSDOS file system
Accessing a MSDOS file system

Installing via FTP and Network configuration

If you choose to install from a local network or the Internet via FTP, sysinst must be instructed to properly get the distribution sets, as shown below.

The defaults work most of the time. You also need to configure your network connection, before proceeding: go to the corresponding menu item, pressing letter j.

NetBSD currently supports installation via ethernet, USB ethernet or wireless, and wireless LAN. Installation via DSL (PPP over Ethernet) is not supported during installation.

The first step shown in the next figure further below consists of selecting which network card to configure. sysinst will determine a list of available network interfaces, present them and ask which one to use.

Note: The exact names of your network interfaces depend on the hardware you use. Example interfaces are wm for Intel Gigabit interfaces, ne for NE2000 and compatible ethernet cards, and ath for Atheros based wireless cards. This list is by no means complete, and NetBSD supports many more network devices.

To get a list of network interfaces available on your system, interrupt the installation process by pressing Ctrl+Z, then enter

# ifconfig -a
wm0: flags=0x8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
        capabilities=2bf80<TSO4,IP4CSUM_Rx,IP4CSUM_Tx,TCP4CSUM_Rx>
        capabilities=2bf80<TCP4CSUM_Tx,UDP4CSUM_Rx,UDP4CSUM_Tx,TCP6CSUM_Tx>
        capabilities=2bf80<UDP6CSUM_Tx>
        enabled=0
        ec_capabilities=7<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU>
        ec_enabled=0
        address: 08:00:27:7e:85:d7
        media: Ethernet autoselect (1000baseT full-duplex)
        status: active
lo0: flags=0x8048<LOOPBACK,RUNNING,MULTICAST> mtu 33624

If the desired interface has not been shown, get more information about all the devices found during system boot. Type:

# dmesg | more

As instructed, you can return to the NetBSD installation by typing either exit or ^D (Ctrl+D).

Next, you have a chance to set your network medium. Press Enter to choose the default.

Note: It is unlikely that you will need anything other than the default here. If you experience problems like very slow transfers or timeouts, you may, for example, force different duplex settings for ethernet cards. To get a list of supported media and media options for a given network device ("wm0", for example), escape from sysinst by pressing Ctrl+Z, then enter:

# ifconfig -m wm0
wm0: flags=0x8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
        capabilities=2bf80<TSO4,IP4CSUM_Rx,IP4CSUM_Tx,TCP4CSUM_Rx>
        capabilities=2bf80<TCP4CSUM_Tx,UDP4CSUM_Rx,UDP4CSUM_Tx,TCP6CSUM_Tx>
        capabilities=2bf80<UDP6CSUM_Tx>
        enabled=0
        ec_capabilities=7<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU>
        ec_enabled=0
        address: 08:00:27:7e:85:d7
        media: Ethernet autoselect (1000baseT full-duplex)
        status: active
        supported Ethernet media:
                media none
                media 10baseT
                media 10baseT mediaopt full-duplex
                media 100baseTX
                media 100baseTX mediaopt full-duplex
                media autoselect

The several values printed after media may be of interest here, including keywords like autoselect but also including any mediaopt settings.

Return to the installation by typing exit or ^D (Ctrl+D).

Which network interface to configure
Which network interface to configure

Next, you have a chance to set your network medium.

Note: It is unlikely that you will need to enter anything other than the default here. If you experience problems like very slow transfers or timeouts, you may, for example, force different duplex settings for ethernet cards. To get a list of supported media and media options for a given network device (ne2, for example), escape from sysinst by pressing Ctrl+Z, then enter:

# ifconfig -m ne2
ne2: flags=8822<UP,BROADCAST,NOTRAILERS,SIMPLEX,MULTICAST> mtu 1500
        address: 00:03:0d:c6:73:d5
        media: Ethernet 10baseT full-duplex
        status: active
        supported Ethernet media:
                media 10baseT
                media 10baseT mediaopt full-duplex
                media 10base2
                media autoselect

The various values printed after media may be of interest here, including keywords like autoselect but also including any mediaopt settings.

Return to the installation by typing:

# fg

The next question will be whether you want to perform DHCP autoconfiguration as shown in the figure below. Answer Yes if you have a DHCP Dynamic Host Configuration Protocol (DHCP) running somewhere on your network, and sysinst will fetch a number of defaults from it. Answer No to enter all the values manually.

We will assume you answered No and go into all the questions asked in detail.

Using DHCP for network configuration
Using DHCP for network configuration

The image below shows the questions asked for the network configuration. The values to be entered are:

Entering and configuring network data
Entering and configuring network data

After answering all of your network configuration info, it will be displayed, and you will have a chance to go back and make changes.

Confirming network parameters
Confirming network parameters

sysinst will now run a few commands (not displayed in detail here) to configure the network: flushing the routing table, setting the default route, and testing if the network connection is operational.

Now that you have a functional network connection, you must tell the installer how to get the distribution sets, as shown in the next figure.

When you are satisfied with your settings (the defaults work most of the time), choose Get Distribution to continue.

Defining the FTP settings
Defining the FTP settings

Installing via NFS

If you want to install NetBSD from a server in your local network, NFS is an alternative to FTP.

Note: Using this installation method requires the ability to set up an NFS server, a topic which is not discussed here.

As shown below, you must specify the IP address of the NFS server with "Host", the "Base directory" that is exported by the NFS server, and the "Set directory", which contains the install sets.

NFS install screen
NFS install screen

The following image shows an example: Host 192.168.1.50 is the NFS server that provides the directory /home/username/Downloads The NetBSD install sets are stored in the directory /home/username/Downloads/sets on the NFS server. Choose Continue to start the installation of the distribution sets.

NFS example
NFS example

Extracting sets

After the method for obtaining distribution sets has been chosen, and (if applicable) after those sets have been transferred, they will be extracted into the new NetBSD file system.

After extracting all selected sets, sysinst will create device nodes in the /dev directory and then display a message saying that everything went well.

Another message will let you know that the set extraction is now completed, and that you will have an opportunity to configure some essential things before finishing the NetBSD installation:

Extraction of sets completed
Extraction of sets completed

System configuration

Having reached this point of the installation you will see the configuration menu:

Configuration menu
Configuration menu

Here, you can do the following:

Configure network

The process was already described previously, you can just call it again and have the results directly written to disk.

Timezone

The timezone is Universal Time Coordinated (UTC) by default, and you can use the two-level menu of continents/countries and cities shown in the figure below to select your timezone with the Return Key.

Timezone selection
Selecting the system's time zone

Root Shell

The default is the classic Bourne shell, sh(1). Other choices are the Korn shell (ksh(1)) and the C shell(csh(1)). If, upon reading this, you don't have some idea of which shell you prefer, simply use the default, as this is a highly subjective decision. Should you later change your mind, root's shell can always be changed with the chsh(1) command or by directly editing master.passwd(5).

Root Shell
Root Shell

Change root password

Perhaps one of the things that you would want to configurate is your root password. If you don't, it is unset, i.e. you can login as root just by entering the login name without a password.

Change root password
Change root password

When you agree to set a root password, sysinst will run the passwd(1) utility for you. Please note that the password is not echoed:

Entering root password
Entering the root password

Enable installation of binary packages

This option installs pkgin(1) and initialises its database. This will feel familiar to users of other package tools, such as apt-get, pkg or yum.

Note that installing pkgin will need a network connection. If you didn't set it up yet, this option will call the configuration for you.

Enable installation of binary packages
Enable installation of binary packages

When the installation is finished, a short help is provided, and you can return to the main menu:

After enabling installation of binary packages
After enabling installation of binary packages

Fetch and unpack pkgsrc for building from source.

Use this option to download the pkgsrc tree to install additional packages by source. Note that this method in many cases conflicts with binary packages, so you should decide for either one of them or use different directories for installing packages.

This will require a network connection set up, otherwise, it will ask for it itself.

Fetch and unpack pkgsrc
Fetch and unpack pkgsrc for building from source

This step will take a while, as pkgsrc consists of many small files which have to be unpacked on your hard disk, and several 10MB have to be downloaded.

Enabling daemons

Finally, you can enable some daemons such as sshd(8), ntpd(8) or mdnsd(8) and choose whether you want to run ntpdate(8) at boot, which will set the time no matter how large the gap between "real" time and you computer's time is. ntpd will not set the time when the time skew is too large.

Note: You can change these settings any time you want after the installation. You can either do this by directly editing the configuration files, or by running sysinst(8) again (either from the running system, or from an installation CD).

Note: When you run this menu when you already installed NetBSD, but want to configure the running system, you have to choose the hard disk NetBSD is installed on. When sysinst doesn't find an NetBSD installation, it will fail, and you have to choose another disk.

Finishing the installation

At this point the installation is finished.

Installation completed
Installation completed

After passing the dialog that confirms the installation, sysinst will return to the main menu. Remove any installation media (CD, floppy, etc.) and choose Reboot the computer to boot your new NetBSD installation.

Reboot to finish installation
Reboot to finish installation

Add a comment