The "Disk Selection" screen, seen in Figure 3.4a, summarizes the default disk configuration.By default, PC-BSD® will assume that you wish to install on the entire first disk.
If you wish to select which disk or partition to install PC-BSD® into, click the "Customize" button to start the "Disk Setup Wizard", shown in Figure 3.4b.
The wizard provides three modes of operation. The rest of this section describes these modes in detail.
- Basic: (default) select this mode if you wish to specify which partition or disk to install to.
- Advanced: select this mode if you wish to specify the installation partition or disk, use GPT partitioning, disable the FreeBSD boot menu, or specify the filesystem layout.
- FreeBSD Expert: select this mode if you prefer to drop down to a shell to manually enter the commands to setup your disk.
Once you have finished configuring your disks, you can save the finished configuration to re-use it at a later time. Insert a FAT-formatted USB stick and click "Save Config to USB".
If you select "Basic" mode, the wizard will display the screen shown in Figure 3.4c.
By default, the first hard disk will be selected. If you wish to install on a different disk, use the "Selected Disk" drop-down menu to select the disk to install into.
By default, the entire selected disk will be formatted. If the disk has been divided into partitions and you wish to install into a specific partition, use the "Selected Partition" drop-down menu to select the desired primary partition.
Once you have selected the disk and partition, click "Next" to return to the disk "Summary" screen so that you can review your selections. If you wish to change anything, use the "Back" button to return to a previous screen. Otherwise, click "Finish" to leave the wizard. Click Next then Yes to start the installation.
If you select advanced mode, the wizard will display the screen shown in Figure 3.4d.
Figure 3.4d: Advanced Mode Options
This screen provides the following options:
- Partition disk with GPT: is a partition table layout that supports larger partition sizes than the traditional MBR layout. If your installation disk/partition is larger than 2 TB, this box must be checked, otherwise checking this box is optional. Some older motherboards do not support this option. If the installation fails with this option checked, try again with the box unchecked. When in doubt, leave this box unchecked.
- Force ZFS 4k block size: this option should only be checked if you know for sure that the disk supports 4k, even though it lies and reports its size as 512b. Use with caution as it may cause the installation to fail.
- Install GRUB boot-loader: if you uncheck this option, you will not be able to use Multiple Boot Environments.
- ZFS pool name: if you wish to use a pool name other than the default of tank, check this box and input the name of the pool.
After making your selections click “Next” to access the ZFS configuration screen. The rest of this section provides a ZFS overview and demonstrates how to customize the ZFS layout.
ZFS is a combined filesystem and logical volume manager originally designed by Sun Microsystems. It was ported to FreeBSD and has been part of the operating system since FreeBSD 7.0.
ZFS provides many features including: support for high storage capacities, snapshots and copy-on-write clones, continuous integrity checking and automatic repair, RAIDZ which was designed to overcome the limitations of hardware RAID, and native NFSv4 ACLs.
If you are new to ZFS, theprovides an excellent starting point to learn about its features. These resources are also useful to bookmark and refer to as needed:
The following is a glossary of terms used by ZFS:
Pool: a collection of devices that provides physical storage and data replication managed by ZFS. This pooled storage model eliminates the concept of volumes and the associated problems of partitions, provisioning, wasted bandwidth and stranded storage. Thousands of filesystems can draw from a common storage pool, each one consuming only as much space as it actually needs. The combined I/O bandwidth of all devices in the pool is available to all filesystems at all times. Theof the ZFS Best Practices Guide provides detailed recommendations for creating the storage pool.
Mirror: a form of RAID where all data is mirrored onto two disks, creating a redundant copy should one disk fail.
RAIDZ: ZFS software solution that is equivalent to RAID5 in that it allows one disk to fail without losing data. Requires a minimum of 3 disks though 5 disks is recommended.
RAIDZ2: double-parity ZFS software solution that is similar to RAID6 in that it allows two disks to fail without losing data. Requires a minimum of 4 disks.
RAIDZ3: triple-parity ZFS software solution. RAIDZ3 offers three parity drives and can operate in degraded mode if up to three drives fail with no restrictions on which drives can fail.
Dataset: once a pool is created, it can be divided into datasets. A dataset is similar to a folder in that it supports permissions. A dataset is also similar to a filesystem in that you can set properties such as quotas and compression.
Snapshot: a read-only point-in-time copy of a filesystem. Snapshots can be created quickly and, if little data changes, new snapshots take up very little space. For example, a snapshot where no files have changed takes 0MB of storage, but if you change a 10GB file it will keep a copy of both the old and the new 10GB version. Snapshots provide a clever way of keeping a history of files, should you need to recover an older copy or even a deleted file. For this reason, many administrators take snapshots often (e.g. every 15 minutes), store them for a period of time (e.g. for a month), and store them on another system. Such a strategy allows the administrator to roll the system back to a specific time or, if there is a catastrophic loss, an off-site snapshot can restore the system up to the last snapshot interval (e.g. within 15 minutes of the data loss). Snapshots can be cloned or rolled back, but the files on the snapshot cannot be accessed independently.
Clone: a writable copy of a snapshot which can only be created on the same ZFS volume. Clones provide an extremely space-efficient way to store many copies of mostly-shared data such as workspaces, software installations, and diskless clients. Clones do not inherit the properties of the parent dataset, but rather inherit the properties based on where the clone is created in the ZFS pool. Because a clone initially shares all its disk space with the original snapshot, its used property is initially zero. As changes are made to the clone, it uses more space.
In Advanced Mode, the disk setup wizard allows you to configure your ZFS layout. The initial ZFS configuration screen is seen in Figure 3.4e.
If your system contains multiple drives and you would like to use them to create a ZFS mirror or RAIDZ, check the box "Enable ZFS mirror/raidz mode" which will enable the rest of the options in this screen. In the example shown in Figure 3.4e, the system has 7 disks, all of which are the same size. The first disk, ada0, was pre-selected in Figure 3.4d and the remaining 6 disks (ada1 to ada6) are available to be added to the ZFS pool.
If you have never configured a RAIDZ before, take the time to read thefirst. It indicates the optimum number of disks for each type of configuration. While ZFS will let you use disks of different sizes, this is discouraged as it will decrease storage capacity and performance of the ZFS system.
The PC-BSD® installer supports the following ZFS configurations:
- mirror: requires a minimum of 2 disks.
- RAIDZ1: requires a minimum of 3 disks. For best performance, 3, 5, or 9 disks are recommended.
- RAIDZ2: requires a minimum of 4 disks. For best performance, 4, 6, or 10 disks are recommended.
- RAIDZ3: requires a minimum of 5 disks. For best performance, 5, 7, or 11 disks are recommended.
The installer will not let you save a configuration if your system does not meet the minimum number of disks required by that configuration. As you select a configuration, a message will indicate how many more disks you need to select.
To use multiple disks, select the type of configuration from the "ZFS Virtual Device Mode" drop-down menu, then check the box for each disk that you would like to add to that configuration. When finished, click the Next button to see the default layout screen shown in Figure 3.4f.
Regardless of how many disks you selected for your ZFS configuration, the default layout will be the same. ZFS does not require separate partitions for /usr, /tmp, or /var. Instead, you create one ZFS partition (pool) and specify multiple mount points. A /boot partition is not mandatory with ZFS as the PC-BSD® installer puts a 64k partition at the beginning of the drive.
You can use the "Add" button to add additional mount points. You will only be prompted for the name of the mount point as size is not limited at creation time. Instead, the data on any mount point can continue to grow as long as space remains within the ZFS pool.
If you right-click any mount point, you can toggle between enabling or disabling any of the following ZFS properties.
- atime: when set to "on", controls whether the access time for files is updated when they are read. When set to "off", this property avoids producing write traffic when reading files and can result in significant performance gains, though it might confuse mailers and some other utilities.
- canmount: if set to "off", the filesystem cannot be mounted.
- checksum: automatically verifies the integrity of the data stored on disks. Setting this property to "off" is highly discouraged.
- compression: if set to "on", automatically compresses stored data to conserve disk space.
- exec: if set to "off", processes can not be executed from within this filesystem.
Once you click "Next", the wizard will show a summary of your selections. If you wish to change anything, use the "Back" button to return to a previous screen. Otherwise, click "Finish" to leave the wizard and return to the "Disk Selection" screen.
FreeBSD Expert Mode
If you select FreeBSD expert mode, you will be prompted to launch a terminal where you can use command line utilities such as bsdinstall or sysinstall to manually configure the partitions. When you are finished, type exit to leave the terminal, then click "Next" to review the disk summary. If you wish to change anything, use the "Back" button to return to a previous screen. Otherwise, click "Finish" to leave the wizard and return to the "Disk Selection" screen.