LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 08-06-2016, 12:03 AM   #1
jkaidor
Member
 
Registered: Jun 2008
Location: SF Peninsula
Distribution: slackware
Posts: 33

Rep: Reputation: 23
Boot Slackware on NVME SSD?


Hello,

I celebrated the release of 14.2 by building a new PC to run it. It's a mini-ITX board with a Xeon E3-1241, 32G of ECC RAM and a 512G Samsung 950PRO M2 SSD. This last is giving me heartburn.

The complete Slackware install happens, but then Lilo refuses to install itself. It complains that it can't handle the SSD device.

Somebody else asked similar:
https://www.linuxquestions.org/quest...ks-4175567831/

It looks like it ain't gonna work. Anybody know a workaround? Use
Slackware with a different bootloader? I downloaded the Lilo source and found the spot where it complains.... I suppose I could try adding that particular major # (259 ) to the "approved" list in geometry.c.

If all else fails, I could boot Slackware off a memory stick, and tell it to use the root directory on the fast SSD. Ick.

Thoughts? These NVME SSDs are only going to get more & more popular.
They're a bit pricy now, but they will come down... And they're over 3 times as fast as SATA SSDs.

- Jerryk
 
Old 08-06-2016, 04:33 AM   #2
kjhambrick
Senior Member
 
Registered: Jul 2005
Location: Round Rock, TX
Distribution: Slackware64 15.0 + Multilib
Posts: 2,159

Rep: Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512
jkaidor --

I agree about the NVMe devices -- they're already here !

I've got a pair of the 500GB Samsung 950 Pros in my Laptop as secondary drives where they work VERY well ( speed wise ).

As for booting Slackware from an NVMe ...

1. This guy:

https://rlaanemets.com/post/show/computer-upgrade

was able to boot an NVMe using syslinux installed in /boot/ on his 'old drive' ...

No direct help there but he does show how he used syslinux to 'auto-boot' Slackware installed in /root/ on the NVMe.

IOW, you should be able to boot into your new NVMe from a small USB Disk with syslinux to get things going.

2. And here's a question on the Arch Forum where booting directly via the EFI Shell is mentioned for a Non-Dual-Boot System:

https://bbs.archlinux.org/viewtopic.php?id=209653

Then, after you're up and running ...

3. This Stack Exchange post:

http://unix.stackexchange.com/questi...alling-debiavn

