Hi,

On Tue, Feb 19, 2019 at 08:33:51AM +0100, Martin Pitt wrote:
> Package: autopkgtest
> Version: 5.9
> 
> Even after fixing #916407 and #922501, these images still don't work:
> 
>   # autopkgtest-build-qemu stretch /tmp/s.img http://ftp.de.debian.org/debian
> 
> This succeeds, and gives me an image. But trying to boot it fails:
> 
> |   Booting a command list
> | 
> | Loading Linux 4.9.0-8-amd64 ...
> | Loading initial ramdisk ...
> | Loading, please wait...
> | starting version 232
> | Begin: Loading essential drivers ... done.
> | Begin: Running /scripts/init-premount ... done.
> | Begin: Mounting root file system ... Begin: Running /scripts/local-top ... 
> done.
> | Begin: Running /scripts/local-premount ... done.
> | Begin: Waiting for root file system ... Begin: Running /scripts/local-block 
> ... done.
> | Begin: Running /scripts/local-block ... done.
> |  [ same line two dozen times ... ]
> | done.
> | Gave up waiting for root file system device.  Common problems:
> |  - Boot args (cat /proc/cmdline)
> |    - Check rootdelay= (did the system wait long enough?)
> |  - Missing modules (cat /proc/modules; ls /dev)
> | ALERT!  /dev/mapper/loop0p1 does not exist.  Dropping to a shell!
> | 
> | 
> | BusyBox v1.22.1 (Debian 1:1.22.0-19+b3) built-in shell (ash)
> | Enter 'help' for a list of built-in commands.
> | 
> | (initramfs)
> 
> Indeed the root device is wrong, it looks like it's the one from the image 
> construction:
> 
> | (initramfs) cat /proc/cmdline
> | BOOT_IMAGE=/boot/vmlinuz-4.9.0-8-amd64 root=/dev/mapper/loop0p1 ro 
> biosdevname=0 net.ifnames=0 consoleblank=0 systemd.show_status=true rw 
> systemd.show_status=fals0
> 
> It should instead be this one:
> 
> | (initramfs) blkid
> | /dev/vda1: UUID="3d31e165-ebd4-4237-8991-d0c39245c0f8" TYPE="ext4" 
> PARTUUID="530a85ca-01"
> 
> If I change root= in the Grub boot menu, it boots fine.

This is weird. I just tried creating an stretch image and it worked both
under autopkgtest and booting it with plain kvm. In a shell (from
autopkgtest --shell):

~# cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-4.9.0-8-amd64 
root=UUID=ca8c4a47-0074-4a85-bb10-610e9672bf86 ro biosdevname=0 net.ifnames=0 
consoleblank=0 systemd.show_status=true rw quiet systemd.show_status=false 
quiet loglevel=3 rd.systemd.show_status=false systemd.show_status=false 
console=tty0 console=ttyS0,115200n8 console=ttyS0

> However, fstab is also wrong:
> 
> | # cat /etc/fstab
> | /dev/sda1 / ext4 errors=remount-ro 0 1
> 
> There is no sda1, this is virtio and thus it's vda1. It really should not rely
> on a device name, but use an UUID.
> 
> Not sure if that's a bug in vmdb2 or our control file, though?

Now, I can confirm that the fstab is broken. It is created by us, but
maybe that should be implemented by vmdb2.

Attachment: signature.asc
Description: PGP signature

Reply via email to