[pbs-devel] [PATCH proxmox-backup v10 01/26] tools: add disks utility functions

Max Carrara m.carrara at proxmox.com
Fri May 3 13:33:56 CEST 2024


On Thu Apr 25, 2024 at 8:52 AM CEST, Hannes Laimer wrote:
> ... for mounting and unmounting
>
> Signed-off-by: Hannes Laimer <h.laimer at proxmox.com>
> ---
>  src/tools/disks/mod.rs | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
>
> diff --git a/src/tools/disks/mod.rs b/src/tools/disks/mod.rs
> index 94f89e0a..303fe4f1 100644
> --- a/src/tools/disks/mod.rs
> +++ b/src/tools/disks/mod.rs
> @@ -1323,3 +1323,22 @@ pub fn get_fs_uuid(disk: &Disk) -> Result<String, Error> {
>  
>      bail!("get_fs_uuid failed - missing UUID");
>  }
> +
> +/// Mount a disk by its UUID and the mount point.
> +pub fn mount_by_uuid(uuid: &str, mount_point: &Path) -> Result<(), Error> {

Wouldn't it make sense to use our own UUID type from `proxmox_uuid`
here?

> +    let mut command = std::process::Command::new("mount");
> +    command.arg(&format!("UUID={uuid}"));
> +    command.arg(mount_point);
> +
> +    proxmox_sys::command::run_command(command, None)?;
> +    Ok(())
> +}
> +
> +/// Unmount a disk by its mount point.
> +pub fn unmount_by_mountpoint(path: &str) -> Result<(), Error> {
> +    let mut command = std::process::Command::new("umount");
> +    command.arg(path);
> +
> +    proxmox_sys::command::run_command(command, None)?;
> +    Ok(())
> +}





More information about the pbs-devel mailing list