| Top |
| #define | BD_BTRFS_MAIN_VOLUME_ID |
| #define | BD_BTRFS_MIN_MEMBER_SIZE |
| #define | BD_BTRFS_ERROR |
| enum | BDBtrfsError |
| BDBtrfsDeviceInfo | |
| BDBtrfsSubvolumeInfo | |
| BDBtrfsFilesystemInfo | |
| enum | BDBtrfsTech |
| enum | BDBtrfsTechMode |
gboolean
bd_btrfs_init (void);
Initializes the plugin. **This function is called automatically by the library's initialization functions.**
void
bd_btrfs_close (void);
Cleans up after the plugin. **This function is called automatically by the library's functions that unload it.**
void
bd_btrfs_device_info_free (BDBtrfsDeviceInfo *info);
Frees info
.
[skip]
BDBtrfsDeviceInfo *
bd_btrfs_device_info_copy (BDBtrfsDeviceInfo *info);
Creates a new copy of info
.
[skip]
void
bd_btrfs_subvolume_info_free (BDBtrfsSubvolumeInfo *info);
Frees info
.
[skip]
BDBtrfsSubvolumeInfo *
bd_btrfs_subvolume_info_copy (BDBtrfsSubvolumeInfo *info);
Creates a new copy of info
.
[skip]
void
bd_btrfs_filesystem_info_free (BDBtrfsFilesystemInfo *info);
Frees info
.
[skip]
BDBtrfsFilesystemInfo *
bd_btrfs_filesystem_info_copy (BDBtrfsFilesystemInfo *info);
Creates a new copy of info
.
[skip]
gboolean bd_btrfs_create_volume (const gchar **devices,const gchar *label,const gchar *data_level,const gchar *md_level,const BDExtraArg **extra,GError **error);
devices |
list of devices to create btrfs volume from. |
[array zero-terminated=1] |
label |
label for the volume. |
[allow-none] |
data_level |
RAID level for the data or |
[allow-none] |
md_level |
RAID level for the metadata or |
[allow-none] |
extra |
extra options for the volume creation (right now passed to the 'mkfs.btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the new btrfs volume was created from devices
or not
See mkfs.btrfs(8) for details about data_level
, md_level
and btrfs in general.
Tech category: BD_BTRFS_TECH_MULTI_DEV-BD_BTRFS_TECH_MODE_CREATE
gboolean bd_btrfs_add_device (const gchar *mountpoint,const gchar *device,const BDExtraArg **extra,GError **error);
mountpoint |
mountpoint of the btrfs volume to add new device to |
|
device |
a device to add to the btrfs volume |
|
extra |
extra options for the addition (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the device
was successfully added to the mountpoint
btrfs volume or not
Tech category: BD_BTRFS_TECH_MULTI_DEV-BD_BTRFS_TECH_MODE_MODIFY
gboolean bd_btrfs_remove_device (const gchar *mountpoint,const gchar *device,const BDExtraArg **extra,GError **error);
mountpoint |
mountpoint of the btrfs volume to remove device from |
|
device |
a device to remove from the btrfs volume |
|
extra |
extra options for the removal (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the device
was successfully removed from the mountpoint
btrfs volume or not
Tech category: BD_BTRFS_TECH_MULTI_DEV-BD_BTRFS_TECH_MODE_MODIFY
gboolean bd_btrfs_create_subvolume (const gchar *mountpoint,const gchar *name,const BDExtraArg **extra,GError **error);
mountpoint |
mountpoint of the btrfs volume to create subvolume under |
|
name |
name of the subvolume |
|
extra |
extra options for the subvolume creation (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the mountpoint
/name
subvolume was successfully created or not
Tech category: BD_BTRFS_TECH_SUBVOL-BD_BTRFS_TECH_MODE_CREATE
gboolean bd_btrfs_delete_subvolume (const gchar *mountpoint,const gchar *name,const BDExtraArg **extra,GError **error);
mountpoint |
mountpoint of the btrfs volume to delete subvolume from |
|
name |
name of the subvolume |
|
extra |
extra options for the subvolume deletion (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the mountpoint
/name
subvolume was successfully deleted or not
Tech category: BD_BTRFS_TECH_SUBVOL-BD_BTRFS_TECH_MODE_DELETE
guint64 bd_btrfs_get_default_subvolume_id (const gchar *mountpoint,GError **error);
mountpoint |
mountpoint of the volume to get the default subvolume ID of |
|
error |
place to store error (if any). |
[out] |
ID of the mountpoint
volume's default subvolume. If 0,
error
) may be set to indicate error
Tech category: BD_BTRFS_TECH_SUBVOL-BD_BTRFS_TECH_MODE_QUERY
gboolean bd_btrfs_set_default_subvolume (const gchar *mountpoint,guint64 subvol_id,const BDExtraArg **extra,GError **error);
mountpoint |
mountpoint of the volume to set the default subvolume ID of |
|
subvol_id |
ID of the subvolume to be set as the default subvolume |
|
extra |
extra options for the setting (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the mountpoint
volume's default subvolume was correctly set
to subvol_id
or not
Tech category: BD_BTRFS_TECH_SUBVOL-BD_BTRFS_TECH_MODE_MODIFY
gboolean bd_btrfs_create_snapshot (const gchar *source,const gchar *dest,gboolean ro,const BDExtraArg **extra,GError **error);
source |
path to source subvolume |
|
dest |
path to new snapshot volume |
|
ro |
whether the snapshot should be read-only |
|
extra |
extra options for the snapshot creation (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the dest
snapshot of source
was successfully created or not
Tech category: BD_BTRFS_TECH_SNAPSHOT-BD_BTRFS_TECH_MODE_CREATE
BDBtrfsDeviceInfo ** bd_btrfs_list_devices (const gchar *device,GError **error);
device |
a device that is part of the queried btrfs volume |
|
error |
place to store error (if any). |
[out] |
information about the devices that are part of the btrfs volume
containing device
or NULL in case of error
Tech category: BD_BTRFS_TECH_MULTI_DEV-BD_BTRFS_TECH_MODE_QUERY.
[array zero-terminated=1]
BDBtrfsSubvolumeInfo ** bd_btrfs_list_subvolumes (const gchar *mountpoint,gboolean snapshots_only,GError **error);
mountpoint |
a mountpoint of the queried btrfs volume |
|
snapshots_only |
whether to list only snapshot subvolumes or not |
|
error |
place to store error (if any). |
[out] |
information about the subvolumes that are part of the btrfs volume
mounted at mountpoint
or NULL in case of error
The subvolumes are sorted in a way that no child subvolume appears in the list before its parent (sub)volume.
Tech category: BD_BTRFS_TECH_SUBVOL-BD_BTRFS_TECH_MODE_QUERY.
[array zero-terminated=1]
BDBtrfsFilesystemInfo * bd_btrfs_filesystem_info (const gchar *device,GError **error);
device |
a device that is part of the queried btrfs volume |
|
error |
place to store error (if any). |
[out] |
information about the device
's volume's filesystem or NULL in case of error
Tech category: BD_BTRFS_TECH_FS-BD_BTRFS_TECH_MODE_QUERY
gboolean bd_btrfs_mkfs (const gchar **devices,const gchar *label,const gchar *data_level,const gchar *md_level,const BDExtraArg **extra,GError **error);
devices |
list of devices to create btrfs volume from. |
[array zero-terminated=1] |
label |
label for the volume. |
[allow-none] |
data_level |
RAID level for the data or |
[allow-none] |
md_level |
RAID level for the metadata or |
[allow-none] |
extra |
extra options for the volume creation (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the new btrfs volume was created from devices
or not
See mkfs.btrfs(8) for details about data_level
, md_level
and btrfs in general.
Tech category: BD_BTRFS_TECH_FS-BD_BTRFS_TECH_MODE_CREATE
gboolean bd_btrfs_resize (const gchar *mountpoint,guint64 size,const BDExtraArg **extra,GError **error);
mountpoint |
a mountpoint of the to be resized btrfs filesystem |
|
size |
requested new size |
|
extra |
extra options for the volume resize (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the mountpoint
filesystem was successfully resized to size
or not
Tech category: BD_BTRFS_TECH_FS-BD_BTRFS_TECH_MODE_MODIFY
gboolean bd_btrfs_check (const gchar *device,const BDExtraArg **extra,GError **error);
device |
a device that is part of the checked btrfs volume |
|
extra |
extra options for the check (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the filesystem was successfully checked or not
Tech category: BD_BTRFS_TECH_FS-BD_BTRFS_TECH_MODE_QUERY
gboolean bd_btrfs_repair (const gchar *device,const BDExtraArg **extra,GError **error);
device |
a device that is part of the to be repaired btrfs volume |
|
extra |
extra options for the repair (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the filesystem was successfully checked and repaired or not
Tech category: BD_BTRFS_TECH_FS-BD_BTRFS_TECH_MODE_MODIFY
gboolean bd_btrfs_change_label (const gchar *mountpoint,const gchar *label,GError **error);
mountpoint |
a mountpoint of the btrfs filesystem to change label of |
|
label |
new label for the filesystem |
|
extra |
extra options for the volume creation (right now passed to the 'btrfs' utility). |
[allow-none][array zero-terminated=1] |
error |
place to store error (if any). |
[out] |
whether the label of the mountpoint
filesystem was successfully set
to label
or not
Tech category: BD_BTRFS_TECH_FS-BD_BTRFS_TECH_MODE_MODIFY
gboolean bd_btrfs_is_tech_avail (BDBtrfsTech tech,guint64 mode,GError **error);
tech |
the queried tech |
|
mode |
a bit mask of queried modes of operation (BDBtrfsTechMode) for |
|
error |
place to store error (details about why the |
[out] |
typedef struct {
guint64 id;
gchar *path;
guint64 size;
guint64 used;
} BDBtrfsDeviceInfo;
typedef struct {
guint64 id;
guint64 parent_id;
gchar *path;
} BDBtrfsSubvolumeInfo;
typedef struct {
gchar *label;
gchar *uuid;
guint64 num_devices;
guint64 used;
} BDBtrfsFilesystemInfo;