has a solution for Debian + grub-efi-amd64 and was adapted from this Debian Wiki Article ( #4 ) :

https://wiki.debian.org/InstallingDe...CIe_SSD/jessie

Maybe #1 or #2 will get you going where you could explore #3 and #4 ?

I am not sure what's contained in grub-efi-amd64.deb nor how entangled it may be with systemd but that is left as an 'exercise for the reader'

HTH, at least a little bit, I am still trying unlearn my old 1980 IBM-PC BIOS Habits and to wrap my old-fart brain-cells around all the new HW / SW tech

-- kjh

Last edited by kjhambrick; 08-06-2016 at 04:34 AM. Reason: typo
 
Old 08-06-2016, 10:27 AM   #3
jkaidor
Member
 
Registered: Jun 2008
Location: SF Peninsula
Distribution: slackware
Posts: 33

Original Poster
Rep: Reputation: 23
This worked:
https://rlaanemets.com/post/show/computer-upgrade
The syslinux instructions are near the bottom of the page.

After getting dumped into a root command line after setup...

I created a text file /boot/extlinux.conf:
-------- snip -----------
DEFAULT linux
SAY Now booting the kernel from SYSLINUX
LABEL linux
KERNEL vmlinuz
APPEND ro root=/dev/nvme0n1p1
-------- endsnip ------

And ran extlinux --install /boot

And then did a magic dd to get the generic syslinux code into the mbr:

cd /usr/share/syslinux
dd bs=440 conv=notrunc if=mbr.bin of=/dev/nvme0n1

...and then rebooted, and it Just Worked. Yay!

I still have a *lot* of work to do. I have been refining my server
for many years, and everything will need to be ported to this new machine.

Newer, higher tech makes this server simpler than the old one. I used to do all sorts of tricks with
multiple disks and partitions to make things faster. /home on a different device than /bin,/usr/bin etc. None of that is necessary with an SSD.
Just one big partition for everything. Except for a swap partition, which I am including out of an abundance of caution, although I do not
anticipate running out of physical RAM with 32G.

- Jerryk

Last edited by jkaidor; 08-07-2016 at 07:29 AM.
 
2 members found this post helpful.
Old 08-06-2016, 10:41 AM   #4
slalik
Member
 
Registered: Nov 2014
Location: Moscow
Distribution: Slackware
Posts: 233

Rep: Reputation: 203Reputation: 203Reputation: 203
I use 14.2 booted from NVMe disk, Samsung 950 in a Lenovo notebook and an Intel disk in a desktop computer (self-assembled).

I use UEFI and elilo. There is a minor problem with the installer that simply doesn't search for a EFI partition on an NVMe disk. I wrote how I worked around this problem here.
 
2 members found this post helpful.
Old 08-07-2016, 01:23 AM   #5
trxdraxon
Member
 
Registered: Jan 2006
Location: Command Line
Distribution: Slackware
Posts: 75
Blog Entries: 1

Rep: Reputation: Disabled
Quote:
Originally Posted by jkaidor View Post
This worked:
https://rlaanemets.com/post/show/computer-upgrade
The syslinux instructions are near the bottom of the page.

After getting dumped into a root command line after setup...

I created a text file /boot/syslinux.conf:
-------- snip -----------
DEFAULT linux
SAY Now booting the kernel from SYSLINUX
LABEL linux
KERNEL vmlinuz
APPEND ro root=/dev/nvme0n1p1
-------- endsnip ------

And ran extlinux --install /boot

And then did a magic dd to get the generic syslinux code into the mbr:

cd /usr/share/syslinux
dd bs=440 conv=notrunc if=mbr.bin of=/dev/nvme0n1

...and then rebooted, and it Just Worked. Yay!

I still have a *lot* of work to do. I have been refining my server
for many years, and everything will need to be ported to this new machine.

Newer, higher tech makes this server simpler than the old one. I used to do all sorts of tricks with
multiple disks and partitions to make things faster. /home on a different device than /bin,/usr/bin etc. None of that is necessary with an SSD.
Just one big partition for everything. Except for a swap partition, which I am including out of an abundance of caution, although I do not
anticipate running out of physical RAM with 32G.

- Jerryk

Thank you for this. I too just built myself a new machine with a NVME SSD and had the same issue and your post worked like a charm except that your syslinux.conf should be extlinux.conf. Just got Slackware installed and running updates and installing everything I need.
 
1 members found this post helpful.
Old 08-07-2016, 02:07 AM   #6
Wiser Slacker
Member
 
Registered: May 2014
Location: germany
Distribution: slackware x86_64 , arm , slackware , AlmaLinux
Posts: 83

Rep: Reputation: Disabled
i did my install by PXE boot from an raspberrry pi ... lol

have had no problems so far ...
 
1 members found this post helpful.
Old 08-07-2016, 07:31 AM   #7
jkaidor
Member
 
Registered: Jun 2008
Location: SF Peninsula
Distribution: slackware
Posts: 33

Original Poster
Rep: Reputation: 23
Quote:
Originally Posted by trxdraxon View Post
Thank you for this. I too just built myself a new machine with a NVME SSD and had the same issue and your post worked like a charm except that your syslinux.conf should be extlinux.conf.
*** Ooops. You're welcome. I just changed it to extlinux.conf.

- Jerry
 
1 members found this post helpful.
Old 08-07-2016, 08:56 AM   #8
kjhambrick
Senior Member
 
Registered: Jul 2005
Location: Round Rock, TX
Distribution: Slackware64 15.0 + Multilib
Posts: 2,159

Rep: Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512
Thanks all !

When I received this new laptop, Sager had installed Win10 on one of the NVMe Cards -- it worked well and was Pretty-Dang-Quick.

I hit a wall trying to install to the other NVMe Card, chickened out and installed SlackWare64 Current on one of the Samsung 850 Pro SSDs instead and set up the pair of NVMe Disks as 'secondary'.

I now see three ways that I could have booted Slackware Current from an NVMe Card ( syslinux ala jkaidor or elilo ala slalik or PXE boot ala Wiser Slacker ).

Thanks again !

This Thread is a 'keeper'

-- kjh

Last edited by kjhambrick; 08-07-2016 at 09:44 AM. Reason: three ways, not two !
 
Old 08-07-2016, 09:47 AM   #9
kjhambrick
Senior Member
 
Registered: Jul 2005
Location: Round Rock, TX
Distribution: Slackware64 15.0 + Multilib
Posts: 2,159

Rep: Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512
jkaidor --

If you consider your NVMe Install issue solved, it may help other users if you mark the Thread as SOLVED.

I usually start my LQ searches for fixes with 'Threads Marked SOLVED' and I'll bet that others do too.

Thanks !

-- kjh
 
Old 08-07-2016, 08:48 PM   #10
jkaidor
Member
 
Registered: Jun 2008
Location: SF Peninsula
Distribution: slackware
Posts: 33

Original Poster
Rep: Reputation: 23
Quote:
Originally Posted by kjhambrick View Post
jkaidor --

If you consider your NVMe Install issue solved, it may help other users if you mark the Thread as SOLVED.
*** I have so marked it. - Jerry
 
1 members found this post helpful.
Old 08-08-2016, 09:40 PM   #11
Wiser Slacker
Member
 
Registered: May 2014
Location: germany
Distribution: slackware x86_64 , arm , slackware , AlmaLinux
Posts: 83

Rep: Reputation: Disabled
maybe it helps ...

Hi,

if you want to boot lilo to an nvme - where the other devices are changed, may be you put in some more sata drives - i did it this way:

My Problem had been that the device order did change when i put in another hd ...

1. i do install lilo into the mbr of that disk i want to boot from ...

2. give the boot statement by the line below to lilo.conf
boot = /dev/disk/by-id/ata-PLEXTOR_PX-G256M6e_Pxxxxxxxxx

3. than you should use the following statement to tell the kernel where the root disk is
Code:
   lilo.conf
   # Linux bootable partition on SSD2
   image = /boot/vmlinuz
     addappend = " root=PARTUUID=abcdefgh-02"     # here second partition
     label = Slack14
     read-only
   # Linux bootable partition SSD2 ends
blkid should give you the right "PARTUUID"

4. you should use the form of LABEL= or maybe /dev/disk/by-xxxxyyyyyzzzzz in fstab

5. tell the bios witch device you want to start from


now you are total free from any device order the bios tell to your booting os (here slackware )
as i said before - the initial booting could be done by any device (maybe pxe as i do) witch is able to start the installer

all needed tools are already in the slackware installer

greetings
W.Slacker
 
1 members found this post helpful.
Old 08-09-2016, 06:39 AM   #12
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
Quote:
Originally Posted by Wiser Slacker View Post
Code:
     addappend = " root=PARTUUID=abcdefgh-02"     # here second partition
Just so you know, you don't need to have it as an addappend. You can just use:

Code:
root = "PARTUUID=abcdefgh-02"
EDIT: Based on Wiser Slacker's post below, this may not be true for PARTUUID=, however, it will work if using UUID= or LABEL=.

Last edited by bassmadrigal; 08-09-2016 at 10:23 AM.
 
1 members found this post helpful.
Old 08-09-2016, 09:51 AM   #13
Wiser Slacker
Member
 
Registered: May 2014
Location: germany
Distribution: slackware x86_64 , arm , slackware , AlmaLinux
Posts: 83

Rep: Reputation: Disabled
i have written:
Quote:
# root = "PARTUUID=abcdefgh-02" # Illegal 'root=' specification
into my lilo.conf - i think it didn't work - i have tried many combinations ...

to make it clear DON't use the
Quote:
root =
outside of the kernel line !!
the results are different !
and they may not do what you want or think off !!

Last edited by Wiser Slacker; 08-10-2016 at 11:40 AM.
 
1 members found this post helpful.
Old 08-09-2016, 10:20 AM   #14
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
Quote:
Originally Posted by Wiser Slacker View Post
i have written:


into my lilo.conf - i think it didn't work - i have tried many combinations ...
Huh, maybe it doesn't support PARTUUID=. I do know it supports LABEL= and UUID= (I'm using the UUID variant on my lilo.conf), so I guess I wrongly assumed it would support PARTUUID=.
 
