Documentation

    PLEASE NOTE: This document applies to latest version and not to the latest stable release v2.19

    Documentation for other releases can be found by using the version selector in the top right of any doc page.

    zfs

    Manage ZFS datasets.

    Attributes

    check_mode:
      support: full
    

    Parameters

    Parameter Required Type Values Description
    create_parent   boolean   Create parent datasets. [default: false]
    extra_properties   object   Dict of properties that trigger change on any modification.
    force   boolean   Force unmount. [default: false]
    name true string   Dataset name (e.g., rpool/ROOT/ubuntu).
    properties   object   Dict of dataset properties (mountpoint, compression, encryption, etc.).
    recursive   boolean   Apply recursively. [default: false]
    snapshot_suffix   string   Snapshot suffix (used with state: snapshot).
    state   string info
    present
    absent
    mounted
    unmounted
    snapshot
    State of the dataset. [default: "info"]

    Example

    - name: Create encrypted root dataset
      zfs:
        name: rpool/ROOT
        state: present
        properties:
          mountpoint: legacy
          canmount: on
          encryption: aes-256-gcm
          keylocation: file:etc/zfs/zfs-key
          keyformat: passphrase
    
    - name: Create dataset with compression
      zfs:
        name: rpool/ROOT/ubuntu
        state: present
        create_parent: true
        properties:
          mountpoint: /
          compression: zstd
          atime: off
          recordsize: 32K
    
    - name: Create unmounted dataset for OpenEBS
      zfs:
        name: rpool/openebs
        state: present
        properties:
          mountpoint: none
          canmount: off
    
    - name: Create snapshot
      zfs:
        name: rpool/ROOT/ubuntu
        state: snapshot
        snapshot_suffix: pre-upgrade
        recursive: true
    
    - name: Mount dataset
      zfs:
        name: rpool/ROOT/ubuntu
        state: mounted
    
    - name: Unmount dataset
      zfs:
        name: rpool/ROOT/ubuntu
        state: unmounted
    
    - name: Destroy dataset
      zfs:
        name: rpool/old
        state: absent
        recursive: true