[Libguestfs] libguestfs-test-tool on ubuntu: kernel panic

Richard W.M. Jones rjones at redhat.com
Wed Aug 10 17:46:59 UTC 2011


On Wed, Aug 10, 2011 at 09:42:10AM -0700, David Konerding wrote:
> BTW, it's actually a list of ~8000 files (looks like all the unpacked files
> from all the .debs that got downloadeD).
> 
> I stopped feboostrap during its download after it downloaded the .deb for
> bash (there seems to be no option to force febootstrap to not clean up
> /tmp/febootstrap* after running).
> 
> I see no reason why feboostrap wouldn't be able to read these files:
> 2318338    4 drwxr-xr-x   2 dek      redacted          4096 Aug 10 09:39
> /tmp/bashpkg/bin
> 2318444    0 lrwxrwxrwx   1 dek      redacted             4 Aug 10 09:39
> /tmp/bashpkg/bin/sh -> bash
> 2318443    0 lrwxrwxrwx   1 dek      redacted             4 Aug 10 09:39
> /tmp/bashpkg/bin/rbash -> bash
> 2318339  920 -rwxr-xr-x   1 dek      redacted        934336 Apr 18  2010
> /tmp/bashpkg/bin/bash

I would agree this certainly looks like a bug in febootstrap.  I can't
imagine what it would be that wouldn't also affect our builds on
Ubuntu 11.04.

Here is a way you could try reproducing the issue, in a smaller and
more manageable context.

You can run all of the commands below as non-root from /tmp or another
temporary directory.

First:

$ febootstrap --verbose --names bash

then examine the debug messages and the output files created in the
current directory ('base.img' and 'hostfiles').

If base.img and hostfiles look reasonable, try building an appliance
from them:

$ febootstrap-supermin-helper -f ext2 -v \
  base.img hostfiles $(uname -m) kernel initrd appliance

(Note that 'kernel', 'initrd' and 'appliance' are all output files
that will be created in the current directory).

Now you've got a chicken-and-egg problem, but 'appliance' is an ext2
disk image which can be examined using guestfish:

$ guestfish --ro -a appliance -m /dev/sda

Welcome to guestfish, the libguestfs filesystem interactive shell for
editing virtual machine filesystems.

Type: 'help' for help on commands
      'man' to read the manual
      'quit' to quit the shell

><fs> ll /bin/
total 2668
drwxr-xr-x  2 1000 1000   4096 Aug 10 17:40 .
drwxr-xr-x 17 1000 1000   4096 Aug 10 17:41 ..
-rwxr-xr-x  1    0    0 954896 Mar 31 21:20 bash
-rwxr-xr-x  1    0    0  47696 Feb 23 14:24 cat
-rwxr-xr-x  1    0    0  55864 Feb 23 14:24 chgrp
-rwxr-xr-x  1    0    0  51704 Feb 23 14:24 chmod
-rwxr-xr-x  1    0    0  55880 Feb 23 14:24 chown
-rwxr-xr-x  1    0    0 117808 Feb 23 14:24 cp
-rwxr-xr-x  1    0    0 109736 Nov 15  2010 dash
-rwxr-xr-x  1    0    0  55832 Feb 23 14:24 date
-rwxr-xr-x  1    0    0  51840 Feb 23 14:24 dd
-rwxr-xr-x  1    0    0  64208 Feb 23 14:24 df
-rwxr-xr-x  1    0    0 105776 Feb 23 14:24 dir
-rwxr-xr-x  1    0    0  26968 Feb 23 14:24 echo
-rwxr-xr-x  1    0    0  22856 Feb 23 14:24 false
-rwxr-xr-x  1    0    0  47680 Feb 23 14:24 ln
-rwxr-xr-x  1    0    0 105776 Feb 23 14:24 ls
-rwxr-xr-x  1    0    0  47624 Feb 23 14:24 mkdir
-rwxr-xr-x  1    0    0  31112 Feb 23 14:24 mknod
-rwxr-xr-x  1    0    0  35352 Feb 23 14:24 mktemp
-rwxr-xr-x  1    0    0 109584 Feb 23 14:24 mv
-rwxr-xr-x  1    0    0  31200 Feb 23 14:24 pwd
lrwxrwxrwx  1    0    0      4 Jul 20 21:19 rbash -> bash
-rwxr-xr-x  1    0    0  35272 Feb 23 14:24 readlink
-rwxr-xr-x  1    0    0  55872 Feb 23 14:24 rm
-rwxr-xr-x  1    0    0  39320 Feb 23 14:24 rmdir
-rwxr-xr-x  1    0    0  15048 Jan 20  2011 run-parts
lrwxrwxrwx  1    0    0      4 Jul 20 21:19 sh -> dash
-rwxr-xr-x  1    0    0  26984 Feb 23 14:24 sleep
-rwxr-xr-x  1    0    0  63992 Feb 23 14:24 stty
-rwxr-xr-x  1    0    0  22872 Feb 23 14:24 sync
-rwxr-xr-x  1    0    0  10312 Jan 20  2011 tempfile
-rwxr-xr-x  1    0    0  47640 Feb 23 14:24 touch
-rwxr-xr-x  1    0    0  22856 Feb 23 14:24 true
-rwxr-xr-x  1    0    0  27016 Feb 23 14:24 uname
-rwxr-xr-x  1    0    0 105776 Feb 23 14:24 vdir
-rwxr-xr-x  1    0    0    946 Jan 20  2011 which

(The above output was from Ubuntu 11.04)

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
libguestfs lets you edit virtual machines.  Supports shell scripting,
bindings from many languages.  http://libguestfs.org




More information about the Libguestfs mailing list