• t221006 (2/3)

    From Fleuger@21:1/5 to All on Thu Oct 6 19:30:36 2022
    [continued from previous message]

    Backups should be always be performed on a regular basis and
    before modifying any RAID set using these commands.

    The following is a list of appleRAID sub-verbs with their
    descriptions and individual arguments.

    list [-plist | UUID]
    Display AppleRAID volumes with current status and
    associated member disks. If UUID is specified,
    only list the RAID set with that AppleRAID Set
    UUID. If -plist is specified, then a property list
    will be emitted instead of user-formatted output.
    The -plist and UUID arguments may not both be spec-
    ified. diskutil listRAID and diskutil checkRAID
    are deprecated synonyms for diskutil appleRAID
    list.

    create mirror | stripe | concat setName format devices ...
    Create a new RAID set consisting of multiple disks
    and/or RAID sets. setName is used for both the
    name of the created RAID volume and the RAID set
    itself (as displayed in list). e.g. 'diskutil cre-
    ateRAID stripe MyArray JHFS+ disk1 disk2 disk3
    disk4'. Ownership of the affected disks is
    required. diskutil createRAID is a deprecated syn-
    onym for diskutil appleRAID create.

    delete raidVolume
    Destroy an existing RAID set. If the RAID set is a
    mirror with a resizable file system, delete will
    attempt to convert each of the member partitions
    back into a non-RAID volume while retaining the
    contained file system. For concatenated RAID sets
    with a resizable file system, delete will attempt
    to shrink the file system to fit on the first mem-
    ber partition and convert that to a non-RAID vol-
    ume. Ownership of the affected disks is required.
    diskutil destroyRAID is a deprecated synonym for
    diskutil appleRAID delete.

    repairMirror raidVolume newDevice
    Repair a degraded mirror by adding a "new" disk
    given as newDevice to the RAID mirror set whose
    exported disk device or set UUID is given as
    raidVolume. The new disk must be the same size or
    larger than the existing disks in the RAID set.
    After running this command, you should manually
    remove the old (orphaned, failed) member(s) with
    diskutil appleRAID remove. Ownership of the
    affected disk is required. diskutil repairMirror
    is a deprecated synonym for diskutil appleRAID
    repairMirror.

    add type newDevice raidVolume
    Add a new member or hot spare to an existing RAID
    set. Type can be either member or spare. New
    disks are added live, the RAID volume does not need
    to be unmounted. Mirrored volumes support adding
    both members and hot spares, concatenated volumes
    only support adding members. When adding to a mir-
    rored RAID set, the new disk must be the same size
    or larger than the existing disks in the RAID set.
    Adding a hot spare to a mirror will enable autore-
    building for that mirror. Adding a new member to a
    concatenated RAID set appends the member and
    expands the RAID volume. Ownership of the affected
    disk is required. diskutil addToRAID is a depre-
    cated synonym for diskutil appleRAID add.

    remove oldDevice raidVolume
    Remove a member or spare from an existing RAID set.
    Old disks are removed live; the RAID volume does
    not need to be unmounted. For missing devices,
    oldDevice must be the device's UUID. Online mirror
    members with a resizable file system will be con-
    verted to non-RAID volumes, spare and offline mem-
    bers will be marked free. For concatenated RAID
    sets, only the last member can be removed. For
    resizable file systems remove will first attempt to
    shrink the concatenated RAID set so that the file
    system fits on the remaining disks. Ownership of
    the affected disk is required. diskutil
    removeFromRAID is a deprecated synonym for diskutil
    appleRAID remove.

    enable mirror | concat device
    Convert a non-RAID disk partition containing a
    resizable file system (such as JHFS+) into an
    unpaired mirror or single disk concatenated RAID
    set. Disks that were originally partitioned on Mac
    OS X 10.2 Jaguar or earlier or were partitioned to
    be Mac OS 9 compatible may not be resizable. Own-
    ership of the affected disk is required. diskutil
    enableRAID is a deprecated synonym for diskutil
    appleRAID enable.

    update key value raidVolume
    Update the key value parameters of an existing RAID
    set. Valid keys are:

    + AutoRebuild - If true, the system
    attempts to rebuild degraded mirrored
    volumes automatically. When looking for
    devices for rebuild, AppleRAID first
    looks for hot spares and then degraded
    members. Use a value of "1" for true and
    "0" for false.

    + SetTimeout - Controls how long the system
    waits (in seconds) for a missing device
    before degrading a mirrored raid set.
    Also controls the amount of time you have
    to disconnect all devices from an
    unmounted mirror without degrading it.

    Ownership of the affected disk is required.
    diskutil updateRAID is a deprecated synonym for
    diskutil appleRAID update.

    coreStorage | cs coreStorageVerb [...]
    CoreStorage verbs can be used to create, manipulate and
    destroy CoreStorage volumes.

    CoreStorage maintains a world of virtual disks, somewhat like
    RAID, in which one can easily add or remove imported backing
    store disks, as well as exported usable volumes, to or from a
    pool (or several pools). This provides the user with flexibil-
    ity in allocating their hardware; user or operating system
    data can span multiple physical disks seamlessly, for example.

    Apple CoreStorage defines four types of objects, instances of
    which are uniquely represented by a UUID:

    + Logical Volume Group (LVG)

    + Physical Volume (PV)

    + Logical Volume Family (LVF)

    + Logical Volume (LV)

    The Logical Volume Group (LVG) is the top or "pool" level;
    zero or more may exist during any OS boot time session.

    An LVG imports one or more Physical Volumes (PVs). A PV repre-
    sents a device that feeds the LVG storage space; a PV is nor-
    mally real media but it can be a disk image or even an
    AppleRAID Set. A disk offered to be a PV must be a partition
    and the encompassing scheme must be GPT.

    An LVG exports zero or more Logical Volume Families (LVFs). An
    LVF contains properties which govern and bind together all of
    its descendant Logical Volumes (LVs). These properties provide
    settings for Full Disk Encryption (FDE) (such as whether the
    LVG is encrypted, which users have access, etc) and other ser-
    vices. However, at the present time, for new LVF creation,
    only zero or one LVF per LVG is supported.

    A Logical Volume Family (LVF) exports one or more Logical Vol-
    umes (LVs). However, at the present time, only and exactly
    one LV per LVF is supported.

    A Logical Volume (LV) exports a dev node, upon which a file
    system (such as Journaled HFS+) resides.

    For more information on specifying device arguments, see the
    DEVICES section below.

    CoreStorage is not a replacement for backing up your data.
    Backups should be always be performed on a regular basis and
    before modifying any CoreStorage volumes using these commands.

    The following is a list of coreStorage sub-verbs with their
    descriptions and individual arguments.

    list [-plist | UUID]
    Display a tree view of the CoreStorage world for
    all current logical volume groups (LVGs) with mem-
    ber disks (PVs) and exported volumes (LVFs and
    LVs), with properties and status for each level.
    If -plist is specified then a property list will be
    emitted instead of the formatted tree output; the
    UUIDs can be used with the diskutil coreStorage
    information verb to get properties for the object
    represented by that UUID. If UUID is specified
    then an attempt is made to list only that UUID
    (whatever type of CoreStorage object it may repre-
    sent). The -plist and UUID arguments may not both
    be specified.

    info | information [-plist] UUID | device
    Display properties of the CoreStorage object (LVG,
    PV, LVF, or LV) associated with the given CoreStor-
    age UUID or disk.

    convert device [-stdinpassphrase | -passphrase [passphrase]]
    Convert a regular Journaled HFS+ or Case-sensitive
    Journaled HFS+ volume (must be on a partition and
    within a GPT partitioning scheme) into a CoreStor-
    age logical volume.

    If -passphrase is specified, the on-disk bytes will
    be encrypted. You will be prompted for a new
    passphrase interactively, or you can specify the
    passphrase on the command line. Alternatively, if
    you specify -stdinpassphrase the standard input is
    read for the passphrase so that a program could
    execute diskutil and send the passphrase through a
    pipe without having to expose it as a command-line
    parameter.

    The volume must be resizable (the above types are)
    and also mounted. Conversion is done live and in-
    place; targeting the boot volume is supported; as
    much of the conversion as possible is done before
    an eject or reboot is necessary.

    After slightly shrinking the source volume to make
    room for CoreStorage data structures at the end,
    its partition type is changed to Apple_CoreStorage
    and it becomes a CoreStorage Physical Volume. A
    new CoreStorage Logical Volume Group is then cre-
    ated with this Physical Volume as the backing
    store, followed by the creation of a Logical Volume
    Family and Logical Volume pair.

    At this point, the new CoreStorage PV/LVG/LVF/LV
    stack is ready for use, although the "old" mount-
    point must first be unmounted; yet it might not be
    unmountable. This will occur if the target (now the
    PV) is the current boot volume.

    Just before exiting, diskutil coreStorage convert
    will try to unmount the target disk (which is now
    the "old" mount point and the new PV). If success-
    ful (target is not the boot disk), the volume now
    becomes mounted from the LV. If unsuccessful (tar-
    get is the boot disk), a reboot is necessary.

    At this point, if no encryption was specified, all
    is done. Otherwise, the bytes-on-disk will begin to
    be encrypted in-place by CoreStorage automatically
    "in the background" while the PV/LVG/LVF/LV stack
    continues to be usable. Encryption progress may be
    monitored with diskutil coreStorage list.

    When encryption is finished, a passphrase will be
    required the next time the LV is ejected and re-
    attached. If the LV is hosting the boot volume,
    this passphrase requirement will thus occur at the
    next reboot.

    Note that all on-disk data is not secured immedi-
    ately; it is a deliberate process of encrypting all
    on-disk bytes while the CoreStorage driver keeps
    publishing the (usable) LVG/LV.

    Ownership of the affected disk is required.

    revert device | lvUUID [-stdinpassphrase] | [-passphrase
    passphrase] | [-recoverykeychain file]
    Convert a CoreStorage logical volume back to its
    native type. The volume must have been created by
    means of conversion, e.g. with diskutil coreStorage
    convert.

    If the volume was not created with a passphrase,
    then simple ownership of the affected disk is
    required; otherwise, a passphrase must be supplied,
    either interactively or via one of the parameters
    or a keychain file in the same manner as diskutil
    coreStorage unlockVolume.

    create | createLVG lvgName devices ...
    Create a CoreStorage logical volume group. The
    disks specified will become the (initial) set of
    physical volumes; more than one may be specified.
    You can specify partitions (which will be re-typed
    to be Apple_CoreStorage) or whole-disks (which will
    be partitioned as GPT and will contain an
    Apple_CoreStorage partition). The resulting LVG
    UUID can then be used with createVolume below. All
    existing data on the drive(s) will be lost. Owner-
    ship of the affected disk is required.

    delete | deleteLVG lvgUUID | lvgName
    Delete a CoreStorage logical volume group. All log-
    ical volume families with their logical volumes are
    removed, the logical volume group is destroyed, and
    the now-orphaned physical volumes are erased and
    partition-typed as Journaled HFS+.

    rename | renameLVG lvgUUID | lvgName newName
    Rename a CoreStorage logical volume group. Do not
    confuse this name with the LV name or the volume
    name of the file system volume on the LV.

    createVolume | createLV lvgUUID | lvgName type name size
    [-stdinpassphrase | -passphrase [passphrase]]
    Export a new logical volume family, with a new log-
    ical volume under it, out of a CoreStorage logical
    volume group. Type is the file system personality
    to initialize on the new logical volume. Valid
    types are Journaled HFS+ or Case-sensitive Jour-
    naled HFS+ or their aliases. Size is the amount of
    space to allocate from the parent LVG. It is given
    in the same manner as the triplet description for
    the partitionDisk verb, and you can also specify
    with % a percentage of the currently remaining
    unallocated space in the LVG.

    If -passphrase or -stdinpassphrase is specified, in
    the same manner as with diskutil coreStorage
    convert above, on-disk data will be stored in an
    encrypted form as the Logical Volume is filled;
    otherwise, the data will remain plain.

    deleteVolume | deleteLV lvUUID | device
    Remove an exported logical volume (and its logical
    volume family as appropriate) from a CoreStorage
    logical volume group. Any data on that logical vol-
    ume will be lost. This operation will thus result
    in an increase in free space in the logical volume
    group.

    It is assumed that the logical volume is used as a
    backing store for a file system; therefore, an
    unmount attempt is made which must succeed before
    the removal of the logical volume is done.

    encryptVolume | encryptLV lvUUID | device [-stdinpassphrase] |
    [-passphrase passphrase]
    Begin a live background process of encrypting the
    on-disk backing bytes of an existing plain
    CoreStorage logical volume (LV).

    That is, the on-disk bytes that are backing the
    user data are all visited, read, and re-written in
    an encrypted form; this process can take a long
    time (minutes to hours). This process continues
    seamlessly across reboots. The logical volume
    remains usable at all times. When this command
    returns, the operation will be ongoing; you can
    check progress with diskutil coreStorage list.

    The entire logical volume family (LVF) is affected
    since all LVs in an LVF share the same encryption
    settings.

    Any new user data written while this background
    operation is in progress will be in encrypted form.

    Specifying -passphrase or -stdinpassphrase or
    interactively entering a passphrase is mandatory;
    you do so in the same manner as with diskutil
    coreStorage convert above.

    decryptVolume | decryptLV lvUUID | device [-stdinpassphrase] |
    [-passphrase passphrase]
    Begin a live background process of decrypting the
    on-disk backing bytes of an existing encrypted
    CoreStorage logical volume (LV). Bytes are read,
    decrypted, and written back to disk in plain form.
    The LV must be unlocked before beginning this oper-
    ation.

    Like as in diskutil coreStorage encryptVolume
    above, all on-disk bytes are visited and converted,
    the process is seamless across reboots, the logical
    volume remains usable at all times, the entire log-
    ical volume family (LVF) is affected, any new user
    data written will be in plain form, and the opera-
    tion will be ongoing when this command returns.

    Credentials must be supplied; you can use
    -passphrase or -stdinpassphrase or specify that a
    recovery keychain file be used, in the same manner
    as diskutil coreStorage unlockVolume.

    unlockVolume | unlockLV lvUUID [-stdinpassphrase] |
    [-passphrase passphrase] | [-recoverykeychain file]
    Unlock a logical volume and file system, causing it
    to be attached and mounted.

    Data is then accessible in plain form to the file
    system and applications, while the on-physical-disk
    backing bytes remain in encrypted form.

    The locked state means that the CoreStorage driver
    has not been given authentication information (a
    passphrase) to interpret the encrypted bytes on
    disk and thus export a dev node. This verb unlocks
    a logical volume family (LVF) and its logical vol-
    umes (LVs) by providing that authentication; as the
    LVs thus appear as dev nodes, any file systems upon
    them are automatically mounted.

    To "re-lock" the volume, make it offline again by
    ejecting it, e.g. with diskutil eject.

    Credentials must be supplied. You must either enter
    a passphrase interactively, specify one of the
    -passphrase or -stdinpassphrase parameters in the
    same manner as with diskutil coreStorage convert
    above, or specify that a recovery keychain file be
    used.

    You can specify -recoverykeychain with a path to a
    keychain file. The keychain must be unlocked; see
    security(1) for more information.

    changeVolumePassphrase | passwd lvUUID [-recoverykeychain
    file] [-oldpassphrase oldpassphrase]
    [-newpassphrase newpassphrase] [-stdinpassphrase]
    Change the passphrase of an existing encrypted vol-
    ume. It need not be unlocked nor mounted. The
    parameters, while variously optional, must be given
    in the above order.

    You must authenticate either via the -oldpassphrase
    parameter, via the -stdinpassphrase parameter (with
    newline or eof-terminated data given to stdin), or
    via an interactive prompt (if no parameters are
    given), in the same manner as diskutil coreStorage
    convert above. Alternatively, you can authenticate
    by specifying -recoverykeychain with a path to a
    keychain file.

    A new passphrase must be supplied, again via one of
    the three methods above (interactive,
    -newpassphrase, or -stdinpassphrase).

    If you are supplying both the old and new
    passphrases via stdin, they must be separated with
    a newline character.

    resizeVolume | resizeLV lvUUID | device size
    Resize a logical volume (LV). If you shrink an LV,
    more space becomes available in its logical volume
    group (LVG); if you grow an LV, less space becomes
    available. You can check the free space with
    diskutil coreStorage list. The file system volume
    which resides inside the LV is grown or shrunk as
    needed.

    You can specify a size of zero (0) to fill up all
    remaining space in the parent LVG with the given
    LV.

    resizeDisk | resizePV pvUUID size [part1Format part1Name
    part1Size part2Format part2Name part2Size
    part3Format part3Name part3Size ...]
    Resize a physical volume (PV). If you shrink a PV,
    less space becomes available in its logical volume
    group (LVG); if you grow a PV, more space becomes
    available. The partition in which the PV resides is
    changed to accommodate, and the associated booter
    partition, if present, is automatically moved.

    Note that you cannot ordinarily grow a PV unless
    there is free space in the partition map beyond it;
    note also that you cannot ordinarily shrink a PV
    unless the LVG has some free space in it (e.g. by
    shrinking an overlying LV first).

    When decreasing the size (shrinking), new parti-
    tions may optionally be created to fill the newly-
    freed space. To do this, specify the format, name,
    and size parameters in the same manner as the
    triplet description for the partitionDisk verb.

    You can specify a size of zero (0) to fill up all
    remaining space to the next partition or the end of
    the partition map, if possible.

    resizeStack lvUUID | device [pvUUID] size [part1Format
    part1Name part1Size part2Format part2Name part2Size
    part3Format part3Name part3Size ...]
    Combine the actions of diskutil coreStorage
    resizePV and diskutil coreStorage resizeLV in the
    correct sequence in order to effect a shrink or a
    grow in an entire LVG setup.

    This is done by making a change to the size of a
    logical volume (LV), after or before which (one of
    its) physical volume(s) (PV) also changes its size
    accordingly. The (HFS) file system "on top of" the
    LV and the disk partition "below" the PV, as well
    as the location of the PV's associated booter par-
    tition, are automatically adjusted.

    When decreasing the size (shrinking), new parti-
    tions may optionally be created to fill the newly-
    freed space. To do this, specify the format, name,
    and size parameters in the same manner as the
    triplet description for the partitionDisk verb.

    Since an LVG might have one (e.g. Full Disk Encryp-
    tion (FDE), aka FileVault), two (e.g. Fusion), or
    even three (certain Boot Camp configurations) PVs,
    a specific PV must be chosen. You can have this
    command choose one for you, or you can specify the
    PV UUID directly. If you do not specify a PV, the
    one which has previously been marked for this pur-
    pose is used; if no mark, a policy algorithm is
    applied.

    If your new LV size represents a grow of the exist-
    ing LV size, then the PV size will take up more
    space on disk, thus creating a larger LVG for the
    larger LV to live in. If your new LV size repre-
    sents a shrink, then the PV size will take up less
    space on disk, thus creating a smaller LVG, which
    is enough for the smaller LV to live in. The magni-
    tude of the size change you specify (which is for
    the LV) causes an exact size change in the PV if
    you conform to partition rounding (alignment)
    restrictions; the corresponding LV change may be
    greater because it is under additional alignment
    restrictions imposed by CoreStorage and HFS.

    The "spilling over" of size change effects from one

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)