[pbs-devel] [PATCH proxmox-backup v10 05/26] disks: add UUID to partition info
Max Carrara
m.carrara at proxmox.com
Fri May 3 13:34:08 CEST 2024
On Thu Apr 25, 2024 at 8:52 AM CEST, Hannes Laimer wrote:
> Signed-off-by: Hannes Laimer <h.laimer at proxmox.com>
> ---
> src/tools/disks/mod.rs | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/src/tools/disks/mod.rs b/src/tools/disks/mod.rs
> index 303fe4f1..6227948d 100644
> --- a/src/tools/disks/mod.rs
> +++ b/src/tools/disks/mod.rs
> @@ -59,6 +59,8 @@ pub struct LsblkInfo {
> /// File system label.
> #[serde(rename = "fstype")]
> file_system_type: Option<String>,
> + /// File system UUID.
> + uuid: Option<String>,
Maybe use `proxmox_uuid` here as well.
> }
>
> impl DiskManage {
> @@ -617,7 +619,7 @@ pub struct BlockDevStat {
> /// Use lsblk to read partition type uuids and file system types.
> pub fn get_lsblk_info() -> Result<Vec<LsblkInfo>, Error> {
> let mut command = std::process::Command::new("lsblk");
> - command.args(["--json", "-o", "path,parttype,fstype"]);
> + command.args(["--json", "-o", "path,parttype,fstype,uuid"]);
>
> let output = proxmox_sys::command::run_command(command, None)?;
>
> @@ -701,6 +703,8 @@ pub struct PartitionInfo {
> pub size: Option<u64>,
> /// GPT partition
> pub gpt: bool,
> + /// UUID
> + pub uuid: Option<String>,
.. and here too.
> }
>
> #[api(
> @@ -891,8 +895,10 @@ fn get_partitions_info(
>
> let mounted = disk.is_mounted().unwrap_or(false);
> let mut filesystem = None;
> + let mut uuid = None;
> if let (Some(devpath), Some(infos)) = (devpath.as_ref(), lsblk_infos.as_ref()) {
> for info in infos.iter().filter(|i| i.path.eq(devpath)) {
> + uuid = info.uuid.clone();
> used = match info.partition_type.as_deref() {
> Some("21686148-6449-6e6f-744e-656564454649") => PartitionUsageType::BIOS,
> Some("c12a7328-f81f-11d2-ba4b-00a0c93ec93b") => PartitionUsageType::EFI,
> @@ -915,6 +921,7 @@ fn get_partitions_info(
> filesystem,
> size: disk.size().ok(),
> gpt: disk.has_gpt(),
> + uuid,
> }
> })
> .collect()
More information about the pbs-devel
mailing list