On Wed, Feb 15, 2017 at 11:06:34AM +0100, Pino Toscano wrote:
On Tuesday, 14 February 2017 16:33:57 CET Richard W.M. Jones wrote:
> On Tue, Feb 14, 2017 at 09:12:10AM +0100, Pino Toscano wrote:
> > Introduce a new API to create a new squashfs filesystem out of a path
> > in the guest. It can be configured to exclude paths based on patterns,
> > and to select which compression use for the filesystem.
> >
> > The advantage of running mksquashfs directly in the appliance is that
> > ownerships are properly saved, as opposed to tar_out + local untar.
>
> I'm fairly sure this was proposed before as an API, but I cannot find
> that right now. Was rejected because mksquashfs doesn't support
> streaming output.
Yes, and it does not have any streaming for input either, so things
like `cat my.tar | mksquashfs - my.squash` cannot be done :-(
> However I'm fine with this, although perhaps there should be a warning
> in the longdesc saying that there may be problems with large files. I
> think this API will break in the region of 3GB.
Also because the temporary squashfs file is stored inside the appliance,
which has < 3.5G space available.
It makes sense -- what about the following addendum to the longdesc?
Please note that this API may fail when used to compress directories
with large files, such as the resulting squashfs will be over 3GB big.
Yup, seems reasonable. (ACK series BTW in case I wasn't clear
about that yesterday).
Thanks,
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
libguestfs lets you edit virtual machines. Supports shell scripting,
bindings from many languages.
http://libguestfs.org