Date: Thu, 18 Jul 2019 19:53:42 -0700 From: Pete Wright <pete@nomadlogic.org> To: freebsd-virtualization@freebsd.org Subject: Re: Custom Qcow2 Images Message-ID: <95a027df-46c3-24ba-8acd-ddb24579885e@nomadlogic.org> In-Reply-To: <459c53d0-f00b-6ce3-dfab-de3ddac1c0bb@nomadlogic.org> References: <459c53d0-f00b-6ce3-dfab-de3ddac1c0bb@nomadlogic.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 7/14/19 4:37 PM, Pete Wright wrote: > Hey there folks, > I am wondering if anyone has any pointers on creating a custom Qcow2 > FreeBSD that is akin in size to nanobsd. I have an environment where > we need to run a single binary and want to keep our disk image as > small as possible. It will run inside a user-mode Qemu process. > Reading through the nanobsd script it seems that it expects a raw disk > for installation, so I do think using the nanobsd script itself well > work well. Has anyone else done something similar? My goal is to > have a disk image that is around 500MB. > > Thanks in advance! > -pete > I wanted to close the loop on this discussion as I think I've found a workable solution for my use-case. I'm using a three step process: 1) generate a raw disk image using "poudriere image". This phase references a Jail I've built that has disabled lots of uneeded features as per the docs here: https://bsdrp.net/documentation/technical_docs/poudriere 2) next I use mkimg(1) to convert the raw disk image to a bootable qcow2 image that I can boot from Qemu. this results in a disk image that's about 800MB. 3) the final phase is to use qemu-img to create a compressed qcow2 image. the resulting artifact of that process is a ~325MB Qcow2 diskimage that actually has decent performance (on my SSD backed zfs filesystem). I attempted to use poudriere image to generate a usb image directly, and while that did work well sizing wise i ran into an issue where insufficient inodes were allocated. I reference what I ran into in this github issue: https://github.com/freebsd/poudriere/issues/701 For me this current setup is fine for my purposes, although I'm sure others can optimize this workflow a bit :) Also, thanks again Allan and Dave Cottlehuber (who pinged me offlist) for giving me some hints and pointing me in the right direction! Cheers, -pete -- Pete Wright pete@nomadlogic.org @nomadlogicLA
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?95a027df-46c3-24ba-8acd-ddb24579885e>