On Mon, Aug 15, 2011 at 3:49 PM, David Konerding <dek@konerding.com> wrote:


On Mon, Aug 15, 2011 at 3:33 PM, Richard W.M. Jones <rjones@redhat.com> wrote:
On Mon, Aug 15, 2011 at 03:21:25PM -0700, David Konerding wrote:
> OK, I have a new 2.6.38 kernel with virtio_blk.ko.  This solves the failure
> to find ext2 root device.
>
> Still not having any luck running the test-tool to completion.  There is no
> /sys in the guest root image. There is also no /etc/fstab (is that
> expected?)  There is no ethernet interface even though it looks like it can
> load virtio_net.

In my appliance, there is /sys, /etc/fstab (present but empty) and
eth0.


OK.  I fixed the /sys problem: no /sys directory exists in the base image, so mounting fails.  I edited inittab, and added mkdir /sys , this seems to help.
Isn't this normally created by febootstrap?

I have no fstab, but this doesn't really cause any problems AFAICT.

The next one is eth0.  The KVM invocation in test-tools is this; I see no -net option to setup a network interface.

libguestfs: [12474ms] /home/dek/sw/qemu-kvm-0.14.1/bin/qemu-system-x86_64 \
    -drive file=/tmp/libguestfs-test-tool-sda-KUZzVU,cache=off,format=raw,if=virtio \
    -nodefconfig \
    -enable-kvm \
    -nodefaults \
    -nographic \
    -m 500 \
    -no-reboot \
    -no-hpet \
    -device virtio-serial \
    -serial stdio \
    -chardev socket,path=/tmp/libguestfsgIrcIo/guestfsd.sock,id=channel0 \
    -device virtserialport,chardev=channel0,name=org.libguestfs.channel.0 \
    -kernel /var/tmp/.guestfs-88619/kernel.28112 \
    -initrd /var/tmp/.guestfs-88619/initrd.28112 \
    -append 'panic=1 console=ttyS0 udevtimeout=300 noapic acpi=off printk.time=1 cgroup_disable=memory selinux=0 guestfs_verbose=1 TERM=rxvt ' \
    -drive file=/var/tmp/.guestfs-88619/root.28112,snapshot=on,if=virtio,cache=unsafe

> Starting /init script ...
> warning: can't open /etc/fstab: No such file or directory
> mount: mount point /sys does not exist

Next step would be to add some debugging to appliance/init to show
what commands are being executed, and what's in the filesystem.

Also if you do:

 $ ./run rescue/virt-rescue -a /dev/null

then it may manage to get to a shell, in which case you can poke
around in the appliance by hand.


Interesting.  yes, this booted into a pretty dysfunctional host, but I did get a shell.  The error messages are the same.  I'll investigate some more.

Dave
 
Rich.

--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
virt-df lists disk usage of guests without needing to install any
software inside the virtual machine.  Supports Linux and Windows.
http://et.redhat.com/~rjones/virt-df/