LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - Installation
User Name
Password
Slackware - Installation This forum is for the discussion of installation issues with Slackware.

Notices


Reply
  Search this Thread
Old 11-13-2022, 02:49 AM   #1
slackstu
LQ Newbie
 
Registered: Aug 2019
Posts: 13

Rep: Reputation: Disabled
15.0 boot problem with 2 NVMe drives


I have 2 identical NVMe drives with GPT partitioning and a ext4 Slackware64-15.0 root partition on nvme0n1p1. I'm using the stock huge kernel and lilo. Occasionally the kernel will fail to find the root filesystem because it's looking on the wrong drive (I know this because I tried putting another root partition with a different hostname on nvme1n1p1).

I've tried configuring lilo with standard device names, by-id names, filesystem labels, and GPT partition labels but still get the same behavior. About every 5th boot it looks on the wrong drive.

Please advise on what I'm doing wrong.
 
Old 11-13-2022, 05:59 AM   #2
rkelsen
Senior Member
 
Registered: Sep 2004
Distribution: slackware
Posts: 4,448
Blog Entries: 7

Rep: Reputation: 2553Reputation: 2553Reputation: 2553Reputation: 2553Reputation: 2553Reputation: 2553Reputation: 2553Reputation: 2553Reputation: 2553Reputation: 2553Reputation: 2553
15.0 boot problem with 2 NVMe drives

The answers you seek are here: https://unix.stackexchange.com/quest...file-with-uuid
 
Old 11-13-2022, 01:29 PM   #3
slackstu
LQ Newbie
 
Registered: Aug 2019
Posts: 13

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by rkelsen View Post
Thanks for the suggestion. I've already tried the same things in fstab which I tried in lilo.conf. I also changed some fstab lines in the root partition on nvme1n1p1 so I could see which root partition was being used. That showed the kernel was loading the wrong root so I'm pretty sure the problem is with the kernel (5.15.63) or lilo (24.2) or even the BIOS or hardware (Asrock X570M-Pro4, BIOS 3.70, Ryzen 7 5800X).
 
Old 11-13-2022, 06:35 PM   #4
guanx
Senior Member
 
Registered: Dec 2008
Posts: 1,176

Rep: Reputation: 233Reputation: 233Reputation: 233
Quote:
Originally Posted by slackstu View Post
I have 2 identical NVMe drives with GPT partitioning and a ext4 Slackware64-15.0 root partition on nvme0n1p1. I'm using the stock huge kernel and lilo. Occasionally the kernel will fail to find the root filesystem because it's looking on the wrong drive (I know this because I tried putting another root partition with a different hostname on nvme1n1p1).

I've tried configuring lilo with standard device names, by-id names, filesystem labels, and GPT partition labels but still get the same behavior. About every 5th boot it looks on the wrong drive.

Please advise on what I'm doing wrong.
Just make sure the IDs used to distinguish the filesystems or partitions are different, and the initrd waited long enough for the disk devices to appear.

I've been using PARTUUID to find the root filesystem for years on a machine with two NVMe disks and it always worked no matter how the device names change.
 
Old 11-13-2022, 06:56 PM   #5
slackstu
LQ Newbie
 
Registered: Aug 2019
Posts: 13

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by guanx View Post
Just make sure the IDs used to distinguish the filesystems or partitions are different, and the initrd waited long enough for the disk devices to appear.

I've been using PARTUUID to find the root filesystem for years on a machine with two NVMe disks and it always worked no matter how the device names change.
Thanks for the info. Is an initrd required? I've been using the huge kernel with no initrd. And if required, how do I ensure the initrd waits long enough?
 
Old 11-13-2022, 07:30 PM   #6
colorpurple21859
LQ Veteran
 
Registered: Jan 2008
Location: florida panhandle
Distribution: Slackware Debian, Fedora, others
Posts: 7,346

Rep: Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589
what is output of
Code:
lsblk -o NAME,FSTYPE,UUID,PARTUUID,FSUSE%,MOUNTPOINT
 
Old 11-13-2022, 09:17 PM   #7
slackstu
LQ Newbie
 
Registered: Aug 2019
Posts: 13

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by colorpurple21859 View Post
what is output of
Code:
lsblk -o NAME,FSTYPE,UUID,PARTUUID,FSUSE%,MOUNTPOINT
nvme1n1

├─nvme1n1p1
│ ext4 ee766853-54f7-4bc2-8c39-c923c633de5f 7a8b3ac1-d5ba-40f8-8755-150d3222ca9f
├─nvme1n1p2
│ ext4 9f9e4e88-14ec-4326-99a0-e747bc672911 2d599038-036e-47bb-8bca-e11c064b2cac 3% /bak
└─nvme1n1p3
ext4 e32f346f-fec1-4a70-b0eb-093d1f51c67f 2176153d-daaa-4ce9-86ad-e6d5c4cc4e11
nvme0n1

├─nvme0n1p1
│ ext4 de742a0b-85f1-491b-bd5d-10cb8bda58d6 1e28072c-68ed-4ab8-afab-787c6d96407e 73% /
├─nvme0n1p2
│ ext4 469dcefe-5c00-42dd-83b3-ed5908eca91a 36c7156f-0ae0-4c43-b159-bd7ba5624b78 15% /data
└─nvme0n1p3
ext4 ec1220ce-04c4-4dfe-91a1-bf40d5d15716 c0ad8199-4a03-41e9-a7b6-41de375048c7 60% /home

This is all what I would expect when it boots to the correct root. When it doesn't I get a kernel panic rather than a shell so I don't know.
 
Old 11-14-2022, 05:29 AM   #8
colorpurple21859
LQ Veteran
 
Registered: Jan 2008
Location: florida panhandle
Distribution: Slackware Debian, Fedora, others
Posts: 7,346

Rep: Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589Reputation: 1589
Quote:
Thanks for the info. Is an initrd required? I've been using the huge kernel with no initrd. And if required, how do I ensure the initrd waits long enough?
]]
There is /etc/mkinitrd.conf
Code:
man mkinitrd.conf
man mkinitrd
Code:
sh /usr/share/mkinitrd/mkinitrd_command_generator.sh
will give a starting point of what modules are needed in the mkinitrd.conf

Last edited by colorpurple21859; 11-14-2022 at 05:33 AM.
 
Old 11-17-2022, 11:32 PM   #9
slackstu
LQ Newbie
 
Registered: Aug 2019
Posts: 13

Original Poster
Rep: Reputation: Disabled
Thanks to everyone who replied. I settled for the workaround, not really fix, of removing the second NVMe drive and using an external USB gen 2x2 drive instead. That setup is working fine.
 
  


Reply

Tags
boot, lilo, nvme



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Slackware 15 - NVME clone to external NVME - Boot problem from external NVME Klaus150 Slackware 35 10-16-2022 04:29 PM
LXer: Data in a Flash, Part II: Using NVMe Drives and Creating an NVMe over Fabrics Network LXer Syndicated Linux News 0 05-20-2019 11:41 PM
Migrate Linux/win10 dual boot from MBR nvme drive to a new GPT nvme drive bluemoo Linux - Software 7 09-25-2018 06:42 PM
how to make nvme (pci) raid. drives not recognised Grinkle Linux - Hardware 2 01-29-2016 04:39 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - Installation

All times are GMT -5. The time now is 02:24 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration