[Libguestfs] [PATCH v2v 2/2] convert: Remove /dev/mapper/osprober-* devices left around by grub2

Richard W.M. Jones rjones at redhat.com
Tue May 17 10:59:28 UTC 2022


These devices can be left around by grub2 when it runs the osprober
tool after we run “/sbin/grub2-mkconfig -o /boot/grub2/grub.cfg”.
They are read-only mirrors of existing filesystems.  These confuse
later steps in conversion, specifically fstrim.

Reported-by: Ming Xie
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2003503
---
 convert/linux_bootloaders.ml | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/convert/linux_bootloaders.ml b/convert/linux_bootloaders.ml
index a70b65a41c..7c5fb0be3f 100644
--- a/convert/linux_bootloaders.ml
+++ b/convert/linux_bootloaders.ml
@@ -345,7 +345,14 @@ object (self)
   method remove_console = self#grub2_update_console ~remove:true
 
   method update () =
-    ignore (g#command [| grub2_mkconfig_cmd; "-o"; grub_config |])
+    ignore (g#command [| grub2_mkconfig_cmd; "-o"; grub_config |]);
+
+    (* Grub2 runs osprober which sometimes leaves around read-only
+     * device-mapper maps covering existing filesystems.  These
+     * confuse later steps (especially fstrim).  So just delete
+     * any if found. (RHBZ#2003503).
+     *)
+    ignore (g#command [| "bash"; "-c"; "rm -f /dev/mapper/osprober-*" |])
 
   method get_config_file () =
     grub_config
-- 
2.35.1



More information about the Libguestfs mailing list