FS

FS — plugin for operations with file systems

Functions

gboolean bd_fs_check_deps ()
gboolean bd_fs_init ()
void bd_fs_close ()
GQuark bd_fs_error_quark ()
gboolean bd_fs_wipe ()
gboolean bd_fs_wipe_force ()
gboolean bd_fs_clean ()
gchar * bd_fs_get_fstype ()
gboolean bd_fs_freeze ()
gboolean bd_fs_unfreeze ()
gboolean bd_fs_mount ()
gboolean bd_fs_unmount ()
gchar * bd_fs_get_mountpoint ()
gboolean bd_fs_is_mountpoint ()
gboolean bd_fs_resize ()
gboolean bd_fs_repair ()
gboolean bd_fs_check ()
gboolean bd_fs_set_label ()
gboolean bd_fs_can_resize ()
gboolean bd_fs_can_check ()
gboolean bd_fs_can_repair ()
gboolean bd_fs_can_set_label ()
gboolean bd_fs_ext2_check ()
BDFSExt2Info * bd_fs_ext2_get_info ()
BDFSExt2Info * bd_fs_ext2_info_copy ()
void bd_fs_ext2_info_free ()
gboolean bd_fs_ext2_mkfs ()
gboolean bd_fs_ext2_repair ()
gboolean bd_fs_ext2_resize ()
gboolean bd_fs_ext2_set_label ()
gboolean bd_fs_ext2_wipe ()
gboolean bd_fs_ext3_check ()
BDFSExt3Info * bd_fs_ext3_get_info ()
BDFSExt3Info * bd_fs_ext3_info_copy ()
void bd_fs_ext3_info_free ()
gboolean bd_fs_ext3_mkfs ()
gboolean bd_fs_ext3_repair ()
gboolean bd_fs_ext3_resize ()
gboolean bd_fs_ext3_set_label ()
gboolean bd_fs_ext3_wipe ()
gboolean bd_fs_ext4_check ()
BDFSExt4Info * bd_fs_ext4_get_info ()
BDFSExt4Info * bd_fs_ext4_info_copy ()
void bd_fs_ext4_info_free ()
gboolean bd_fs_ext4_mkfs ()
gboolean bd_fs_ext4_repair ()
gboolean bd_fs_ext4_resize ()
gboolean bd_fs_ext4_set_label ()
gboolean bd_fs_ext4_wipe ()
gboolean bd_fs_xfs_check ()
BDFSXfsInfo * bd_fs_xfs_get_info ()
BDFSXfsInfo * bd_fs_xfs_info_copy ()
void bd_fs_xfs_info_free ()
gboolean bd_fs_xfs_mkfs ()
gboolean bd_fs_xfs_repair ()
gboolean bd_fs_xfs_resize ()
gboolean bd_fs_xfs_set_label ()
gboolean bd_fs_xfs_wipe ()
gboolean bd_fs_vfat_check ()
BDFSVfatInfo * bd_fs_vfat_get_info ()
BDFSVfatInfo * bd_fs_vfat_info_copy ()
void bd_fs_vfat_info_free ()
gboolean bd_fs_vfat_mkfs ()
gboolean bd_fs_vfat_repair ()
gboolean bd_fs_vfat_resize ()
gboolean bd_fs_vfat_set_label ()
gboolean bd_fs_vfat_wipe ()
gboolean bd_fs_is_tech_avail ()
gboolean bd_fs_ntfs_check ()
BDFSNtfsInfo * bd_fs_ntfs_get_info ()
gboolean bd_fs_ntfs_mkfs ()
gboolean bd_fs_ntfs_repair ()
gboolean bd_fs_ntfs_resize ()
gboolean bd_fs_ntfs_set_label ()
gboolean bd_fs_ntfs_wipe ()

Types and Values

Includes

#include <fs.h>

Description

A plugin for operations with file systems

Functions

bd_fs_check_deps ()

gboolean
bd_fs_check_deps (void);

Returns

whether the plugin's runtime dependencies are satisfied or not

Function checking plugin's runtime dependencies.


bd_fs_init ()

gboolean
bd_fs_init (void);

Initializes the plugin. **This function is called automatically by the library's initialization functions.**


bd_fs_close ()

void
bd_fs_close (void);

Cleans up after the plugin. **This function is called automatically by the library's functions that unload it.**


bd_fs_error_quark ()

GQuark
bd_fs_error_quark (void);

[skip]


bd_fs_wipe ()

gboolean
bd_fs_wipe (const gchar *device,
            gboolean all,
            GError **error);

Note: This function will wipe signatures on a mounted device without asking. Use bd_fs_wipe_force if you want to control this behaviour manually.

