On Wed, Dec 01, 2021 at 11:20:05PM +0100, Pavel Raiskup wrote:
> On Monday, November 29, 2021 4:46:42 PM CET Daniel P. Berrangé wrote:
> > On Mon, Nov 29, 2021 at 04:38:26PM +0100, Pavel Raiskup wrote:
> > > On Monday, November 29, 2021 4:02:23 PM CET Daniel P. Berrangé wrote:
> > > > On Mon, Nov 29, 2021 at 03:24:12PM +0100, Pavel Raiskup wrote:
> > > > > Hello,
> > > > > 
> > > > > anyone had a successful experience with Fedora 35 Cloud images, and
> > > > > guestfish/virt-sysprep?
> > > > > 
> > > > > Seems like we switched from ext4 or xfs to 'btrfs', and guestfish
> > > > > doesn't work with the images, am I right?  At least I had problems
> > > > > on EL8 hypervisors so far.  > 
> > > > As a general rule, libguestfs is only guaranteed to work if the
> > > > host OS is the same or newer than the guest OS. It might (and often
> > > > does) work if the host OS is older than the guest, but that's pot
> > > > luck.
> > > > 
> > > > The libguestfs appliance use the host kernel to access the filesystems,
> > > > so if the guest OS kernel was newer, its filesystem may have used 
> > > > features
> > > > that the host OS kernel doesn't understand.
> > > > 
> > > > IOW, my assumption is that Fedora 35 xfs is using fetures that RHEL8
> > > > xfs doesn't support.
> > > 
> > > Ah, not xfs, but you helped me.  Now I understand what the message means 
> > > :-)
> > > 
> > > $ virt-sysprep -a ...
> > > [   0.0] Examining the guest ...
> > > virt-sysprep: error: libguestfs error: inspect_os: mount exited with 
> > > status 
> > > 32: mount: /tmp/btrfse5L6v2: unknown filesystem type 'btrfs'.
> > > 
> > > This is the absence of 'btrfs' on EL8.  So there's no way out from this
> > > on any currently supported RHEL, I bet.
> > 
> > I've not tried, but the container Neal points to in the other reply
> > may still work, if it includes a Fedora kernel vmlinux that libguestfs
> > can leverage. The host OS kernel is merely libguestfs' default choice,
> > you can point it to other kernels if you have some available
> 
> I can confirm it works, libguestfs-appliance brings kernel-core into the
> image.
> 
> Though, can I somehow manually point the host's libguestfs to the
> alternative kernel (e.g. from extracted kernel-core.rpm from F35)?  I
> mean.., it is really painful to fix our scripting to use the containerized
> libguestfs.  If so, any command touching host filesystem needs to be
> changed (e.g. copy-in/copy-out).  Also command-line arguments (-a) need to
> be changed.

You can set env vars

       SUPERMIN_KERNEL
       SUPERMIN_KERNEL_VERSION
       SUPERMIN_MODULES

see man guestfish(1) or supermin(1) 

Depending on what you are doing, this may or may not be sufficient. It
depends whether you trigger anything that requires the userspace tools
to know about the filesystem or not.

If not you'll also need to get the full appliance image. See more info
at

  https://libguestfs.org/libguestfs-make-fixed-appliance.1.html

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to