Hide Forgot
libguestfs doesn't work on recently released qemu 2.7. Could not open option rom 'linuxboot_dma.bin': No such file or directory libguestfs: responding to serial console Device Status Report Downgrading qemu to 2.6.1 immediately fixes the problem and the error message no longer shows up. Using Arch Linux x86_64 with libguestfs 1.34.2 and qemu 2.7.0. Here's the output of libguestfs-test-tool: ************************************************************ * IMPORTANT NOTICE * * When reporting bugs, include the COMPLETE, UNEDITED * output below in your bug report. * ************************************************************ LIBVIRT_DEFAULT_URI=qemu:///system PATH=/home/nowaker/.rvm/gems/ruby-2.2.2/bin:/home/nowaker/.rvm/gems/ruby-2.2.2@global/bin:/home/nowaker/.rvm/rubies/ruby-2.2.2/bin:/home/nowaker/.rvm/bin:/home/nowaker/.nvm/versions/node/v6.5.0/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/opt/kde/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/nowaker/bin XDG_RUNTIME_DIR=/run/user/1000 SELinux: sh: getenforce: command not found guestfs_get_append: (null) guestfs_get_autosync: 1 guestfs_get_backend: direct guestfs_get_backend_settings: [] guestfs_get_cachedir: /var/tmp guestfs_get_direct: 0 guestfs_get_hv: /usr/bin/qemu-system-x86_64 guestfs_get_memsize: 500 guestfs_get_network: 0 guestfs_get_path: /usr/lib/guestfs guestfs_get_pgroup: 0 guestfs_get_program: libguestfs-test-tool guestfs_get_recovery_proc: 1 guestfs_get_smp: 1 guestfs_get_sockdir: /run/user/1000 guestfs_get_tmpdir: /tmp guestfs_get_trace: 0 guestfs_get_verbose: 1 host_cpu: x86_64 Launching appliance, timeout set to 600 seconds. libguestfs: launch: program=libguestfs-test-tool libguestfs: launch: version=1.34.2 libguestfs: launch: backend registered: unix libguestfs: launch: backend registered: uml libguestfs: launch: backend registered: libvirt libguestfs: launch: backend registered: direct libguestfs: launch: backend=direct libguestfs: launch: tmpdir=/tmp/libguestfsKrOdXz libguestfs: launch: umask=0022 libguestfs: launch: euid=1000 libguestfs: begin testing qemu features libguestfs: checking for previously cached test results of /usr/bin/qemu-system-x86_64, in /var/tmp/.guestfs-1000 libguestfs: command: run: /usr/bin/qemu-system-x86_64 libguestfs: command: run: \ -display none libguestfs: command: run: \ -help libguestfs: qemu version 2.7 libguestfs: command: run: /usr/bin/qemu-system-x86_64 libguestfs: command: run: \ -display none libguestfs: command: run: \ -machine accel=kvm:tcg libguestfs: command: run: \ -device ? libguestfs: saving test results libguestfs: finished testing qemu features [00044ms] /usr/bin/qemu-system-x86_64 \ -global virtio-blk-pci.scsi=off \ -nodefconfig \ -enable-fips \ -nodefaults \ -display none \ -machine accel=kvm:tcg \ -cpu host \ -m 500 \ -no-reboot \ -rtc driftfix=slew \ -no-hpet \ -global kvm-pit.lost_tick_policy=discard \ -kernel /usr/lib/guestfs/kernel \ -initrd /usr/lib/guestfs/initrd \ -object rng-random,filename=/dev/urandom,id=rng0 \ -device virtio-rng-pci,rng=rng0 \ -device virtio-scsi-pci,id=scsi \ -drive file=/tmp/libguestfsKrOdXz/scratch.1,cache=unsafe,format=raw,id=hd0,if=none \ -device scsi-hd,drive=hd0 \ -drive file=/usr/lib/guestfs/root,snapshot=on,id=appliance,cache=unsafe,if=none,format=raw \ -device scsi-hd,drive=appliance \ -device virtio-serial-pci \ -serial stdio \ -device sga \ -chardev socket,path=/run/user/1000/libguestfst478bR/guestfsd.sock,id=channel0 \ -device virtserialport,chardev=channel0,name=org.libguestfs.channel.0 \ -append 'panic=1 console=ttyS0 udevtimeout=6000 udev.event-timeout=6000 no_timer_check printk.time=1 cgroup_disable=memory usbcore.nousb cryptomgr.notests tsc=reliable 8250.nr_uarts=1 root=/dev/sdb selinux=0 guestfs_verbose=1 TERM=xterm' Could not open option rom 'linuxboot_dma.bin': No such file or directory libguestfs: responding to serial console Device Status Report \x1b[1;256r\x1b[256;256H\x1b[6n Google, Inc. Serial Graphics Adapter 11/03/11 SGABIOS $Id$ (pbonzini.redhat.com) Thu Nov 3 13:33:51 UTC 2011 Term: 80x24 4 0 SeaBIOS (version 1.9.3-20160701_074356-anatol) Booting from Hard Disk... Boot failed: not a bootable disk Booting from Floppy... Boot failed: could not read the boot disk No bootable device. ^C --- And this is the output immediately after downgrading to qemu 2.6: ************************************************************ * IMPORTANT NOTICE * * When reporting bugs, include the COMPLETE, UNEDITED * output below in your bug report. * ************************************************************ PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/opt/kde/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl SELinux: sh: getenforce: command not found guestfs_get_append: (null) guestfs_get_autosync: 1 guestfs_get_backend: direct guestfs_get_backend_settings: [] guestfs_get_cachedir: /var/tmp guestfs_get_direct: 0 guestfs_get_hv: /usr/bin/qemu-system-x86_64 guestfs_get_memsize: 500 guestfs_get_network: 0 guestfs_get_path: /usr/lib/guestfs guestfs_get_pgroup: 0 guestfs_get_program: libguestfs-test-tool guestfs_get_recovery_proc: 1 guestfs_get_smp: 1 guestfs_get_sockdir: /tmp guestfs_get_tmpdir: /tmp guestfs_get_trace: 0 guestfs_get_verbose: 1 host_cpu: x86_64 Launching appliance, timeout set to 600 seconds. libguestfs: launch: program=libguestfs-test-tool libguestfs: launch: version=1.34.2 libguestfs: launch: backend registered: unix libguestfs: launch: backend registered: uml libguestfs: launch: backend registered: libvirt libguestfs: launch: backend registered: direct libguestfs: launch: backend=direct libguestfs: launch: tmpdir=/tmp/libguestfssUVo0Z libguestfs: launch: umask=0022 libguestfs: launch: euid=0 libguestfs: begin testing qemu features libguestfs: checking for previously cached test results of /usr/bin/qemu-system-x86_64, in /var/tmp/.guestfs-0 libguestfs: loading previously cached test results libguestfs: qemu version 2.6 libguestfs: finished testing qemu features [00000ms] /usr/bin/qemu-system-x86_64 \ -global virtio-blk-pci.scsi=off \ -nodefconfig \ -enable-fips \ -nodefaults \ -display none \ -machine accel=kvm:tcg \ -cpu host \ -m 500 \ -no-reboot \ -rtc driftfix=slew \ -no-hpet \ -global kvm-pit.lost_tick_policy=discard \ -kernel /usr/lib/guestfs/kernel \ -initrd /usr/lib/guestfs/initrd \ -object rng-random,filename=/dev/urandom,id=rng0 \ -device virtio-rng-pci,rng=rng0 \ -device virtio-scsi-pci,id=scsi \ -drive file=/tmp/libguestfssUVo0Z/scratch.1,cache=unsafe,format=raw,id=hd0,if=none \ -device scsi-hd,drive=hd0 \ -drive file=/usr/lib/guestfs/root,snapshot=on,id=appliance,cache=unsafe,if=none,format=raw \ -device scsi-hd,drive=appliance \ -device virtio-serial-pci \ -serial stdio \ -device sga \ -chardev socket,path=/tmp/libguestfsPHvaSM/guestfsd.sock,id=channel0 \ -device virtserialport,chardev=channel0,name=org.libguestfs.channel.0 \ -append 'panic=1 console=ttyS0 udevtimeout=6000 udev.event-timeout=6000 no_timer_check printk.time=1 cgroup_disable=memory usbcore.nousb cryptomgr.notests tsc=reliable 8250.nr_uarts=1 root=/dev/sdb selinux=0 guestfs_verbose=1 TERM=xterm' libguestfs: responding to serial console Device Status Report \x1b[1;256r\x1b[256;256H\x1b[6n Google, Inc. Serial Graphics Adapter 11/03/11 SGABIOS $Id$ (pbonzini.redhat.com) Thu Nov 3 13:33:51 UTC 2011 Term: 80x24 4 0 SeaBIOS (version 1.9.3-20160701_074356-anatol) Booting from ROM... Probing EDD (edd=off to disable)... ok \x1b[2J[ 0.000000] Linux version 4.5.6-300.fc24.x86_64+debug (mockbuild.fedoraproject.org) (gcc version 6.1.1 20160510 (Red Hat 6.1.1-2) (GCC) ) #1 SMP Wed Jun 1 21:11:26 UTC 2016 [cut]
It seems more likely that the qemu package in Arch is broken. It probably isn't packaging the new linuxboot_dma.bin file which was added in qemu 2.7.
Arch bug: https://bugs.archlinux.org/task/50773
Very interesting, both qemu 2.6.1 and 2.7.0 have /usr/share/qemu/linuxboot.bin, not linuxboot_dma.bin. Thanks. Take care.
See: http://git.qemu.org/?p=qemu.git;a=commitdiff;h=b2a575a1c652904600869e774e45bf4c9ed72c55