[Libguestfs] [PATCH] v2v: linux: pass the root device when using SUSE's mkinitrd

Pino Toscano ptoscano at redhat.com
Mon May 15 12:52:55 UTC 2017


mkinitrd in SLE guests < 12 tries to get the root device by scanning the
fstab: this will fail, since v2v already remapped the devices from
hd*/sd* to vd* in the guest (including in its fstab).

Since we know what is the root device in the appliance, pass it to
mkinitrd directly, so it does not have to do guesswork.

Thanks to: Cédric Bosdonnat, for reporting the issue, and testing
the fix.
---
 v2v/convert_linux.ml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/v2v/convert_linux.ml b/v2v/convert_linux.ml
index a1088b3..f8dfa00 100644
--- a/v2v/convert_linux.ml
+++ b/v2v/convert_linux.ml
@@ -517,7 +517,8 @@ let rec convert (g : G.guestfs) inspect source output rcaps =
           g#command [| "/sbin/mkinitrd";
                        "-m"; String.concat " " modules;
                        "-i"; initrd;
-                       "-k"; kernel.ki_vmlinuz |]
+                       "-k"; kernel.ki_vmlinuz;
+                       "-d"; inspect.i_root |]
         )
       )
       else if family = `Debian_family then (
-- 
2.9.3




More information about the Libguestfs mailing list