Parameters

device

the device to wipe signatures from

 

all

whether to wipe all (TRUE) signatures or just the first (FALSE) one

 

error

place to store error (if any).

[out]

Returns

whether signatures were successfully wiped on device or not

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_WIPE


bd_fs_wipe_force ()

gboolean
bd_fs_wipe_force (const gchar *device,
                  gboolean all,
                  gboolean force,
                  GError **error);

Parameters

device

the device to wipe signatures from

 

all

whether to wipe all (TRUE) signatures or just the first (FALSE) one

 

force

whether to force wipe even if the filesystem is mounted

 

error

place to store error (if any).

[out]

Returns

whether signatures were successfully wiped on device or not

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_WIPE


bd_fs_clean ()

gboolean
bd_fs_clean (const gchar *device,
             GError **error);

Clean all signatures from device . Difference between this and bd_fs_wipe() is that this function doesn't return error if device is already empty. This will also always remove all signatures from device , not only the first one.

Parameters

device

the device to clean

 

error

place to store error (if any).

[out]

Returns

whether device was successfully cleaned or not

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_WIPE


bd_fs_get_fstype ()

gchar *
bd_fs_get_fstype (const gchar *device,
                  GError **error);

Get first signature on device as a string.

Parameters

device

the device to probe

 

error

place to store error (if any).

[out]

Returns

type of filesystem found on device , NULL in case no signature has been detected or in case of error (error is set in this case)

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_QUERY.

[transfer full]


bd_fs_freeze ()

gboolean
bd_fs_freeze (const gchar *mountpoint,
              GError **error);

Freezes filesystem mounted on mountpoint . The filesystem must support freezing.

Parameters

mountpoint

mountpoint of the device (filesystem) to freeze

 

error

place to store error (if any).

[out]

Returns

whether mountpoint was successfully freezed or not


bd_fs_unfreeze ()

gboolean
bd_fs_unfreeze (const gchar *mountpoint,
                GError **error);

Un-freezes filesystem mounted on mountpoint . The filesystem must support freezing.

Parameters

mountpoint

mountpoint of the device (filesystem) to un-freeze

 

error

place to store error (if any).

[out]

Returns

whether mountpoint was successfully unfreezed or not


bd_fs_mount ()

gboolean
bd_fs_mount (const gchar *device,
             const gchar *mountpoint,
             const gchar *fstype,
             const gchar *options,
             const BDExtraArg **extra,
             GError **error);

Parameters

device

device to mount, if not specified mountpoint entry from fstab will be used.

[allow-none]

mountpoint

mountpoint for device , if not specified device entry from fstab will be used.

[allow-none]

fstype

filesystem type.

[allow-none]

options

comma delimited options for mount.

[allow-none]

extra

extra options for the unmount currently only 'run_as_uid' and 'run_as_gid' are supported value must be a valid non zero uid (gid).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether device (or mountpoint ) was successfully mounted or not

Tech category: BD_FS_TECH_MOUNT (no mode, ignored)


bd_fs_unmount ()

gboolean
bd_fs_unmount (const gchar *spec,
               gboolean lazy,
               gboolean force,
               const BDExtraArg **extra,
               GError **error);

Parameters

spec

mount point or device to unmount

 

lazy

enable/disable lazy unmount

 

force

enable/disable force unmount

 

extra

extra options for the unmount currently only 'run_as_uid' and 'run_as_gid' are supported value must be a valid non zero uid (gid).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether spec was successfully unmounted or not

Tech category: BD_FS_TECH_MOUNT (no mode, ignored)


bd_fs_get_mountpoint ()

gchar *
bd_fs_get_mountpoint (const gchar *device,
                      GError **error);

Get mountpoint for device . If device is mounted multiple times only one mountpoint will be returned.

Parameters

device

device to find mountpoint for

 

error

place to store error (if any).

[out]

Returns

mountpoint for device , NULL in case device is not mounted or in case of an error (error is set in this case)

Tech category: BD_FS_TECH_MOUNT (no mode, ignored).

[transfer full]


bd_fs_is_mountpoint ()

gboolean
bd_fs_is_mountpoint (const gchar *path,
                     GError **error);

Parameters

path

path (folder) to check

 

error

place to store error (if any).

[out]

Returns

whether path is a mountpoint or not

Tech category: BD_FS_TECH_MOUNT (no mode, ignored)


bd_fs_resize ()

gboolean
bd_fs_resize (const gchar *device,
              guint64 new_size,
              GError **error);

Parameters

device

the device the file system of which to resize

 

new_size

new requested size for the file system (if 0, the file system is adapted to the underlying block device)

 

