Thanks for your help!
I installed a new kernel from squeeze-backports:
linux-image-3.2.0-0.bpo.1-amd64/squeeze-backports uptodate 3.2.4-1~bpo60+1
and libguestfs works fine now!
Zoltan
On 5/21/2012 3:15 PM, Richard W.M. Jones wrote:
[Hilko is in the best position to answer these questions. My own
comments below]
On Mon, May 21, 2012 at 02:04:40PM +0200, Zoltan wrote:
> I'm trying to install libguestfs on Debian squeeze installed from
>
http://people.debian.org/~bengen/libguestfs/
> It does not work. Here are the details:
>
> I was able to install libguestfs-tools and its dependencies.
> However, aptitude removed the following two packages: qemu and
> qemu-system. I'm not sure if it's okay or not. If I try to install
> those packages back, I get the following:
>
> # aptitude install qemu qemu-system
> The following NEW packages will be installed:
> qemu qemu-system{b}
> 0 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
> Need to get 16.6 MB of archives. After unpacking 50.9 MB will be used.
> The following packages have unmet dependencies:
> qemu-system: Depends: openbios-ppc (>= 1.0+svn1018) but
> 1.0+svn640-1 is installed.
> Depends: openbios-sparc (>= 1.0+svn1018) but
> 1.0+svn640-1 is installed.
>
> My first question is, is this normal? Do I need the qemu and
> qemu-system packages installed? What about these openbios
> dependencies?
libguestfs requires a recent qemu, and kernel>= 2.6.34.
Specifically it needs the virtio-serial feature of qemu and the
kernel. You can check if qemu has virtio-serial by doing:
$ qemu -device \? 2>&1 | grep virtio-serial
name "virtio-serial-pci", bus PCI, alias "virtio-serial"
name "virtserialport", bus virtio-serial-bus
name "virtconsole", bus virtio-serial-bus
where you may need to replace 'qemu' by whatever name your qemu/KVM
binary is really called.
You can check if your kernel was compiled with virtio-serial by
looking at /boot/config-* and checking for CONFIG_VIRTIO_CONSOLE=(y|m)
> The next problem I have encountered: When I installed
> libguestfs-tools, aptitude also installed the cryptsetup (
> cryptsetup/squeeze uptodate 2:1.1.3-4squeeze2 ) package as a
> dependency. Since then, every time I run update-initramfs, I get
> this:
libguestfs uses host tools (such as cryptsetup) to process disk images
(encrypted disk images in this case). So it depends on many host
tools of this sort.
> # update-initramfs -u
> update-initramfs: Generating /boot/initrd.img-2.6.32-5-amd64
> cryptsetup: WARNING: failed to detect canonical device of /dev/md1
> cryptsetup: WARNING: could not determine root device from /etc/fstab
>
> I use RAID1 arrays md1 and md3 on my system. I googled "cryptsetup:
> WARNING: failed to detect canonical device" and "cryptsetup:
> WARNING: could not determine root device" to no avail. I mean, some
> other people get these warnings too, but I haven't find any solution
> to get rid of these warning messages. Since these are just warnings,
> I guess I can just ignore these?
>
>
> Now, back to the main issue: libguestfs does not work! When I run
> libguestfs-test-tool, it stops with the following error:
>
> Failed to connect to virtio-serial channel.
>
> This is a fatal error and the appliance will now exit.
>
> Usually this error is caused by either QEMU or the appliance
> kernel not supporting the vmchannel method that the
> libguestfs library chose to use. Please run
> 'libguestfs-test-tool' and provide the complete, unedited
> output to the libguestfs developers, either in a bug report
> or on the libguestfs redhat com mailing list.
This indicates too old qemu and/or kernel.
> When I try to use the virt-filesystems tool, after about 2-3 seconds
> it stops with an error message that says:
>
> # virt-filesystems -a myimagefile.img
> libguestfs: error: guestfs_launch failed, see earlier error messages
>
> Then in the log files I see these:
>
> libvirtd: 04:49:11.561: warning : qemudStartup:1832 : Unable to
> create cgroup for driver: No such device or address
> libvirtd: 04:49:11.729: warning : lxcStartup:1900 : Unable to create
> cgroup for driver: No such device or address
>
> Basically, none of the libguestfs tools work on my Debian squeeze
> system... What can I do to make libguestfs install properly?
You need to get newer qemu and/or kernel.
> I thought that maybe I should install a newer Linux kernel from
> backports? Currently I use the following squeeze kernel:
> linux-image-2.6.32-5-amd64/squeeze uptodate 2.6.32-45
>
> Do I need to install 3.x kernel for libguestfs ?
>
> BTW, the following packages are installed from the squeeze-backports
> (or Bengen's) repository on my system:
>
> febootstrap/squeeze uptodate 3.14-2~bpo60+1
> ipxe/squeeze uptodate 1.0.0+git-2.149b50-1~bpo60+1
> kvm/squeeze uptodate 1:0.14.1+dfsg-4~bpo60+1
> libguestfs0/squeeze uptodate 1:1.16.17-1~bpo60+1
> libguestfs-perl/squeeze uptodate 1:1.16.17-1~bpo60+1
> libguestfs-tools/squeeze uptodate 1:1.16.17-1~bpo60+1
> qemu-keymaps/squeeze uptodate 0.14.1+dfsg-3~bpo60+1
> qemu-kvm/squeeze uptodate 0.14.1+dfsg-4~bpo60+1
> qemu-user/squeeze uptodate 0.14.1+dfsg-3~bpo60+1
> qemu-utils/squeeze uptodate 0.14.1+dfsg-3~bpo60+1
> seabios/squeeze uptodate 1.6.3-2~bpo60+1
> vgabios/squeeze uptodate 0.7a-1~bpo60+1
>
> Do I miss something?
>
> I would really appreciate if someone can point me to the right
> direction! Thanks!
Rich.