logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

zfs-set — set properties on ZFS datasets

Description

zfsset [-u] property=value [property=value]… filesystem|volume|snapshot…
         Only some properties can be edited.  See zfsprops(7) for more information on what properties can be set
         and  acceptable  values.   Numeric values can be specified as exact values, or in a human-readable form
         with a suffix of B, K, M, G, T, P,  E,  Z  (for  bytes,  kilobytes,  megabytes,  gigabytes,  terabytes,
         petabytes,  exabytes, or zettabytes, respectively).  User properties can be set on snapshots.  For more
         information, see the UserProperties section of zfsprops(7).

         -u  Update mountpoint, sharenfs, sharesmb property but do not mount or share the dataset.

       zfsget [-r|-ddepth] [-Hp] [-j [--json-int]] [-ofield[,field]…] [-ssource[,source]…] [-ttype[,type]…]
         all|property[,property]… [filesystem|volume|snapshot|bookmark]…
         Displays properties for the given datasets.  If no datasets are specified, then  the  command  displays
         properties for all datasets on the system.  For each property, the following columns are displayed:
             name      Dataset name
             property  Property name
             value     Property value
             source    Property source local, default, inherited, temporary, received, or - (none).

         All  columns  are  displayed  by  default,  though this can be controlled by using the -o option.  This
         command takes a comma-separated list of properties as described in the “Native  Properties”  and  “User
         Properties” sections of zfsprops(7).

         The value all can be used to display all properties that apply to the given dataset's type (filesystem,
         volume, snapshot, or bookmark).

         -j, --json [--json-int]
                    Display  the output in JSON format.  Specify --json-int to display numbers in integer format
                    instead of strings for JSON output.

         -H         Display output in a form more easily parsed by scripts.  Any headers are omitted, and fields
                    are explicitly separated by a single tab instead of an arbitrary amount of space.

         -ddepth   Recursively display any children of the dataset, limiting the recursion to depth.   A  depth
                    of 1 will display only the dataset and its direct children.

         -ofield   A comma-separated list of columns to display, defaults to name,property,value,source.

         -p         Display numbers in parsable (exact) values.

         -r         Recursively display properties for any children.

         -ssource  A  comma-separated  list of sources to display.  Those properties coming from a source other
                    than those in this list are ignored.  Each source must  be  one  of  the  following:  local,
                    default, inherited, temporary, received, or none.  The default value is all sources.

         -ttype    A  comma-separated  list  of  types  to  display, where type is one of filesystem, snapshot,
                    volume, bookmark, or all.  fs, snap, or vol can be used as aliases for filesystem, snapshot,
                    or volume.

       zfsinherit [-rS] propertyfilesystem|volume|snapshot…
         Clears the specified property, causing it to be inherited from an ancestor, restored to default  if  no
         ancestor has the property set, or with the -S option reverted to the received value if one exists.  See
         zfsprops(7) for a listing of default values, and details on which properties can be inherited.

         -r  Recursively inherit the given property for all children.

         -S  Revert  the  property  to  the  received  value,  if  one  exists;  otherwise,  for non-inheritable
             properties, to the default; otherwise, operate as if the -S option was not specified.

Examples

