[PATCH pve-storage 10/13] plugin: fix volname parsing

Alexandre Derumier alexandre.derumier at groupe-cyllene.com
Wed Jul 9 18:21:59 CEST 2025


Signed-off-by: Alexandre Derumier <alexandre.derumier at groupe-cyllene.com>
---
 src/PVE/Storage/Plugin.pm | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/PVE/Storage/Plugin.pm b/src/PVE/Storage/Plugin.pm
index aab2024..b65d296 100644
--- a/src/PVE/Storage/Plugin.pm
+++ b/src/PVE/Storage/Plugin.pm
@@ -811,8 +811,11 @@ sub cluster_lock_storage {
 sub parse_name_dir {
     my $name = shift;
 
-    if ($name =~ m!^((base-)?[^/\s]+\.(raw|qcow2|vmdk|subvol))$!) {
-        return ($1, $3, $2); # (name, format, isBase)
+    if ($name =~ m!^((vm-|base-|subvol-)(\d+)-[^/\s]+\.(raw|qcow2|vmdk|subvol))$!) {
+        my $isbase = $2 eq 'base-' ? $2 : undef;
+        return ($1, $4, $isbase); # (name, format, isBase)
+    } elsif ($name =~ m!^((base-)?[^/\s]+\.(raw|qcow2|vmdk|subvol))$!) {
+        warn "this volume filename is not supported anymore\n";
     }
 
     die "unable to parse volume filename '$name'\n";
-- 
2.39.5




More information about the pve-devel mailing list