[pve-devel] [PATCH container v2] Fix #576: Cancelling move disk does not leave useless files anymore
Dominic Jäger
d.jaeger at proxmox.com
Thu Jun 6 11:52:11 CEST 2019
When cancelling the move disk operation for containers the partly
finished destination and thus useless files now get removed.
Co-developed-by: Wolfgang Bumiller <w.bumiller at proxmox.com>
Signed-off-by: Dominic Jäger <d.jaeger at proxmox.com>
---
After a quick offline feedback there is now a v2
v2: System call is not a single string anymore
src/PVE/LXC.pm | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/PVE/LXC.pm b/src/PVE/LXC.pm
index 62b6b8c..4922fb0 100644
--- a/src/PVE/LXC.pm
+++ b/src/PVE/LXC.pm
@@ -2024,8 +2024,13 @@ my $copy_volume = sub {
"--bwlimit=$bwlimit", "$src/", $dest]);
};
my $err = $@;
+
+ # Wait for rsync's children to release dest so that
+ # consequent file operations (umount, remove) are possible
+ while ((system {"fuser"} "fuser", "-s", $dest) == 0) {sleep 1};
+
foreach my $mount (reverse @mounted) {
- eval { PVE::Tools::run_command(['/bin/umount', '--lazy', $mount], errfunc => sub{})};
+ eval { PVE::Tools::run_command(['/bin/umount', $mount], errfunc => sub{})};
warn "Can't umount $mount\n" if $@;
}
--
2.11.0
More information about the pve-devel
mailing list