Richard W.M. Jones wrote:
> On Thu, May 28, 2009 at 07:19:06PM -0500, Charles Duffy wrote:
>> - Stuff the files to be added into a cramfs filesystem, running mkcramfs
>> on the host.
>> Pro: Relatively fast. Easy to transfer a full directory structure to the
>> guest at one stroke.
>> Con: Device names an issue. Requires cramfs.ko to be added to the
>> whitelist in appliance/update-initramfs.sh.in.
> We should add this anyway -- please file a bug in bugzilla.
At present, the kernel module whitelist in libguestfs/appliance/make-initramfs.sh.in includes neither squashfs nor cramfs. There are legitimate use cases for these, so the whitelist should be updated appropriately.
I'm curious here about cramfs vs squashfs. I've not
really used either except indirectly through live CDs.
cramfs => old, restrictive limits on file size
squashfs => new, shiny, no limits, added in 2.6.29,
supported by CentOS 5 and Fedora
On the appliance side, it seems like adding cramfs.ko
and squashfs.ko is no problem. Both modules are
present in all kernels we care about, and neither module
has any dependency.
On the host side, mainly to support testing, I'd like
to depend on squashfs-tools. squashfs-tools is available
in CentOS 5 too.
Chris Lalancette tells me that squashfs 3 (in CentOS)
is incompatible with squashfs 4 (in 2.6.29 / Fedora).
Hopefully this won't make any material difference
because we'll be building squashfs images on the
fly for testing.
The immediate problem should be fixed by this commit:
I have verified that after adding this, I could create
a squashfs file, add it in guestfish, and then mount it
inside the guest:
><fs> add test.sqsh
qemu: loading initrd (0x1a21e2f bytes) at 0x00000000165ce000
><fs> file /dev/sda
Squashfs filesystem, little endian, version 4.0, 352483583 bytes, 1033 inodes, blocksize: 0 bytes, created: Fri May 15 18:24:00 1981
><fs> mount /dev/sda /
><fs> ll /
drwxr-xr-x 12 500 500 198 Apr 1 2008 .
drwxr-xr-x 18 root root 0 May 29 07:10 ..
drwxr-xr-x 2 500 500 8420 May 1 18:20 actions
drwxr-xr-x 2 500 500 2393 May 1 18:20 apps
drwxr-xr-x 2 500 500 1776 May 1 18:20 categories
drwxr-xr-x 2 500 500 3375 May 1 18:20 devices
drwxr-xr-x 2 500 500 977 May 1 18:20 emblems
drwxr-xr-x 2 500 500 869 May 1 18:20 emotes
drwxr-xr-x 2 500 500 5968 May 1 18:20 mimetypes
drwxr-xr-x 2 500 500 1545 May 1 18:20 places
drwxr-xr-x 2 500 500 3602 May 1 18:20 status
drwxr-xr-x 3 500 500 30 Mar 17 22:43 stock
This commit uses the squashfs during testing:
libguestfs-1.0.37-1.fc11 has been submitted as an update for Fedora 11.
libguestfs-1.0.38-1.fc11 has been submitted as an update for Fedora 11.
libguestfs-1.0.41-1.fc11 has been submitted as an update for Fedora 11.
libguestfs-1.0.42-1.fc11 has been submitted as an update for Fedora 11.
libguestfs-1.0.51-1.fc11 has been submitted as an update for Fedora 11.
libguestfs-1.0.54-2.fc11 has been submitted as an update for Fedora 11.
libguestfs-1.0.55-1.fc11 has been submitted as an update for Fedora 11.
libguestfs-1.0.58-2.fc11 has been submitted as an update for Fedora 11.
libguestfs-1.0.54-2.fc11 has been pushed to the Fedora 11 stable repository. If problems still persist, please make note of it in this bug report.
libguestfs-1.0.58-2.fc11 has been pushed to the Fedora 11 stable repository. If problems still persist, please make note of it in this bug report.
Long fixed upstream.