On Fri, Apr 28, 2023 at 03:32:57PM +0200, Philippe Midol-Monnet wrote:
Hi
I have already fulfill a an issue, but it looks like it's not the recommended process.
We are using a LUKS partition containing a GPT table and several partions.
With libguestfs we can open the LUKS partition and the /dev/mapper/<mapname> device become available, but nested partition are not seen by the kernel. partprobe need to be run (or may be kpartx) to make partitions available in / dev/mapper.
AFAIK there are no simple solution. As a workaround we use guestfs_debug but it's not a long term solution.
We can see two solutions:
• adding a udev rule that will automatically run partpobe when a new device appeared in /dev/mapper • adding a new API in libguestfs guestfs_partprobe(device) that can be call by the user when needed.
What is the best best solution from your point of view? We can help implementing it.
I don't think there's any great answers here. Could you do the partition selection outside libguestfs? If it was a plain (not LUKS) partition then the answer would be yes, easily, with nbdkit-partition-filter: https://libguestfs.org/nbdkit.1.html#Combining-plugins-and-filters nbdkit also supports LUKS, but only LUKS v1, not the more common v2. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com Fedora Windows cross-compiler. Compile Windows programs, test, and build Windows installers. Over 100 libraries supported. http://fedoraproject.org/wiki/MinGW