Old 08-09-2016, 10:53 AM   #15
Wiser Slacker
Member
 
Registered: May 2014
Location: germany
Distribution: slackware x86_64 , arm , slackware , AlmaLinux
Posts: 83

Rep: Reputation: Disabled
i have had a look into kernelsource ...

/usr/src/linux/init/do_mounts.c

so with this option, i told here before, you don't need any initrd, the needed "device tree" was created by the kernel itself and LILO don't need to interpret any UUID's - the PARTUID is found by the kernel while booting and could be found in any disk partition table - ok. i just try "table msdos" yet ...

while lilo did write something like 0810 or 0820 into the kernels head before, for finding its partitions, it don't have to write these infos into the kernel now, but the kernel get its info from command line ....

and as i said - lilo seemed not to want your root option ... ok. you know ..

to keep it clear -
if you tell lilo-instaler to "interpret" what it should write into the boot loader it did that by following the /disk-by/ ... way and found the device ID - that could be wrong (after reboot) if you change any disks in your pc - so the kernel later can't find its root partition !

these are the most misinterpreted problems while booting any os's - the internet is full of those people who can't get its machines to boot ... mostly with windooofs

Last edited by Wiser Slacker; 08-09-2016 at 11:16 AM.
 
1 members found this post helpful.
  


Reply



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
Slackware -current 14.2 beta 2 nvme installation issues. Linux.tar.gz Slackware 6 02-13-2017 06:52 PM
How to Mount /dev/nvme0n1 /folder in arch linux on NVMe ssd? Raoulsch Linux - Newbie 7 02-07-2016 10:13 AM
[SOLVED] Slackware and dual boot with Windows on SSD with GPT partitioning: issue with GRUB scorpion77 Slackware 13 12-16-2015 11:46 AM
PCIe SSD uses AHCI or NVMe or both? ravish165 Linux - Hardware 5 04-23-2015 04:53 AM
Slackware on an SSD Jeebizz Slackware 59 07-21-2012 06:10 AM

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

All times are GMT -5. The time now is 01:48 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