Example1: Creating a ZFS File System Hierarchy
       The following commands create a file system named pool/home and a file system named  pool/home/bob.   The
       mount  point  /export/home is set for the parent file system, and is automatically inherited by the child
       file system.
             #zfscreatepool/home#zfssetmountpoint=/export/homepool/home#zfscreatepool/home/bobExample2: Disabling and Enabling File System Compression
       The following command disables the compression property for all file systems under pool/home.   The  next
       command explicitly enables compression for pool/home/anne.
             #zfssetcompression=offpool/home#zfssetcompression=onpool/home/anneExample3: Setting a Quota on a ZFS File System
       The following command sets a quota of 50 Gbytes for pool/home/bob:
             #zfssetquota=50Gpool/home/bobExample4: Listing ZFS Properties
       The following command lists all properties for pool/home/bob:
             # zfsgetallpool/home/bob
             NAME           PROPERTY              VALUE                  SOURCE
             pool/home/bob  type                  filesystem             -
             pool/home/bob  creation              Tue Jul 21 15:53 2009  -
             pool/home/bob  used                  21K                    -
             pool/home/bob  available             20.0G                  -
             pool/home/bob  referenced            21K                    -
             pool/home/bob  compressratio         1.00x                  -
             pool/home/bob  mounted               yes                    -
             pool/home/bob  quota                 20G                    local
             pool/home/bob  reservation           none                   default
             pool/home/bob  recordsize            128K                   default
             pool/home/bob  mountpoint            /pool/home/bob         default
             pool/home/bob  sharenfs              off                    default
             pool/home/bob  checksum              on                     default
             pool/home/bob  compression           on                     local
             pool/home/bob  atime                 on                     default
             pool/home/bob  devices               on                     default
             pool/home/bob  exec                  on                     default
             pool/home/bob  setuid                on                     default
             pool/home/bob  readonly              off                    default
             pool/home/bob  zoned                 off                    default
             pool/home/bob  snapdir               hidden                 default
             pool/home/bob  acltype               off                    default
             pool/home/bob  aclmode               discard                default
             pool/home/bob  aclinherit            restricted             default
             pool/home/bob  canmount              on                     default
             pool/home/bob  xattr                 on                     default
             pool/home/bob  copies                1                      default
             pool/home/bob  version               4                      -
             pool/home/bob  utf8only              off                    -
             pool/home/bob  normalization         none                   -
             pool/home/bob  casesensitivity       sensitive              -
             pool/home/bob  vscan                 off                    default
             pool/home/bob  nbmand                off                    default
             pool/home/bob  sharesmb              off                    default
             pool/home/bob  refquota              none                   default
             pool/home/bob  refreservation        none                   default
             pool/home/bob  primarycache          all                    default
             pool/home/bob  secondarycache        all                    default
             pool/home/bob  usedbysnapshots       0                      -
             pool/home/bob  usedbydataset         21K                    -
             pool/home/bob  usedbychildren        0                      -
             pool/home/bob  usedbyrefreservation  0                      -

       The following command gets a single property value:
             # zfsget-H-ovaluecompressionpool/home/bob
             on

       The following command gets a single property value recursively in JSON format:
             # zfsget-j-rmountpointpool/home | jq
             {
               "output_version": {
                 "command": "zfs get",
                 "vers_major": 0,
                 "vers_minor": 1
               },
               "datasets": {
                 "pool/home": {
                   "name": "pool/home",
                   "type": "FILESYSTEM",
                   "pool": "pool",
                   "createtxg": "10",
                   "properties": {
                     "mountpoint": {
                       "value": "/pool/home",
                       "source": {
                         "type": "DEFAULT",
                         "data": "-"
                       }
                     }
                   }
                 },
                 "pool/home/bob": {
                   "name": "pool/home/bob",
                   "type": "FILESYSTEM",
                   "pool": "pool",
                   "createtxg": "1176",
                   "properties": {
                     "mountpoint": {
                       "value": "/pool/home/bob",
                       "source": {
                         "type": "DEFAULT",
                         "data": "-"
                       }
                     }
                   }
                 }
               }
             }

       The following command lists all properties with local settings for pool/home/bob:
             # zfsget-r-slocal-oname,property,valueallpool/home/bob
             NAME           PROPERTY              VALUE
             pool/home/bob  quota                 20G
             pool/home/bob  compression           on

   Example5: Inheriting ZFS Properties
       The following command causes pool/home/bob and pool/home/anne to inherit the checksum property from their
       parent.
             #zfsinheritchecksumpool/home/bobpool/home/anneExample6: Setting User Properties
       The following example sets the user-defined com.example:department property for a dataset:
             #zfssetcom.example:department=12345tank/accountingExample7: Setting sharenfs Property Options on a ZFS File System
       The following commands show how to set sharenfs property options to enable read-write access for a set of
       IP addresses and to enable root access for system "neo" on the tank/home file system:
             #zfssetsharenfs='rw=@123.123.0.0/16:[::1],root=neo' tank/home

       If you are using DNS for host name resolution, specify the fully-qualified hostname.

Name

       zfs-set — set properties on ZFS datasets

See Also

zfsprops(7), zfs-list(8)

OpenZFS                                          April 20, 2024                                       ZFS-SET(8)

Synopsis

zfsset [-u] property=value [property=value]… filesystem|volume|snapshotzfsget [-r|-ddepth] [-Hp] [-j [--json-int]] [-ofield[,field]…] [-ssource[,source]…] [-ttype[,type]…]
           all|property[,property]… [filesystem|volume|snapshot|bookmark]…
       zfsinherit [-rS] propertyfilesystem|volume|snapshot

See Also