Bug 26468

Summary: drakboot does not understand nvme devices
Product: Mageia Reporter: Marc Krämer <mageia>
Component: RPM PackagesAssignee: Thierry Vignaud <thierry.vignaud>
Status: RESOLVED WONTFIX QA Contact:
Severity: major    
Priority: Normal CC: tmb
Version: 7Keywords: NEEDINFO
Target Milestone: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Source RPM: drakxtools-18.21-1.mga7.src.rpm CVE:
Status comment:

Description Marc Krämer 2020-04-10 12:28:44 CEST
newer servers have nvme devices installed
crw------- 1 root root 246, 0 Apr 10 12:02 /dev/nvme0
brw-rw---- 1 root disk 259, 1 Apr 10 12:25 /dev/nvme0n1
brw-rw---- 1 root disk 259, 2 Apr 10 12:25 /dev/nvme0n1p1
brw-rw---- 1 root disk 259, 3 Apr 10 12:25 /dev/nvme0n1p2
crw------- 1 root root 246, 1 Apr 10 12:02 /dev/nvme1
brw-rw---- 1 root disk 259, 0 Apr 10 12:25 /dev/nvme1n1
brw-rw---- 1 root disk 259, 4 Apr 10 12:25 /dev/nvme1n1p1
brw-rw---- 1 root disk 259, 5 Apr 10 12:25 /dev/nvme1n1p2


calling drakboot results in the following error:
INTERNAL ERROR: unknown device sda
MDK::Common::Various::internal_error() called from /usr/lib/libDrakX/devices.pm:131
devices::entry() called from /usr/lib/libDrakX/devices.pm:146
devices::make() called from /usr/lib/libDrakX/partition_table/raw.pm:60
partition_table::raw::typeOfMBR() called from /usr/lib/libDrakX/bootloader.pm:307
bootloader::read() called from /usr/libexec/drakboot:39


So I'm unable to install a bootloader on this machine.
Comment 1 Lewis Smith 2020-04-10 20:31:50 CEST
Progress...

Assigning to tv as active & registered maintainer of this SRPM.

Assignee: bugsquad => thierry.vignaud

Comment 2 Thierry Vignaud 2020-04-14 17:22:56 CEST
ccing Thomas who added the support for nvme.
But I'm pretty sure you've a bogus reference to sda somewhere in eg /etc/fstab

How are you installing this?
With Drakx (classical installer)? Live ISO?

Keywords: (none) => NEEDINFO
CC: (none) => tmb

Comment 3 Marc Krämer 2020-04-14 17:27:14 CEST
"But I'm pretty sure you've a bogus reference to sda somewhere in eg /etc/fstab"
nope, none at all.
there is only md0 and lvs references inside fstab


"How are you installing this?"
this is a clone of an existing machine.
Comment 4 Thomas Backlund 2020-04-14 17:48:52 CEST
Oh I know nvme works on my server with 2 mvme disks, my workstation with 3 nvme disks and my laptop with 1 nvme disk, and they all just work :)

So we need more info...

Since its a clone, did the system you cloned from have /dev/sda ?

is md0 on the nvme disks ? or has it been on normal sata/sas disks ?


any reference to sda in grub kernel command line ?
Comment 5 Marc Krämer 2020-04-14 17:59:34 CEST
it has 2 nvme disks, each 2 partitions:
fdisk -l /dev/nvme0n1
Disk /dev/nvme0n1: 477 GiB, 512110190592 bytes, 1000215216 sectors
Disk model: SAMSUNG MZVLB512HAJQ-00000              
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x897e312f

Device         Boot  Start        End   Sectors   Size Id Type
/dev/nvme0n1p1        2048     821247    819200   400M fd Linux raid autodetect
/dev/nvme0n1p2      821248 1000215215 999393968 476.6G fd Linux raid autodetect

cloned system has /dev/sda


running drakboot in chroot-env (with bind-mounted /proc,/sys,/dev,/run) in an rescue system (debian 10.2)


Ok, found the crash-point: /boot/grub2/install.sh

Stating /dev/sda without having it, should not crash drakboot - I suggest this just to be an "hint".
Comment 6 Thierry Vignaud 2020-04-15 08:43:58 CEST
Nope, that's a very special case.
In such a case, you've to manually adjust /etc/fstab, /boot/grub*/* when you remove a disk…

Resolution: (none) => WONTFIX
Status: NEW => RESOLVED