[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [Libguestfs] [PATCH v4 1/2] v2v: bootloaders: search grub config for all distributions

On 02.11.2016 19:42, Pino Toscano wrote:
On Wednesday, 2 November 2016 15:01:08 CET Richard W.M. Jones wrote:
From: Pavel Butsykin <pbutsykin virtuozzo com>

This patch improves the search of grub config on EFI partition. This
means that the config will be found not only for rhel but also for
many other distributions.  Tests were performed on the following
distributions: centos, fedora, ubuntu, suse. In all cases, the config
path was /boot/efi/EFI/*distname*/grub.cfg

The main purpose of the patch is to improve support for converting of
vm with UEFI for most distributions. Unfortunately this patch does not
solve the problem for all distributions, for example Debian does not
store grub config on the EFI partition, therefore for such
distributions another solution is necessary.

Signed-off-by: Pavel Butsykin <pbutsykin virtuozzo com>
Signed-off-by: Richard W.M. Jones <rjones redhat com>

Mostly LGTM (it was the approach I suggested, after all) -- just one
note below.

  (* Grub1 (AKA grub-legacy) representation. *)
  class bootloader_grub1 (g : G.guestfs) inspect grub_config =
+  let () =
+    if grub_config = "/boot/efi/EFI/redhat/grub.conf" then
+      g#aug_transform "grub" "/boot/efi/EFI/redhat/grub.conf" in

I guess this could be changed to be:

   if String.is_prefix grub_config "/boot/efi/EFI/" then
     g#aug_transform "grub" grub_config

so even if we keep it around for a while, it will work fine also for
other distros than RH-based.

I agree, and not only for RH-based, ubuntu/debian and suse also have
such config paths. Although it's just an interim patch :)

But there is another point, we added a search for grub.conf/menu.lst in
/boot dir. This means that in some rare cases we can find the grub.conf
in non-standard locations(that will not be added to augeas). Can we
somehow handle the error aug_transform? Because if we could know that
augeas already contains the config path, it would simplify the issue.


Libguestfs mailing list
Libguestfs redhat com

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]