error

place to store error (if any).

[out]

Returns

whether the file system on device was successfully resized or not

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_RESIZE


bd_fs_repair ()

gboolean
bd_fs_repair (const gchar *device,
              GError **error);

Repair filesystem on device . This calls other fs repair functions from this plugin based on detected filesystem (e.g. bd_fs_xfs_repair for XFS). This function will return an error for unknown/unsupported filesystems.

Parameters

device

the device the file system of which to repair

 

error

place to store error (if any).

[out]

Returns

whether the file system on device was successfully repaired or not

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_REPAIR


bd_fs_check ()

gboolean
bd_fs_check (const gchar *device,
             GError **error);

Check filesystem on device . This calls other fs check functions from this plugin based on detected filesystem (e.g. bd_fs_xfs_check for XFS). This function will return an error for unknown/unsupported filesystems.

Parameters

device

the device the file system of which to check

 

error

place to store error (if any).

[out]

Returns

whether the file system on device passed the consistency check or not

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_CHECK


bd_fs_set_label ()

gboolean
bd_fs_set_label (const gchar *device,
                 const gchar *label,
                 GError **error);

Set label for filesystem on device . This calls other fs label functions from this plugin based on detected filesystem (e.g. bd_fs_xfs_set_label for XFS). This function will return an error for unknown/unsupported filesystems.

Parameters

device

the device with file system to set the label for

 

error

place to store error (if any).

[out]

Returns

whether the file system on device was successfully relabled or not

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_SET_LABEL


bd_fs_can_resize ()

gboolean
bd_fs_can_resize (const gchar *type,
                  BDFsResizeFlags *mode,
                  gchar **required_utility,
                  GError **error);

Searches for the required utility to resize the given filesystem and returns whether it is installed. The mode flags indicate if growing and/or shrinking resize is available if mounted/unmounted. Unknown filesystems or filesystems which do not support resizing result in errors.

Parameters

type

the filesystem type to be tested for installed resize support

 

mode

flags for allowed resizing (i.e. growing/shrinking support for online/offline).

[out]

required_utility

the utility binary which is required for resizing (if missing i.e. returns FALSE but no error).

[out][transfer full]

error

place to store error (if any).

[out]

Returns

whether filesystem resize is available

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_QUERY


bd_fs_can_check ()

gboolean
bd_fs_can_check (const gchar *type,
                 gchar **required_utility,
                 GError **error);

Searches for the required utility to check the given filesystem and returns whether it is installed. Unknown filesystems or filesystems which do not support checking result in errors.

Parameters

type

the filesystem type to be tested for installed consistency check support

 

required_utility

the utility binary which is required for checking (if missing i.e. returns FALSE but no error).

[out][transfer full]

error

place to store error (if any).

[out]

Returns

whether filesystem check is available

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_QUERY


bd_fs_can_repair ()

gboolean
bd_fs_can_repair (const gchar *type,
                  gchar **required_utility,
                  GError **error);

Searches for the required utility to repair the given filesystem and returns whether it is installed. Unknown filesystems or filesystems which do not support reparing result in errors.

Parameters

type

the filesystem type to be tested for installed repair support

 

required_utility

the utility binary which is required for repairing (if missing i.e. return FALSE but no error).

[out][transfer full]

error

place to store error (if any).

[out]

Returns

whether filesystem repair is available

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_QUERY


bd_fs_can_set_label ()

gboolean
bd_fs_can_set_label (const gchar *type,
                     gchar **required_utility,
                     GError **error);

Searches for the required utility to set the label of the given filesystem and returns whether it is installed. Unknown filesystems or filesystems which do not support setting the label result in errors.

Parameters

type

the filesystem type to be tested for installed label support

 

required_utility

the utility binary which is required for relabeling (if missing i.e. return FALSE but no error).

[out][transfer full]

error

place to store error (if any).

[out]

Returns

whether setting filesystem label is available

Tech category: BD_FS_TECH_GENERIC-BD_FS_TECH_MODE_QUERY


bd_fs_ext2_check ()

gboolean
bd_fs_ext2_check (const gchar *device,
                  const BDExtraArg **extra,
                  GError **error);

Parameters

device

the device the file system on which to check

 

extra

