Oracle Solaris ZFS Administration Guide

Creating a ZFS Storage Pool

The previous example illustrates the simplicity of ZFS. The remainder of this chapter provides a more complete example, similar to what you would encounter in your environment. The first tasks are to identify your storage requirements and create a storage pool. The pool describes the physical characteristics of the storage and must be created before any file systems are created.

ProcedureHow to Identify Storage Requirements for Your ZFS Storage Pool

  1. Determine available devices for your storage pool.

    Before creating a storage pool, you must determine which devices will store your data. These devices must be disks of at least 128 MB in size, and they must not be in use by other parts of the operating system. The devices can be individual slices on a preformatted disk, or they can be entire disks that ZFS formats as a single large slice.

    In the storage example in How to Create a ZFS Storage Pool, assume that the whole disks /dev/dsk/c1t0d0 and /dev/dsk/c2t0d0 are available for use.

    For more information about disks and how they are used and labeled, see Using Disks in a ZFS Storage Pool.

  2. Choose data replication.

    ZFS supports multiple types of data replication, which determines the types of hardware failures the pool can withstand. ZFS supports nonredundant (striped) configurations, as well as mirroring and RAID-Z (a variation on RAID-5).

    In the storage example in How to Create a ZFS Storage Pool, basic mirroring of two available disks is used.

    For more information about ZFS replication features, see Replication Features of a ZFS Storage Pool.

ProcedureHow to Create a ZFS Storage Pool

  1. Become root or assume an equivalent role with the appropriate ZFS rights profile.

    For more information about the ZFS rights profiles, see ZFS Rights Profiles.

  2. Pick a name for your storage pool.

    This name is used to identify the storage pool when you are using the zpool and zfs commands. Most systems require only a single pool, so you can pick any name that you prefer, but it must satisfy the naming requirements in ZFS Component Naming Requirements.

  3. Create the pool.

    For example, the following command creates a mirrored pool that is named tank:


    # zpool create tank mirror c1t0d0 c2t0d0
    

    If one or more devices contains another file system or is otherwise in use, the command cannot create the pool.

    For more information about creating storage pools, see Creating a ZFS Storage Pool. For more information about how device usage is determined, see Detecting In-Use Devices.

  4. View the results.

    You can determine if your pool was successfully created by using the zpool list command.


    # zpool list
    NAME                    SIZE    ALLOC   FREE    CAP  HEALTH     ALTROOT
    tank                     80G    137K     80G     0%  ONLINE     -

    For more information about viewing pool status, see Querying ZFS Storage Pool Status.