I wish to know what these mean, which one I should use, when specifying the <roles> as shown here.

$diskutil apfs addVolume
Usage:  diskutil apfs addVolume <containerRefDisk> <fs> <name>
        [-passprompt | -passphrase <passphrase> | -stdinpassphrase]
        [-passphraseHint <passHint>]
        [-reserve <reserveSize>] [-quota <quotaSize>]
        [-role <roles>]
        [-group[With] | -sibling <apfsVolumeDisk>]
        [-nomount | -mountpoint <mountPoint>]
        where <containerRefDisk> = Container Reference DiskIdentifier
              <fs> = an APFS file system personality: e.g. "APFS", "APFSX"
              <name> = a volume name
              <passphrase> = optionally create an encrypted volume (disk user)
              <passHint> = some string that can be shown even while locked
              <reserveSize> = optional minimum guaranteed file data capacity
              <quotaSize> = optional maximum file data usage limit
              <roles> = "0" or one or more of B|R|V|I|T|S|D|U|N|E|X|H|L|C|Y|G
              <apfsVolumeDisk> = another APFS Volume in the same Container
              <mountPoint> = "your" mount point (root only) (dir must exist)
Add a new APFS Volume to an existing APFS Container. If you specify a
passphrase, it will be encrypted with the "disk" user and that passphrase.
Ownership of the affected disks is required.
Example:  diskutil apfs addVolume disk5 APFS Foo1
          diskutil apfs addVolume disk5 APFS FooSecure2 -passphrase hello
          diskutil apfs addVolume disk5 APFS Foo3 -quota 10g -reserve 5g

I came to know that T should be used for a Time-machine back-up, but does anyone know what are the others?

1 Answer 1


The roles are:

B=Preboot (boot loader)
V=VM (swap space)
I=Installer (temporary usage)
T=Backup (Time Machine)
X=XART (hardware security)
C=Sidecar (Time Machine)
Y=Enterprise (data)
G=iDiagnostics (EFI)

Note that Tis used for the old version of Time Machine backups, whereas newer systems will be using the C role.

  • Great, but is there any way to know – how to look for such information, maybe for a different command? Or, only developers know in detail? Jan 5, 2022 at 16:55
  • 2
    Yes, it is listed in the manual. In the Terminal, run the command “man diskutil” to view the manual for diskutil.
    – jksoegaard
    Jan 5, 2022 at 17:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .