[Libguestfs] Hierarchical local mount

Richard W.M. Jones rjones at redhat.com
Fri Nov 6 14:08:18 UTC 2015


On Fri, Nov 06, 2015 at 04:16:21PM +0300, Maxim Perevedentsev wrote:
> Hello everyone!
> 
> I have to implement the functionality of mounting all VM disks/partitions.
> 
> E.g. if a VM has 2 disks of 2 partitions each (I get it from
> virt-filesystems), I want to get the following structure on host
> node after mount:
> mnt/
> ------hdd0/
> -------------volume1/
> -------------volume2/
> ------hdd1/
> -------------volume1/
> -------------volume2/
> 
> I'd like to use guestmount due to syntax simplicity, but I found out
> that it's impossible to call e.g.
> guestmount -a disk.qcow2 -m /dev/sda1:/hdd0/volume1 -m
> /dev/sda2:/hdd0/volume2 mnt/
> 
> So I came to only two possible options:
> 1)
> mkdir -p mnt/hdd0/volume1
> guestmount -a disk.qcow2 -m /dev/sda1 mnt/hdd0/volume1
> ....
> (Is it safe to use the same disk from multiple guestmounts?)
> 
> 2)
> guestfish -a disk.qcow2 "
> run :
> mkmountpoint /hdd0 :
> mkmountpoint /hdd0/volume1 :
> ... :
> mount /dev/sda1 /hdd0/volume1 :
> ... :
> mount-local mnt/ :
> mount-local-run"
> 
> kill -TERM `pidof guestfish`
> guestunmount mnt/
> 
> 
> Is any of these options safe enough/preferred? Or, maybe, other options?
> I'd like to avoid guestfs API, threading and so on, and confine
> myself to command-line.

The mount-local APIs don't require threads, although they can use
them.

A Perl script should be fairly simple, and is a lot easier to automate
that guestfish and much more flexible than guestmount.

Have a look at the attached file.  In case it's not clear, you have to
do 'guestunmount <MOUNTPOINT>' to exit the main program.

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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fs-mount.pl
Type: application/x-perl
Size: 1033 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libguestfs/attachments/20151106/68917806/attachment.pl>


More information about the Libguestfs mailing list