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

Pavel Butsykin pbutsykin at virtuozzo.com
Wed Nov 2 18:52:20 UTC 2016


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 at 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 at virtuozzo.com>
>> Signed-off-by: Richard W.M. Jones <rjones at 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.

> Thanks,
>
>
>
> _______________________________________________
> Libguestfs mailing list
> Libguestfs at redhat.com
> https://www.redhat.com/mailman/listinfo/libguestfs
>




More information about the Libguestfs mailing list