Comment 20 for bug 946022

Revision history for this message
Povilas Daukintis (povilas+launchpad) wrote :

This is a grub-legacy issue, not the vmbuilder' itself. It seems that the problem is when grub tries to do setup step on ext4 fs with inode size > 128 (256 in particular). Interesting thing is that sometimes this step actually passes, so it might seem like a random failure. On recent vmbuilder / Ubuntu / Debian releases ext4 / 256bit inode size is used by default.

You have two possible workarounds:

a) tell vmbuilder to use ext3 fs by default (vmbuilder uses ext4 by default from Karmic release, you can change that in /usr/share/pyshared/VMBuilder/plugins/ubuntu/karmic.py, or possibly override this in other version' file)

b) create root fs as ext4, but with 128bit inode size. You can modify vmbuilder to pass '-I 128' for mkfs.ext4 command (in /usr/share/pyshared/VMBuilder/disk.py, mkfs_fstype() function)

Keep in mind that using 128bit size inodes on ext4 you might experience some issues when using advanced fs attributes: ACL's, SELinux labels, some Samba specific labels.

grub-legacy received patches to support ext3 fs with 256 bit size inodes, and later - variable size inode structs on ext4 fs, but it seems this does not work.

Of course, there is possibility to drop grub-legacy and try to use grub2 with vmbuilder, but this is completely different tale and I think will take much more time and effort to accomplish.