[virt-tools-list] virt-install: Getting initrd 'injection' to work...

Martin Ellis martin at ellis.name
Fri Oct 22 09:39:22 UTC 2010


Two things I should have mentioned, to corroborate my patch:

On 21 October 2010 23:02, Martin Ellis wrote:
> I had a look at the patch that introduced this feature [2], and noticed
> that it was using cpio -c when repacking the initrd.

The -c option corresponds to the 'odc' format:
http://info2html.sourceforge.net/cgi-bin/info2html-demo/info2html?(cpio.info.gz)Options

... but the Linux doc I linked to says that only 'newc' and 'crc' are supported:
http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6-stable.git;a=blob_plain;f=Documentation/early-userspace/buffer-format.txt;hb=HEAD

So if -c does work somewhere, it looks like it's relying on an
undocumented feature.

> While I was looking, I also noticed that the initrd gets unpacked, and
> then repacked again with the new files.  A more efficient way to do
> this is to simply append a new (compressed) cpio archive onto the end
> of the original initrd.

Actually, efficiency isn't the only issue.  The current implementation
won't work for a non-root user, because they won't be able to unpack
the /dev directory in the initrd because it contains device nodes.
This would also cause problems on filesystems mounted with nodev.

Martin




More information about the virt-tools-list mailing list