Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Feb 2019 23:03:41 +0000
From:      Frank Leonhardt <freebsd-doc@fjl.co.uk>
To:        "freebsd-virtualization@freebsd.org" <freebsd-virtualization@freebsd.org>
Subject:   Re: mounting/exporting/importing a zfs volume
Message-ID:  <4465134c-ae48-d39b-dd87-9514da577cc2@fjl.co.uk>
In-Reply-To: <20190211170312.GA76683@admin.sibptus.ru>
References:  <20190211170312.GA76683@admin.sibptus.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On 11/02/2019 17:03, Victor Sudakov wrote:
> Dear Colleagues,
>
> vm-bhyve keeps virtual machines on zfs volumes with volmode=dev. How can
> I access/mount the filesystems within the volume when the virtual host
> is offline?
>
> If I kept virtual disks in raw files, I could access them as devices
> with mdconfig. But:
>
> root@newserv:~ # mdconfig -a -f /dev/zvol/zroot/vm/mail/disk0
> mdconfig: /dev/zvol/zroot/vm/mail/disk0 is not a regular file
> root@newserv:~ #
>
> Also, how can I exchange those zfs volumes for use with other
> hypervisors? They are not real raw disk files so I cannot use
> sysutils/vmdktool etc.
>
I don't know this, but I'll guess(!)

If you've set volmode to dev then you get a cdev device in devfs, and 
you'll never get it to mount. Try using geom instead (which IIRC is the 
default).

HOWEVER, I suspect you're doing this because you're hoping that a ZFS 
volume is faster than a file.  I went through this, in the hope it 
wouldn't do CoW and would therefore be a lot better for databases. I was 
disappointed! Bascially, it's no better than a ZFS file. If that was 
your plan, use a UFS partition. I don't use ZFS volumes any more; I 
think they're more useful on Solaris. A md mapped on to a ZFS file seems 
to be the BSD way, and for VMs just use a file in its own dataset. You 
can then clone the dataset. Just what you need for nearly identical VMs.

Regards, Frank.





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4465134c-ae48-d39b-dd87-9514da577cc2>