Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux? |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
|
07-07-2021, 09:08 PM
|
#1
|
Member
Registered: Aug 2003
Posts: 426
Rep:
|
nvme booting on legacy mobo?
i see a lot online about being able to boot from an nvme ssd on a legacy mobo by things like using a boot manager and/or moving boot elements around. i've not been able to get any of this to work as yet.
my system is a ga-x79-up4 mobo running ubuntu studio w/kde. system drive is a sata 2.5" ssd. i have a samsung ssd 980 nvme mounted on a pcie card as the mobo has no m.2 slots. it currently has a fresh manjaro install on it as a test. when i installed manjaro, i removed the main system drive (ubuntu studio) so as not to do anything bad to it. the manjaro install usb flash drive found the nvme drive and installed to it without issue, as near as i can tell. the ubuntu studio system is also able to see and use the nvme drive. i just can't boot from it.
when i reinsert my ubuntu studio drive and boot into ubuntu studio, i am able to run grub-mkconfig and it does find the nvme drive and insert it into the grub menu. when i reboot, however, while the grub menu does show manjaro, it does not boot, displaying a message that a kernel must be loaded first. i've tried every combination of uefi and legacy boot settings i can think of in the bios.
i can only guess that this is pointing to the full ubuntu system's ability to find and use the nvme drive but the boot system's inability. in other words, when the full system is up, there is enough resource, like drivers, to find and use the nvme but, during the boot process, when there are more meager resources available to the system, the nvme cannot be utilized.
admittedly, i know almost nothing about how all of this works but am seeing enough online about people successfully booting such a system to think that, if i can just find the right path to navigate a setup, i could get this to work on my system as well.
any help is much appreciated.
babag
(btw, i can't just upgrade right now as changing resources like a mobo would cascade into having to upgrade a lot of other components as well.)
Last edited by babag; 07-07-2021 at 09:14 PM.
|
|
|
07-07-2021, 11:26 PM
|
#2
|
LQ Guru
Registered: Aug 2016
Location: SE USA
Distribution: openSUSE 24/7; Debian, Knoppix, Mageia, Fedora, OS/2, others
Posts: 6,496
|
Quote:
Originally Posted by babag
system drive is a sata 2.5" ssd.
|
What precisely does this mean? How is it partitioned? Is any of your Manjaro installation using it?
Quote:
i have a samsung ssd 980 nvme mounted on a pcie card as the mobo has no m.2 slots.
|
Just because Manjaro or *buntu can find it doesn't mean they can boot from it. Without firmware (BIOS/UEFI) support, NVME is simply not bootable. To use NVME as a system drive, some legacy drive must be present from which to initiate boot.
|
|
|
07-08-2021, 02:10 AM
|
#3
|
Member
Registered: Jun 2020
Posts: 614
Rep: 
|
+1 to mrmazda's response - a lot of the stuff you mention seeing online likely relies on either a persistent USB device holding a bootloader or booting from a SATA disk as you've already tried (and using the NVMe device as additional storage, like putting /home on it or getting adventerous with symlinks). There would be no way to have *only* the NVMe device in that board and boot from it without BIOS/UEFI support, and I'm guessing that's not available for that specific board. I've read about modified BIOSes for X58-based boards to toy with NVMe, so perhaps such exists for X79 (which is newer), but I'd proceed very cautiously with modified firmware (well, any firmware flash really) because the potential to brick the hardware is real (even if everything is 'on the level' its still possible to get a bad flash (say, for example, you experience a power outage)), and then you're in that 'cascade replacement' situation.
Personally I would probably just integrate the NVMe device as additional storage - you can install applications and hold data on it all the same once the machine is booted, and I can't imagine there would be any significantly measurable difference in 'boot time' (such an awful metric) between the SATA SSD and the NVMe device.
|
|
|
07-08-2021, 01:28 PM
|
#4
|
Member
Registered: Aug 2003
Posts: 426
Original Poster
Rep:
|
thanks to you both for taking the time to try to help. much appreciated.
Quote:
Originally Posted by mrmazda
What precisely does this mean? How is it partitioned? Is any of your Manjaro installation using it?
|
CT1000BX500SSD1
https://www.newegg.com/crucial-bx500...82E16820156231
this drive only has ubuntu studio on it, as a self contained system, including my storage and /home. i normally run with only this drive in the system.
Quote:
To use NVME as a system drive, some legacy drive must be present from which to initiate boot.
|
yes. thanks. this is exactly what i'm trying to figure out how to do. you are correct that the info i've seen online involves using a legacy drive to initiate boot but i haven't been able to figure out how to do that. tried using the above drive as that legacy drive to boot and, while it does have the manjaro nvme in the grub boot options, it returns the error about needing to load the kernel first.
thanks again,
babag
Last edited by babag; 07-08-2021 at 01:31 PM.
|
|
|
07-08-2021, 02:27 PM
|
#5
|
LQ Guru
Registered: Aug 2016
Location: SE USA
Distribution: openSUSE 24/7; Debian, Knoppix, Mageia, Fedora, OS/2, others
Posts: 6,496
|
Quote:
Originally Posted by babag
this drive only has ubuntu studio on it, as a self contained system, including my storage and /home. i normally run with only this drive in the system.
|
That's not enough information. Please provide input/output from installed Ubuntu boot from:
Code:
sudo parted -l
cat /etc/default/grub
pastebinit /boot/grub/grub.cfg
Most likely you're going to need to do a little repartitioning of your SATA SSD before Manjaro on NVME can be started.
|
|
|
07-08-2021, 03:36 PM
|
#6
|
Member
Registered: Feb 2020
Location: Rantoul IL
Distribution: Slackware
Posts: 350
Rep: 
|
Quote:
i am able to run grub-mkconfig and it does find the nvme drive and insert it into the grub menu
|
That means Bios and your PCI are seen. Your PCI3 motherboard should handle this.
As far as.
If the device when partitioned. Right you partitoned it RIGHT! then you set it bootable right.
and output
Quote:
Disk /dev/nvme0n1: 953.87 GiB, 1024209543168 bytes, 2000409264 sectors
|
Then the command
output on mine again
Code:
/dev/nvme0n1p1: UUID="D7D2-C96F" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="bb6dc2f8-6a26-eb40-9a15-9cd8d0d218dc" <-- ufi partiton
/dev/nvme0n1p2: UUID="3f76a8a7-795c-42f3-b1ba-d273265c2e05" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="e4d9aca6-637b-f64c-b4e6-7eb468abc421 ext4 partition
you may want to open "gparted" and
and partion it and set a bootable partition. Then format it to your favorite files system.
Trust me ubuntu will see it wipe it and do what you want.
Quote:
installed manjaro, I removed the main system drive (ubuntu studio) so as not to do anything bad to it.
|
Well you may need that other drive and just add the the nvme to your grub manually.
Until you figure out whats going on in your boot configuration.
last but not least set to auto on legacy boot.
Last edited by lovemeslk; 07-08-2021 at 03:44 PM.
|
|
|
07-08-2021, 09:01 PM
|
#7
|
Senior Member
Registered: Aug 2016
Posts: 3,345
|
Reading your problem it seems clear the bios is not able to access the nvme device. Whether that is the card it is on or the nvme device itself, legacy bios was ancient when nvme devices were developed. I think you are stuck unless you can get a 3rd party bootloader that is able to load the drivers needed to access the nvme before it starts to load the OS.
|
|
|
07-08-2021, 09:07 PM
|
#8
|
Member
Registered: Aug 2007
Posts: 483
Rep: 
|
Quote:
To use NVME as a system drive, some legacy drive must be present from which to initiate boot.
yes. thanks. this is exactly what i'm trying to figure out how to do. you are correct that the info i've seen online involves using a legacy drive to initiate boot but i haven't been able to figure out how to do that. tried using the above drive as that legacy drive to boot and, while it does have the manjaro nvme in the grub boot options, it returns the error about needing to load the kernel first.
|
You need to put the Manjaro kernel and initramfs on the SATA SSD and create a manual grub entry for it. The / root partition will remain on the NVMe drive. The grub entry should refer to / on the NVMEe drive.
Quote:
the manjaro install usb flash drive found the nvme drive and installed to it without issue, as near as i can tell.
|
You already have a Manjaro installation on the NVMEe drive. Since you can't directly boot from it you need to copy the kernel and initramfs to the /boot partition on the SATA SSD and create the aforementioned grub entry which refers to / on the NVMEe drive. You may simply be able to use the UUID of the NVMe / partition. If the Manjaro kernel and initramfs succesfully scans all of the hardware at boot it will create a symlink for the UUID of /dev/nvme0n1p2. Alternatively you could just specify /dev/nvme0n1p2 as root in grub.cfg.
Last edited by tofino_surfer; 07-09-2021 at 10:20 PM.
|
|
|
07-08-2021, 10:39 PM
|
#9
|
Member
Registered: Aug 2003
Posts: 426
Original Poster
Rep:
|
wow. lot to chew over here but it all sounds promising. will take me a little time to absorb all of this. will post tomorrow with the various bits of info requested.
thank you all so much,
babag
|
|
|
07-09-2021, 01:27 PM
|
#10
|
Member
Registered: Aug 2003
Posts: 426
Original Poster
Rep:
|
would this work? can i try booting from a usb stick instead of from the ubuntu studio ssd? i'm a little nervous about modifying my working system drive and the things that i'm seeing here seem like they might be transferable to another bootable device that might be safer for my existing system. i'm thinking i'd have to copy the /boot dirctory from either the ubuntu studio drive or the manjaro drive to the stick and then follow the instructions i've been getting so far. now for the questions about those instructions.
@mrmazda, sudo fdisk -l = :
Code:
Disk /dev/nvme0n1: 931.53 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: Samsung SSD 980 1TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 16384 bytes / 131072 bytes
Disklabel type: gpt
Disk identifier: 6A1E0F35-7A7F-134C-B3D0-1ADDBACE5F7D
Device Start End Sectors Size Type
/dev/nvme0n1p1 4096 618495 614400 300M EFI System
/dev/nvme0n1p2 618496 1953520064 1952901569 931.2G Linux filesystem
Disk /dev/sda: 931.53 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: CT1000BX500SSD1
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: 0x857ec7fb
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 1050623 1048576 512M b W95 FAT32
/dev/sda2 1052670 1953523711 1952471042 931G 5 Extended
/dev/sda5 1052672 1953523711 1952471040 931G 83 Linux
cat /etc/default/grub =
Code:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT="0"
GRUB_TIMEOUT_STYLE="menu"
GRUB_TIMEOUT="5"
GRUB_DISTRIBUTOR="`lsb_release -i -s 2> /dev/null || echo Debian`"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL="console"
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE="640x480"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID="true"
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
pastebinit /boot/grub/grub.cfg =
Code:
https://paste.ubuntu.com/p/Pz9jdrXS6s/
Quote:
Most likely you're going to need to do a little repartitioning of your SATA SSD before Manjaro on NVME can be started.
|
this is why i'm wondering about trying a usb stick, so i don't do something stoopid to my main system. thanks.
@lovemeslk, sudo blkid /dev/nvme0n1p(1 and 2) =
Code:
/dev/nvme0n1p1: LABEL_FATBOOT="NO_LABEL" LABEL="NO_LABEL" UUID="EC2C-395E" TYPE="vfat" PARTUUID="846a2397-41ff-4c45-b384-7e54ce80f160"
/dev/nvme0n1p2: UUID="b1b3c6c8-08a0-45e8-8dd2-5ceab5ef5f07" TYPE="ext4" PARTUUID="9da67232-b573-284a-bd01-ae41d2815c33"
Quote:
Well you may need that other drive and just add the the nvme to your grub manually.
|
yes. hoping i can do this with usbstick instead of ubuntu studio drive. thanks.
@tofino_surfer, thanks.
Quote:
You need to put the Manjaro kernel and initramfs on the SATA SSD and create a manual grub entry for it. The / root partition will remain on the NVMe drive. The grub entry should refer to / on the NVMEe drive.
|
interesting and makes some sense to me as regards some of the things i've seen. where do i find the kernel and initramfs and where, exactly, do i copy them on the target drive? hopefully the info supplied above provides a reference as to where to make the grub entry and what it should say. thanks.
Quote:
... you need to copy the kernel and initramfs to the /boot partition on the SATA SSD ...
|
directly into the /boot directory i take it, not a subdirectory? thanks. hoping i can do this to the usbstick instead, assuming i've copied /boot and its subdirectories to the stick.
Quote:
... and create the aforementioned grub entry which refers to / on the NVMEe drive. You may simply be able to use the UUID of the NVMe / partition. If the Manjaro kernel and initramfs succesfully scans all of the hardware at boot it will create a symlink for the UUID of /dev/nvme0n1p2. Alternatively you could just specify /dev/nvme0n1p2 as root in grub.cfg.
|
thanks. this is getting to be a lot so i think i'll continue to chew on this and wait for responses. in the meantime, i'll try to copy /boot to the usb stick and search for where i find the kernel, what it's called, and initramfs.
thanks again to you all. you've given me cause for optimism!
babag
|
|
|
07-09-2021, 02:37 PM
|
#11
|
Member
Registered: Aug 2003
Posts: 426
Original Poster
Rep:
|
this might be relevant. i think i managed to copy /boot from the manjaro nvme drive onto a usb stick. here are a couple of bits of info regarding that:
sudo fdisk -l now includes this for the usb stick:
Code:
Disk /dev/sdb: 3.86 GiB, 4126146560 bytes, 8058880 sectors
Disk model: USB Flash Memory
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: 0x54455544
Device Boot Start End Sectors Size Id Type
/dev/sdb1 * 2048 8046591 8044544 3.9G c W95 FAT32 (LBA)
and pastebinit /media/babag/BOOTLINUX/boot/grub/grub.cfg =
Code:
https://paste.ubuntu.com/p/H54H7Gcbsj/
that should be the grub.cfg from the usb stick.
trying a reboot with just the usb stick and manjaro nvme drive in the system brings up an error that the media is not bootable.
thanks!
Last edited by babag; 07-09-2021 at 02:42 PM.
|
|
|
07-09-2021, 03:03 PM
|
#12
|
Member
Registered: Aug 2007
Posts: 483
Rep: 
|
Quote:
would this work? can i try booting from a usb stick instead of from the ubuntu studio ssd?
|
If you are talking about a live distro then it would not work at all as they have a temporary in memory filesystem that is wiped out when the machine is rebooted. Anything you copy to the /boot directory and any changes you make to the grub.cfg would be erased when the machine is rebooted when you tried to boot into Manjaro.
If you wanted to use a usb stick you would have to install a linux distro onto a usb stick the same way you would install Linux to a SSD or HDD as it's just a block device. A Linux installation on a usb stick would have a permanent filesystem that you could modify.
You would need a second empty usb stick and then install Linux to it possibly using your existing live usb.
|
|
|
07-09-2021, 03:18 PM
|
#13
|
Member
Registered: Aug 2003
Posts: 426
Original Poster
Rep:
|
thanks, tofino_surfer. i don't quite follow this and am afraid i may have been unclear in my descriptions of what i'm trying to do with the usb stick.
people make reference to 'initiating the boot process' in regard to usb booting. the idea would be to have, at least for now, just two devices in the system: the manjaro nvme, which the mobo cannot boot from, and a usb stick, which the mobo should be able to boot from, to initiate the boot process and call up the nvme. since the nvme cannot boot, i would hope to copy the manjaro /boot directory to the usb stick. my system is capable of booting from a usb stick as that's how i installed manjaro in the first place. the only thing on the usb stick currently is the /boot directory. if i've read things correctly, i need that /boot directory, the manjaro kernel, and initramfs. here is ls:
Code:
ls /media/babag/BOOTLINUX/boot/
efi grub initramfs-5.10-x86_64-fallback.img initramfs-5.10-x86_64.img intel-ucode.img linux510-x86_64.kver memtest86+ vmlinuz-5.10-x86_64
is this not correct? i'm thinking i also need to make a change(s) to grub.cfg. i've not done that yet. don't know what to do.
thanks,
babag
Last edited by babag; 07-09-2021 at 03:23 PM.
|
|
|
07-09-2021, 03:56 PM
|
#14
|
Member
Registered: Aug 2007
Posts: 483
Rep: 
|
Quote:
people make reference to 'initiating the boot process' in regard to usb booting. the idea would be to have, at least for now, just two devices in the system: the manjaro nvme, which the mobo cannot boot from, and a usb stick, which the mobo should be able to boot from, to initiate the boot process and call up the nvme.
|
In order to be able to boot from a usb stick it needs to have a bootloader installed on it such as grub. If you just copy boot files onto an empty FAT usb stick this will not be bootable as you have found out.
It is possible to make a dedicated grub boot usb stick. There are many webpages that describe this procedure. However the simplest way as I described in my post is to create a lightweight Linux installation on a blank usb stick. The installer will install grub and make the stick bootable.
|
|
|
07-09-2021, 05:37 PM
|
#15
|
LQ Guru
Registered: Aug 2016
Location: SE USA
Distribution: openSUSE 24/7; Debian, Knoppix, Mageia, Fedora, OS/2, others
Posts: 6,496
|
Quote:
Originally Posted by babag
Code:
> sudo fdisk -l
Disk /dev/nvme0n1: 931.53 GiB, 1000204886016 bytes, 1953525168 sectors
...
Disklabel type: gpt
...
Device Start End Sectors Size Type
/dev/nvme0n1p1 4096 618495 614400 300M EFI System
/dev/nvme0n1p2 618496 1953520064 1952901569 931.2G Linux filesystem
|
The presence of the ESP partition overwhelmingly implies Manjaro has been installed in UEFI mode. Thus, to boot Manjaro: - whatever filesystem you put its /boot/ files on will have to be accessible to and for a bootloader
- An ESP partition must be available elsewhere than on the NVME device
- The PC needs to be booted in UEFI mode
- The Manjaro entry on the non-NVME ESP must be registered in NVRAM
IIRC, and my own internal RAM could be wrong about this, the disk containing the ESP to be used for booting Manjaro must be GPT partitioned. IOW, I think the definition of an ESP necessitates GPT. So, you need a GPT stick with an ESP, and a partition for its /boot/ files, to be able to jumpstart Manjaro from the NVME. Jumpstarting from your main SSD would require it be wiped and partitioned GPT.
|
|
|
All times are GMT -5. The time now is 04:42 AM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|