extra options for the check (right now passed to the 'e2fsck' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether an ext2 file system on the device is clean or not

Tech category: BD_FS_TECH_EXT2-BD_FS_TECH_MODE_CHECK


bd_fs_ext2_get_info ()

BDFSExt2Info *
bd_fs_ext2_get_info (const gchar *device,
                     GError **error);

Parameters

device

the device the file system of which to get info for

 

error

place to store error (if any).

[out]

Returns

information about the file system on device or NULL in case of error

Tech category: BD_FS_TECH_EXT2-BD_FS_TECH_MODE_QUERY.

[transfer full]


bd_fs_ext2_info_copy ()

BDFSExt2Info *
bd_fs_ext2_info_copy (BDFSExt2Info *data);

Creates a new copy of data .

[skip]


bd_fs_ext2_info_free ()

void
bd_fs_ext2_info_free (BDFSExt2Info *data);

Frees data .

[skip]


bd_fs_ext2_mkfs ()

gboolean
bd_fs_ext2_mkfs (const gchar *device,
                 const BDExtraArg **extra,
                 GError **error);

Parameters

device

the device to create a new ext2 fs on

 

extra

extra options for the creation (right now passed to the 'mke2fs' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether a new ext2 fs was successfully created on device or not

Tech category: BD_FS_TECH_EXT2-BD_FS_TECH_MODE_MKFS


bd_fs_ext2_repair ()

gboolean
bd_fs_ext2_repair (const gchar *device,
                   gboolean unsafe,
                   const BDExtraArg **extra,
                   GError **error);

Parameters

device

the device the file system on which to repair

 

unsafe

whether to do unsafe operations too

 

extra

extra options for the repair (right now passed to the 'e2fsck' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether an ext2 file system on the device was successfully repaired (if needed) or not (error is set in that case)

Tech category: BD_FS_TECH_EXT2-BD_FS_TECH_MODE_REPAIR


bd_fs_ext2_resize ()

gboolean
bd_fs_ext2_resize (const gchar *device,
                   guint64 new_size,
                   const BDExtraArg **extra,
                   GError **error);

Parameters

device

the device the file system of which to resize

 

new_size

new requested size for the file system (if 0, the file system is adapted to the underlying block device)

 

extra

extra options for the resize (right now passed to the 'resize2fs' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether the file system on device was successfully resized or not

Tech category: BD_FS_TECH_EXT2-BD_FS_TECH_MODE_RESIZE


bd_fs_ext2_set_label ()

gboolean
bd_fs_ext2_set_label (const gchar *device,
                      const gchar *label,
                      GError **error);

Parameters

device

the device the file system on which to set label for

 

label

label to set

 

error

place to store error (if any).

[out]

Returns

whether the label of ext2 file system on the device was successfully set or not

Tech category: BD_FS_TECH_EXT2-BD_FS_TECH_MODE_SET_LABEL


bd_fs_ext2_wipe ()

gboolean
bd_fs_ext2_wipe (const gchar *device,
                 GError **error);

Parameters

device

the device to wipe an ext2 signature from

 

error

place to store error (if any).

[out]

Returns

whether an ext2 signature was successfully wiped from the device or not

Tech category: BD_FS_TECH_EXT2-BD_FS_TECH_MODE_WIPE


bd_fs_ext3_check ()

gboolean
bd_fs_ext3_check (const gchar *device,
                  const BDExtraArg **extra,
                  GError **error);

Parameters

device

the device the file system on which to check

 

extra

extra options for the check (right now passed to the 'e2fsck' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether an ext3 file system on the device is clean or not

Tech category: BD_FS_TECH_EXT3-BD_FS_TECH_MODE_CHECK


bd_fs_ext3_get_info ()

BDFSExt3Info *
bd_fs_ext3_get_info (const gchar *device,
                     GError **error);

Parameters

device

the device the file system of which to get info for

 

error

place to store error (if any).

[out]

Returns

information about the file system on device or NULL in case of error

Tech category: BD_FS_TECH_EXT3-BD_FS_TECH_MODE_QUERY.

[transfer full]


bd_fs_ext3_info_copy ()

BDFSExt3Info *
bd_fs_ext3_info_copy (BDFSExt3Info *data);

Creates a new copy of data .

[skip]


bd_fs_ext3_info_free ()

void
bd_fs_ext3_info_free (BDFSExt3Info *data);

Frees data .

[skip]


bd_fs_ext3_mkfs ()

gboolean
bd_fs_ext3_mkfs (const gchar *device,
                 const BDExtraArg **extra,
                 GError **error);

Parameters

device

the device to create a new ext3 fs on

 

extra

extra options for the creation (right now passed to the 'mke2fs' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether a new ext3 fs was successfully created on device or not

Tech category: BD_FS_TECH_EXT3-BD_FS_TECH_MODE_MKFS


bd_fs_ext3_repair ()

gboolean
bd_fs_ext3_repair (const gchar *device,
                   gboolean unsafe,
                   const BDExtraArg **extra,
                   GError **error);

Parameters

device

the device the file system on which to repair

 

unsafe

whether to do unsafe operations too

 

extra

extra options for the repair (right now passed to the 'e2fsck' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether an ext3 file system on the device was successfully repaired (if needed) or not (error is set in that case)

Tech category: BD_FS_TECH_EXT3-BD_FS_TECH_MODE_REPAIR


bd_fs_ext3_resize ()

gboolean
bd_fs_ext3_resize (const gchar *device,
                   guint64 new_size,
                   const BDExtraArg **extra,
                   GError **error);

Parameters

device

the device the file system of which to resize

 

new_size

new requested size for the file system (if 0, the file system is adapted to the underlying block device)

 

extra

extra options for the resize (right now passed to the 'resize2fs' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether the file system on device was successfully resized or not

Tech category: BD_FS_TECH_EXT3-BD_FS_TECH_MODE_RESIZE


bd_fs_ext3_set_label ()

gboolean
bd_fs_ext3_set_label (const gchar *device,
                      const gchar *label,
                      GError **error);

Parameters

device

the device the file system on which to set label for

 

label

label to set

 

error

place to store error (if any).

[out]

Returns

whether the label of ext3 file system on the device was successfully set or not

Tech category: BD_FS_TECH_EXT3-BD_FS_TECH_MODE_SET_LABEL


bd_fs_ext3_wipe ()

gboolean
bd_fs_ext3_wipe (const gchar *device,
                 GError **error);

Parameters

device

the device to wipe an ext3 signature from

 

error

place to store error (if any).

[out]

Returns

whether an ext3 signature was successfully wiped from the device or not

Tech category: BD_FS_TECH_EXT3-BD_FS_TECH_MODE_WIPE


bd_fs_ext4_check ()

gboolean
bd_fs_ext4_check (const gchar *device,
                  const BDExtraArg **extra,
                  GError **error);

Parameters

device

the device the file system on which to check

 

extra

extra options for the check (right now passed to the 'e2fsck' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether an ext4 file system on the device is clean or not

Tech category: BD_FS_TECH_EXT4-BD_FS_TECH_MODE_CHECK


bd_fs_ext4_get_info ()

BDFSExt4Info *
bd_fs_ext4_get_info (const gchar *device,
                     GError **error);

Parameters

device

the device the file system of which to get info for

 

error

place to store error (if any).

[out]

Returns

information about the file system on device or NULL in case of error

Tech category: BD_FS_TECH_EXT3-BD_FS_TECH_MODE_QUERY.

[transfer full]


bd_fs_ext4_info_copy ()

BDFSExt4Info *
bd_fs_ext4_info_copy (BDFSExt4Info *data);

Creates a new copy of data .

[skip]


bd_fs_ext4_info_free ()

void
bd_fs_ext4_info_free (BDFSExt4Info *data);

Frees data .

[skip]


bd_fs_ext4_mkfs ()

gboolean
bd_fs_ext4_mkfs (const gchar *device,
                 const BDExtraArg **extra,
                 GError **error);

Parameters

device

the device to create a new ext4 fs on

 

extra

extra options for the creation (right now passed to the 'mkfs.ext4' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether a new ext4 fs was successfully created on device or not

Tech category: BD_FS_TECH_EXT4-BD_FS_TECH_MODE_MKFS


bd_fs_ext4_repair ()

gboolean
bd_fs_ext4_repair (const gchar *device,
                   gboolean unsafe,
                   const BDExtraArg **extra,
                   GError **error);

Parameters

device

the device the file system on which to repair

 

unsafe

whether to do unsafe operations too

 

extra

extra options for the repair (right now passed to the 'e2fsck' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether an ext4 file system on the device was successfully repaired (if needed) or not (error is set in that case)

Tech category: BD_FS_TECH_EXT4-BD_FS_TECH_MODE_REPAIR


bd_fs_ext4_resize ()

gboolean
bd_fs_ext4_resize (const gchar *device,
                   guint64 new_size,
                   const BDExtraArg **extra,
                   GError **error);

Parameters

device

the device the file system of which to resize

 

new_size

new requested size for the file system (if 0, the file system is adapted to the underlying block device)

 

extra

extra options for the resize (right now passed to the 'resize2fs' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether the file system on device was successfully resized or not

Tech category: BD_FS_TECH_EXT4-BD_FS_TECH_MODE_RESIZE


bd_fs_ext4_set_label ()

gboolean
bd_fs_ext4_set_label (const gchar *device,
                      const gchar *label,
                      GError **error);

Parameters

device

the device the file system on which to set label for

 

label

label to set

 

error

place to store error (if any).

[out]

Returns

whether the label of ext4 file system on the device was successfully set or not

Tech category: BD_FS_TECH_EXT3-BD_FS_TECH_MODE_SET_LABEL


bd_fs_ext4_wipe ()

gboolean
bd_fs_ext4_wipe (const gchar *device,
                 GError **error);

Parameters

device

the device to wipe an ext4 signature from

 

error

place to store error (if any).

[out]

Returns

whether an ext4 signature was successfully wiped from the device or not

Tech category: BD_FS_TECH_EXT4-BD_FS_TECH_MODE_WIPE


bd_fs_xfs_check ()

gboolean
bd_fs_xfs_check (const gchar *device,
                 GError **error);

Parameters

device

the device containing the file system to check

 

error

place to store error (if any).

[out]

Returns

whether an xfs file system on the device is clean or not

Note: If the file system is mounted RW, it will always be reported as not clean!

Tech category: BD_FS_TECH_XFS-BD_FS_TECH_MODE_CHECK


bd_fs_xfs_get_info ()

BDFSXfsInfo *
bd_fs_xfs_get_info (const gchar *device,
                    GError **error);

Parameters

device

the device containing the file system to get info for (device must be mounted, trying to get info for an unmounted device will result in an error)

 

error

place to store error (if any).

[out]

Returns

information about the file system on device or NULL in case of error

Tech category: BD_FS_TECH_XFS-BD_FS_TECH_MODE_QUERY.

[transfer full]


bd_fs_xfs_info_copy ()

BDFSXfsInfo *
bd_fs_xfs_info_copy (BDFSXfsInfo *data);

Creates a new copy of data .

[skip]


bd_fs_xfs_info_free ()

void
bd_fs_xfs_info_free (BDFSXfsInfo *data);

Frees data .

[skip]


bd_fs_xfs_mkfs ()

gboolean
bd_fs_xfs_mkfs (const gchar *device,
                const BDExtraArg **extra,
                GError **error);

Parameters

device

the device to create a new xfs fs on

 

extra

extra options for the creation (right now passed to the 'mkfs.xfs' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether a new xfs fs was successfully created on device or not

Tech category: BD_FS_TECH_XFS-BD_FS_TECH_MODE_MKFS


bd_fs_xfs_repair ()

gboolean
bd_fs_xfs_repair (const gchar *device,
                  const BDExtraArg **extra,
                  GError **error);

Parameters

device

the device containing the file system to repair

 

extra

extra options for the repair (right now passed to the 'xfs_repair' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether an xfs file system on the device was successfully repaired (if needed) or not (error is set in that case)

Tech category: BD_FS_TECH_XFS-BD_FS_TECH_MODE_REPAIR


bd_fs_xfs_resize ()

gboolean
bd_fs_xfs_resize (const gchar *mpoint,
                  guint64 new_size,
                  const BDExtraArg **extra,
                  GError **error);

Parameters

mpoint

the mount point of the file system to resize

 

new_size

new requested size for the file system *in file system blocks* (see bd_fs_xfs_get_info()) (if 0, the file system is adapted to the underlying block device)

 

extra

extra options for the resize (right now passed to the 'xfs_growfs' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether the file system mounted on mpoint was successfully resized or not

Tech category: BD_FS_TECH_XFS-BD_FS_TECH_MODE_RESIZE


bd_fs_xfs_set_label ()

gboolean
bd_fs_xfs_set_label (const gchar *device,
                     const gchar *label,
                     GError **error);

Parameters

device

the device containing the file system to set label for

 

label

label to set

 

error

place to store error (if any).

[out]

Returns

whether the label of xfs file system on the device was successfully set or not

Tech category: BD_FS_TECH_XFS-BD_FS_TECH_MODE_SET_LABEL


bd_fs_xfs_wipe ()

gboolean
bd_fs_xfs_wipe (const gchar *device,
                GError **error);

Parameters

device

the device to wipe an xfs signature from

 

error

place to store error (if any).

[out]

Returns

whether an xfs signature was successfully wiped from the device or not

Tech category: BD_FS_TECH_XFS-BD_FS_TECH_MODE_WIPE


bd_fs_vfat_check ()

gboolean
bd_fs_vfat_check (const gchar *device,
                  const BDExtraArg **extra,
                  GError **error);

Parameters

device

the device containing the file system to check

 

extra

extra options for the repair (right now passed to the 'fsck.vfat' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether an vfat file system on the device is clean or not

Tech category: BD_FS_TECH_VFAT-BD_FS_TECH_MODE_CHECK


bd_fs_vfat_get_info ()

BDFSVfatInfo *
bd_fs_vfat_get_info (const gchar *device,
                     GError **error);

Parameters

device

the device containing the file system to get info for

 

error

place to store error (if any).

[out]

Returns

information about the file system on device or NULL in case of error

Tech category: BD_FS_TECH_VFAT-BD_FS_TECH_MODE_QUERY.

[transfer full]


bd_fs_vfat_info_copy ()

BDFSVfatInfo *
bd_fs_vfat_info_copy (BDFSVfatInfo *data);

Creates a new copy of data .

[skip]


bd_fs_vfat_info_free ()

void
bd_fs_vfat_info_free (BDFSVfatInfo *data);

Frees data .

[skip]


bd_fs_vfat_mkfs ()

gboolean
bd_fs_vfat_mkfs (const gchar *device,
                 const BDExtraArg **extra,
                 GError **error);

Parameters

device

the device to create a new vfat fs on

 

extra

extra options for the creation (right now passed to the 'mkfs.vfat' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether a new vfat fs was successfully created on device or not

Tech category: BD_FS_TECH_VFAT-BD_FS_TECH_MODE_MKFS


bd_fs_vfat_repair ()

gboolean
bd_fs_vfat_repair (const gchar *device,
                   const BDExtraArg **extra,
                   GError **error);

Parameters

device

the device containing the file system to repair

 

extra

extra options for the repair (right now passed to the 'fsck.vfat' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether an vfat file system on the device was successfully repaired (if needed) or not (error is set in that case)

Tech category: BD_FS_TECH_VFAT-BD_FS_TECH_MODE_REPAIR


bd_fs_vfat_resize ()

gboolean
bd_fs_vfat_resize (const gchar *device,
                   guint64 new_size,
                   GError **error);

Parameters

device

the device the file system of which to resize

 

new_size

new requested size for the file system (if 0, the file system is adapted to the underlying block device)

 

error

place to store error (if any).

[out]

Returns

whether the file system on device was successfully resized or not

Tech category: BD_FS_TECH_VFAT-BD_FS_TECH_MODE_RESIZE


bd_fs_vfat_set_label ()

gboolean
bd_fs_vfat_set_label (const gchar *device,
                      const gchar *label,
                      GError **error);

Parameters

device

the device containing the file system to set label for

 

label

label to set

 

error

place to store error (if any).

[out]

Returns

whether the label of vfat file system on the device was successfully set or not

Tech category: BD_FS_TECH_VFAT-BD_FS_TECH_MODE_SET_LABEL


bd_fs_vfat_wipe ()

gboolean
bd_fs_vfat_wipe (const gchar *device,
                 GError **error);

Parameters

device

the device to wipe an vfat signature from

 

error

place to store error (if any).

[out]

Returns

whether an vfat signature was successfully wiped from the device or not

Tech category: BD_FS_TECH_VFAT-BD_FS_TECH_MODE_WIPE


bd_fs_is_tech_avail ()

gboolean
bd_fs_is_tech_avail (BDFSTech tech,
                     guint64 mode,
                     GError **error);

Parameters

tech

the queried tech

 

mode

a bit mask of queried modes of operation (BDFSTechMode) for tech

 

error

place to store error (details about why the tech -mode combination is not available).

[out]

Returns

whether the tech -mode combination is available -- supported by the plugin implementation and having all the runtime dependencies available


bd_fs_ntfs_check ()

gboolean
bd_fs_ntfs_check (const gchar *device,
                  GError **error);

Parameters

device

the device containing the file system to check

 

error

place to store error (if any).

[out]

Returns

whether an ntfs file system on the device is clean or not

Tech category: BD_FS_TECH_NTFS-BD_FS_TECH_MODE_CHECK


bd_fs_ntfs_get_info ()

BDFSNtfsInfo *
bd_fs_ntfs_get_info (const gchar *device,
                     GError **error);

Parameters

device

the device containing the file system to get info for (device must not be mounted, trying to get info for a mounted device will result in an error)

 

error

place to store error (if any).

[out]

Returns

information about the file system on device or NULL in case of error

Tech category: BD_FS_TECH_NTFS-BD_FS_TECH_MODE_QUERY.

[transfer full]


bd_fs_ntfs_mkfs ()

gboolean
bd_fs_ntfs_mkfs (const gchar *device,
                 const BDExtraArg **extra,
                 GError **error);

Parameters

device

the device to create a new ntfs fs on

 

extra

extra options for the creation (right now passed to the 'mkntfs' utility).

[allow-none][array zero-terminated=1]

error

place to store error (if any).

[out]

Returns

whether a new NTFS fs was successfully created on device or not

Tech category: BD_FS_TECH_NTFS-BD_FS_TECH_MODE_MKFS


bd_fs_ntfs_repair ()

gboolean
bd_fs_ntfs_repair (const gchar *device,
                   GError **error);

Parameters

device

the device containing the file system to repair

 

error

place to store error (if any).

[out]

Returns

whether an NTFS file system on the device was successfully repaired (if needed) or not (error is set in that case)

Tech category: BD_FS_TECH_NTFS-BD_FS_TECH_MODE_REPAIR


bd_fs_ntfs_resize ()

gboolean
bd_fs_ntfs_resize (const gchar *device,
                   guint64 new_size,
                   GError **error);

Parameters

device

the device the file system of which to resize

 

new_size

new requested size for the file system in bytes (if 0, the file system is adapted to the underlying block device)

 

error

place to store error (if any).

[out]

Returns

whether the file system on device was successfully resized or not

Tech category: BD_FS_TECH_NTFS-BD_FS_TECH_MODE_RESIZE


bd_fs_ntfs_set_label ()

gboolean
bd_fs_ntfs_set_label (const gchar *device,
                      const gchar *label,
                      GError **error);

Parameters

device

the device containing the file system to set the label for

 

label

label to set

 

error

place to store error (if any).

[out]

Returns

whether the label of the NTFS file system on the device was successfully set or not

Tech category: BD_FS_TECH_NTFS-BD_FS_TECH_MODE_SET_LABEL


bd_fs_ntfs_wipe ()

gboolean
bd_fs_ntfs_wipe (const gchar *device,
                 GError **error);

Parameters

device

the device to wipe an ntfs signature from

 

error

place to store error (if any).

[out]

Returns

whether an ntfs signature was successfully wiped from the device or not

Tech category: BD_FS_TECH_NTFS-BD_FS_TECH_MODE_WIPE

Types and Values

BDFSExt2Info


BDFSExt3Info


BDFSExt4Info


enum BDFsError

Members

BD_FS_ERROR_INVAL

   

BD_FS_ERROR_PARSE

   

BD_FS_ERROR_FAIL

   

BD_FS_ERROR_NOFS

   

BD_FS_ERROR_PIPE

   

BD_FS_ERROR_UNMOUNT_FAIL

   

BD_FS_ERROR_NOT_SUPPORTED

   

BD_FS_ERROR_NOT_MOUNTED

   

BD_FS_ERROR_AUTH

   

BD_FS_ERROR_TECH_UNAVAIL

   

BD_FS_ERROR

#define             BD_FS_ERROR

BDFSXfsInfo

typedef struct {
    gchar *label;
    gchar *uuid;
    guint64 block_size;
    guint64 block_count;
} BDFSXfsInfo;

Members

gchar *label;

label of the filesystem

 

gchar *uuid;

uuid of the filesystem

 

guint64 block_size;

block size used by the filesystem

 

guint64 block_count;

number of blocks in the filesystem

 

BDFSVfatInfo

typedef struct {
    gchar *label;
    gchar *uuid;
    guint64 cluster_size;
    guint64 cluster_count;
    guint64 free_cluster_count;
} BDFSVfatInfo;

Members

gchar *label;

label of the filesystem

 

gchar *uuid;

uuid of the filesystem

 

guint64 cluster_size;

cluster size used by the filesystem

 

guint64 cluster_count;

number of clusters in the filesystem

 

guint64 free_cluster_count;

number of free clusters in the filesystem

 

enum BDFSTech

Members

BD_FS_TECH_GENERIC

   

BD_FS_TECH_MOUNT

   

BD_FS_TECH_EXT2

   

BD_FS_TECH_EXT3

   

BD_FS_TECH_EXT4

   

BD_FS_TECH_XFS

   

BD_FS_TECH_VFAT

   

BD_FS_TECH_NTFS

   

enum BDFSTechMode

Members

BD_FS_TECH_MODE_MKFS

   

BD_FS_TECH_MODE_WIPE

   

BD_FS_TECH_MODE_CHECK

   

BD_FS_TECH_MODE_REPAIR

   

BD_FS_TECH_MODE_SET_LABEL

   

BD_FS_TECH_MODE_QUERY

   

BD_FS_TECH_MODE_RESIZE

   

enum BDFsResizeFlags

Members

BD_FS_OFFLINE_SHRINK

   

BD_FS_OFFLINE_GROW

   

BD_FS_ONLINE_SHRINK

   

BD_FS_ONLINE_GROW

   

BDFSNtfsInfo

typedef struct {
    guint64 size;
    guint64 free_space;
} BDFSNtfsInfo;

Members

guint64 size;

size of the filesystem in bytes

 

guint64 free_space;

number of free space in the filesystem in bytes