Oracle ACFS Command-Line Tools for Exascale
This topic provides a summary of managing ACFS file systems on Exadata Exascale storage.
ACFS file systems can be created on Exascale storage in the same way that they are created on ASM storage. The management and features of ACFS are identical, including the ACFS snapshot commands. Additionally, on Exascale, one can create and manage volume level snapshots, clones and backups. These are managed dynamically through ACFS on a mounted or unmounted file system. These volume snapshots consume no additional space in the file system. The snapshots and clones are mounted on a separate mountpoint from the source mountpoint and can also be mounted elsewhere in the Exadata RoCE fabric on another RAC cluster. The volume backups are created in OCI object storage.
See Also:
See Using Oracle Exascale for more information about creating and managing Exascale Direct Volumes and the differing volume device file naming conventions.
Note:
ACFS Accelerator operations are not supported with Exascale volumes.
Table 6-7 Summary of Oracle ACFS commands for Exascale
Command | Description |
---|---|
Creates a volume level snapshot of a mounted ACFS file system. |
|
Deletes a volume level snapshot of an ACFS file system on an Exascale volume. |
|
Creates a volume level backup of an ACFS file system on an Exascale volume. |
|
Provides the ability to query information about Exascale volume snapshots taken of ACFS file systems. |
Table 6-8 Summary of existing Oracle ACFS commands enhanced for Exascale
Command | Description |
---|---|
Support added for Exascale volumes to the default display of ACFS file system information. |
|
|
acfsutil volsnap create
Purpose
Create a volume level snapshot of a mounted ACFS file system.
Syntax and Description
acfsutil [-h] volsnap create [-r] [-f] [-n <snap_name>] [-b <backup_name>] {<mountpoint>|<volume_path>} -w [-f|-s] -n <snap_name> [-b <backup_name>] {<mountpoint>|<volume_path>}
Table 6-9 Options for the acfsutil volsnap create command
Option | Description |
---|---|
|
Creates a read-only EDV volume snapshot. |
|
Creates a writeable EDV volume snapshot. |
|
Freezes file system during operation. |
|
Name of EDV volume snapshot to be created. |
|
Name of EDV backup volume to be created. |
|
ACFS file system mount point on EDV volume. |
|
Unmounted ACFS file system on EDV volume. |
Expected Behavior
Default: Create an immediately accessible, read-only snapshot with a name that has
the form <origvolume>_<timestamp>
. The timestamp will
have the form YYMMDDHHMMSS
. Prior to the creation of a read-only
snapshot, the file system will be frozen to ensure crash consistent semantics.
If a snapshot name is supplied, it can be of the form
“/dev/exc/<snap_name>
” or
“<snap_name>
”.
<snap_name>
must be 128 characters or less.
If the backup option is specified, a backup of the volume with the supplied name will be created in the object store. The supplied name must be 128 characters or less. The backup that is created can be restored and attached to a particular node or cluster using ESCLI.
At the conclusion of the command, the created snapshot volume will be available in
/dev/exc/<snap_name>
and it will have the same
characteristics as the parent volume:
- A node-local volume that is snapped should result in a node-local snapshot.
- A cluster volume that is snapped should result in a snapshot that is available on all nodes in the cluster.
- The file system on the created volume snapshot will have the same ACFS compatibility as the parent volume.
- Some ACFS features that require initialization, such as Replication, that were active on the original volume will require new initialization on the created volume snapshot.
Requirements
The ACFS file system to be snapped must be on an Exascale volume. Exascale must be
configured appropriately to support the -b
option. This includes
configuration of the OCI object store and enabling volume backups.
Error Handling
-n
without name: ACFS-00519-b
without name: ACFS-00519-n
with name that exceeds 128 (EXC device name max): ACFS-03043-b
with name that exceeds 128 (EXC device name max): ACFS-03043- If any argument is supplied more than once, ACFS-00519 will be returned with usage.
- Too many arguments: ACFS-00519
- Insufficient arguments (no mount point): ACFS-00535
- Supplied mountpoint not ACFS: ACFS-03037
- Mountpoint or device not accessible: ACFS-03001
- EXC snap creation failed: ACFS-03913 plus errno information.
Examples
The following example show the use of the acfsutil volsnap create
command.
This example shows how to capture a snapshot of an ACFS file system when the file system is mounted.
$ sudo ./acfsutil volsnap create /usmmnt Creation of volume snapshot testvol_200422160634 complete.
This example shows how to capture a snapshot of an ACFS file system when the file system is unmounted.
$ sudo ./acfsutil volsnap create /dev/exc/testvol Creation of volume snapshot testvol_200422160644 complete.
acfsutil volsnap delete
Purpose
Delete a volume level snapshot of an ACFS file system on an Exascale volume.
Syntax and Description
acfsutil [-h] volsnap delete <snap_name>
Table 6-10 Options for the acfsutil volsnap delete command
Option | Description |
---|---|
|
Name of EDV volume snapshot to be deleted. |
Expected Behavior
Delete volume snapshot associated with the specified ACFS file system.
Requirements
- Linux
root
privileges are required. - Specified volume snapshot must be of an ACFS file system.
- Specified volume snapshot to be deleted cannot be actively mounted as an ACFS file system at the time of deletion.
- Specified snapshot name should have the form
“
/dev/exc/<snap_name>
” or “<snap_name>
”.
Error Handling
- Command without name: ACFS-00535
- Command with a name that exceeds 128 (EXC device name max): ACFS-03043
- Too many arguments: ACFS-00519
- Insufficient arguments (no mount point): ACFS-00535
- Invalid snapshot supplied: ACFS-03001
- Snapshot not associated with ACFS file system: ACFS-03911
- Snapshot cannot be deleted because it is in use: ACFS-03914
- EXC snapshot delete ioctl failed: ACFS-03912 and errno information
Examples
The following examples show the use of the acfsutil volsnap
delete
command.
The acfsutil volsnap delete
command cannot delete a volume snapshot
that is mounted.
$ sudo /bin/mount -t acfs /dev/exc/testvol_200422151134 /rousmmnt/ $ /bin/mount | grep /rousmmnt /dev/exc/testvol_200422151134 on /rousmmnt type acfs (ro,relatime,device,rootsuid,ordered,local) $ sudo touch /rousmmnt/new_file touch: cannot touch ‘rousmmnt/new_file’: Read-only file system $ sudo ./acfsutil volsnap delete testvol_200422151134 acfsutil volsnap delete: ACFS-03914: Volume snapshot /dev/exc/testvol_200422151134 cannot be deleted because it is in use.
Once unmounted, the volume snapshot can be deleted.
$ sudo umount /rousmmnt $ sudo /sbin/acfsutil volsnap delete /dev/exc/testvol_200422151134 Deletion of volume snapshot testvol_200422151134 complete.
acfsutil volsnap backup
Purpose
Create a volume level backup of an ACFS file system on an Exascale volume.
Syntax and Description
acfsutil [-h] volsnap backup [[-b <backup_name>] {<mountpoint>|<snap_name>}] | [-q {<mountpoint>|<snap_name>|<backupid>}]
Table 6-11 Options for the acfsutil volsnap backup command
Option | Description |
---|---|
|
Specifies name of EDV volume backup to be created |
|
Query volume backup information. |
|
Name of backup to be created. |
|
Name of EDV volume snapshot tof ACFS file system. |
|
Unique identifier for backup. |
Expected Behavior
Create volume level backup of the specified ACFS file system.
A backup of the volume with the supplied name will be created in the object store. The supplied name must be 128 characters or less.
The backup that is created can be further managed using ESCLI.
Requirements
ACFS file system to be backed up must be on an Exascale volume.
Exascale must be configured appropriately to support this command. This includes configuration of the OCI object store and enabling volume backups.
Error Handling
- Command without name: ACFS-00535
- Command with a name that exceeds 128 (EXC device name max): ACFS-03043
- Too many arguments: ACFS-00519
- Insufficient arguments (no mount point): ACFS-00535
- Invalid snapshot supplied: ACFS-03001
- EXC snapshot backup ioctl failed: ACFS-03954 and errno information
Examples
The following example shows the use of the acfsutil volsnap
backup
command.
This example queries backups of mounted ACFS on Exascale volume.
$ sudo /sbin/acfsutil volsnap backup -q /usmmnt OCI backup id: 2b1:9df2801c90fa486481108d43c03d73f0 OCI backup name: testvol2_240418201924 creation time: Thu Apr 18 20:19:31 2024 size 11796480 ( 11.25 MB ) related volume snapshot id: 2.1:c7866e1d462348068465a17c4da87972 parent file system: /dev/exc/testvol2 on /usmmnt number of volume backups: 1
acfsutil volsnap info
Purpose
Provide the ability to query information about Exascale volume snapshots taken of ACFS file systems. Return information about a single Exascale volume snapshot or all the volume snapshots.
Syntax and Description
acfsutil [h] volsnap info {<mountpoint>|<snap_name>}
Table 6-12 Options for the acfsutil volsnap info command
Option | Description |
---|---|
|
Name of EDV volume snapshot of ACFS file system. |
|
ACFS file system mount point on EDV volume. |
Expected Behavior
Display information about a volume snapshot that was taken of an ACFS file system.
Display a list of volume snapshots associated with the specified ACFS file system.
If specified, snapshot name should have the form
“/dev/exc/<snap_name>
” or
“<snap_name>
”
If the supplied ACFS mount point is associated with an Exascale snapshot, the information about that Exascale volume snapshot will be returned along with the list of volume snapshots associated with the parent.
Requirements
ACFS file system must be on an Exascale volume.
Exascale volume snapshot was created using acfsutil volsnap
create
.
Error Handling
snap_name
name that exceeds 128 (EXC device name max): ACFS-03043- Too many arguments: ACFS-00519
- Invalid snapshot supplied: ACFS-03001
Examples
The following examples show the use of the acfsutil volsnap
info
command.
Display general information about a snapshot such as the name, path, parent, and creation time.
$ sudo /sbin/acfsutil volsnap info testvol2_240418202047 volume snapshot name: testvol2_240418202047 volume snapshot path: /dev/exc/testvol2_240418202047 RO snapshot or RW snapshot: RO creation time: Thu Apr 18 20:20:47 2024 parent volume device name: testvol2 parent mount path: /usmmnt active ACFS features: number of volume snapshots: 1 $ sudo /sbin/acfsutil volsnap info snaprw volume snapshot name: snaprw volume snapshot path: /dev/exc/snaprw RO snapshot or RW snapshot: RW creation time: Thu Apr 18 20:20:53 2024 parent RO volume snapshot device name: testvol2_240418202047 active ACFS features: number of volume snapshots: 1
This example shows how to obtain a list of volume snapshots # associated with a file system.
$ sudo /sbin/acfsutil volsnap info /usmmnt volume snapshot name: testvol2_240418201924 volume snapshot path: /dev/exc/testvol2_240418201924 RO snapshot or RW snapshot: RO creation time: Thu Apr 18 20:19:25 2024 parent volume device name: testvol2 parent mount path: /usmmnt active ACFS features: OCI backup id: 2b1:9df2801c90fa486481108d43c03d73f0 OCI backup name: testvol2_240418201924 volume snapshot name: testvol2_240418202047 volume snapshot path: /dev/exc/testvol2_240418202047 RO snapshot or RW snapshot: RO creation time: Thu Apr 18 20:20:47 2024 parent volume device name: testvol2 parent mount path: /usmmnt active ACFS features: volume snapshot name: snaprw volume snapshot path: /dev/exc/snaprw RO snapshot or RW snapshot: RW creation time: Thu Apr 18 20:20:53 2024 parent RO volume snapshot device name: testvol2_240418202047 active ACFS features: number of volume snapshots: 3