Discussion:
Slackware install hangs
(too old to reply)
John Forkosh
2023-07-09 04:17:26 UTC
Permalink
I'm having precisely the same problem described at

https://www.linuxquestions.org/questions/slackware-installation-40/howto-prevent-installation-hangs-on-recent-hardware-4175671086/

but am having a bit of trouble understanding the suggested solution.
Firstly, I already create a bootable slackware install usb stick
with the usual
./usbimg2disk.sh -f -s /path/to/slackware64-current -o /dev/sdX
as per their step 1. As for mounting that stick as per their step 2,
I'm seeing three partitions on that /dev/sdX, with EFI/ and boot/
directories on /dev/sdX2, and the slackware install stuff apparently
on /dev/sdX3.

But then their step4,
Copy recursively (USBSLACKINS)/slackware64-current/EFI to (USBSLACKINS)/
is making no sense to me. Firstly, the source starts with (USBSLACKINS)/,
which says to me you're copying from another EFI directory already on
the usb stick, presumably from /dev/sdX3/???/EFI/ back to /dev/sdX2/EFI/.
But I'm not seeing any such EFI/ on /dev/sdX3.

So I'd guess they really meant slackware64-current/EFI without that
leading (USBSLACKINS)/, i.e., the EFI/ originally downloaded from
http://mirrors.kernel.org/slackware/slackware64-current/
Okay, but that EFI/BOOT/ contains.....
1187840 Jun 15 2021 bootx64.efi
78 Sep 23 2013 grub-embedded.cfg
893 Apr 17 2018 grub.cfg
12079904 Jul 5 16:30 huge.s
45914424 Jul 5 16:59 initrd.img
2504 Jul 5 2019 make-grub.sh
10722 Sep 21 2013 osdetect.cfg
1273 Aug 12 2013 tools.cfg
whereas my usb stick's EFI/BOOT/ contains.....
1024 Jul 7 00:09 Africa
1024 Jul 7 00:09 America
1024 Jul 7 00:09 Asia
1024 Jul 7 00:09 Atlantic
1024 Jul 7 00:09 Australia
1024 Jul 7 00:09 Etc
1024 Jul 7 00:09 Europe
1024 Jul 7 00:09 Pacific
0 Jul 7 00:09 SLACKWARELIVE
1024 Jul 7 00:09 US
1273856 Jul 7 00:09 bootx64.efi
61 Jul 7 00:09 grub-embedded.cfg
1964 Jul 7 00:09 grub.cfg
233 Jul 7 00:09 grub_sbat.csv
5549 Jul 6 22:28 help.txt
2954 Jul 7 00:09 kbd.cfg
2544 Jul 7 00:09 lang.cfg
3581 Jul 6 22:28 make-grub.sh
1024 Jul 7 00:09 theme
4499 Jul 7 00:09 tz.cfg
So I'm a bit skeptical about replacing it as per the instructions.

Likewise, as per step 5, the grub.cfg file currently on the usb stick
is vastly different than the one from slackware64-current.
So I'm getting more skeptical all the time.

Is anybody else here (reading this) experiencing this same problem
trying to install slackware from the usb boot sick created with
usbimg2disk.sh? And then, what's the right solution (and when will
P.V. hopefully fix it in the distribution)? And by the way, for
the time being I just created a slacklive usb stick, which booted up
fine, and then clicked the "Install Slackware" button in the
upper-left corner of its kde screen.
--
John Forkosh ( mailto: ***@f.com where j=john and f=forkosh )
Henrik Carlqvist
2023-07-09 08:44:05 UTC
Permalink
Post by John Forkosh
which says to me you're copying from another EFI directory already on
the usb stick, presumably from /dev/sdX3/???/EFI/ back to
/dev/sdX2/EFI/.
But I'm not seeing any such EFI/ on /dev/sdX3.
Before you can do step 4, you will need to make step 2. There is no such
thing as /dev/sdX3/directory. You will need to mount a file system before
you can access its directory tree. You should probably not mount it as
"USBSLACKINS" but rather at a place like /mnt/hd, or if you prefer point
and click some place like /run/media/USBSLACKINS.
Post by John Forkosh
So I'd guess they really meant slackware64-current/EFI without that
leading (USBSLACKINS)/, i.e., the EFI/ originally downloaded from
http://mirrors.kernel.org/slackware/slackware64-current/
What you have downloaded will be placed on the USB stick by followin step
1.
Post by John Forkosh
Okay, but that EFI/BOOT/ contains.....
1187840 Jun 15 2021 bootx64.efi
78 Sep 23 2013 grub-embedded.cfg
893 Apr 17 2018 grub.cfg
12079904 Jul 5 16:30 huge.s 45914424 Jul 5 16:59 initrd.img
2504 Jul 5 2019 make-grub.sh
10722 Sep 21 2013 osdetect.cfg
1273 Aug 12 2013 tools.cfg
whereas my usb stick's EFI/BOOT/ contains.....
1024 Jul 7 00:09 Africa 1024 Jul 7 00:09 America 1024 Jul 7
00:09 Asia 1024 Jul 7 00:09 Atlantic 1024 Jul 7 00:09 Australia
1024 Jul 7 00:09 Etc 1024 Jul 7 00:09 Europe 1024 Jul 7 00:09
Pacific
0 Jul 7 00:09 SLACKWARELIVE
1024 Jul 7 00:09 US
1273856 Jul 7 00:09 bootx64.efi
61 Jul 7 00:09 grub-embedded.cfg
1964 Jul 7 00:09 grub.cfg
233 Jul 7 00:09 grub_sbat.csv
5549 Jul 6 22:28 help.txt 2954 Jul 7 00:09 kbd.cfg 2544 Jul 7
00:09 lang.cfg 3581 Jul 6 22:28 make-grub.sh 1024 Jul 7 00:09
theme 4499 Jul 7 00:09 tz.cfg
So I'm a bit skeptical about replacing it as per the instructions.
I have never booted slackware installation from USB stick, I use optical
media instead. So I can't say for sure how useful those instructions are.

However, those instructions were posted 2020 and describes how to deal
with stable version 15.0 of Slackware.
Post by John Forkosh
Likewise, as per step 5, the grub.cfg file currently on the usb stick is
vastly different than the one from slackware64-current.
So I'm getting more skeptical all the time.
As you now are playing around with the current development version of
Slackware which not yet has reached beta status (release candidate) you
might encounter different bugs and lack of up-to-date documentation.

regards Henrik
John Forkosh
2023-07-10 03:27:50 UTC
Permalink
Post by Henrik Carlqvist
Post by John Forkosh
which says to me you're copying from another EFI directory already on
the usb stick, presumably from /dev/sdX3/???/EFI/ back to
/dev/sdX2/EFI/.
But I'm not seeing any such EFI/ on /dev/sdX3.
Before you can do step 4, you will need to make step 2. There is no such
thing as /dev/sdX3/directory. You will need to mount a file system before
you can access its directory tree. You should probably not mount it as
"USBSLACKINS" but rather at a place like /mnt/hd, or if you prefer point
and click some place like /run/media/USBSLACKINS.
Post by John Forkosh
So I'd guess they really meant slackware64-current/EFI without that
leading (USBSLACKINS)/, i.e., the EFI/ originally downloaded from
http://mirrors.kernel.org/slackware/slackware64-current/
What you have downloaded will be placed on the USB stick by followin step
1.
Post by John Forkosh
Okay, but that EFI/BOOT/ contains.....
1187840 Jun 15 2021 bootx64.efi
78 Sep 23 2013 grub-embedded.cfg
893 Apr 17 2018 grub.cfg
12079904 Jul 5 16:30 huge.s 45914424 Jul 5 16:59 initrd.img
2504 Jul 5 2019 make-grub.sh
10722 Sep 21 2013 osdetect.cfg
1273 Aug 12 2013 tools.cfg
whereas my usb stick's EFI/BOOT/ contains.....
1024 Jul 7 00:09 Africa 1024 Jul 7 00:09 America 1024 Jul 7
00:09 Asia 1024 Jul 7 00:09 Atlantic 1024 Jul 7 00:09 Australia
1024 Jul 7 00:09 Etc 1024 Jul 7 00:09 Europe 1024 Jul 7 00:09
Pacific
0 Jul 7 00:09 SLACKWARELIVE
1024 Jul 7 00:09 US
1273856 Jul 7 00:09 bootx64.efi
61 Jul 7 00:09 grub-embedded.cfg
1964 Jul 7 00:09 grub.cfg
233 Jul 7 00:09 grub_sbat.csv
5549 Jul 6 22:28 help.txt 2954 Jul 7 00:09 kbd.cfg 2544 Jul 7
00:09 lang.cfg 3581 Jul 6 22:28 make-grub.sh 1024 Jul 7 00:09
theme 4499 Jul 7 00:09 tz.cfg
So I'm a bit skeptical about replacing it as per the instructions.
I have never booted slackware installation from USB stick, I use optical
media instead. So I can't say for sure how useful those instructions are.
However, those instructions were posted 2020 and describes how to deal
with stable version 15.0 of Slackware.
Post by John Forkosh
Likewise, as per step 5, the grub.cfg file currently on the usb stick is
vastly different than the one from slackware64-current.
So I'm getting more skeptical all the time.
As you now are playing around with the current development version of
Slackware which not yet has reached beta status (release candidate) you
might encounter different bugs and lack of up-to-date documentation.
regards Henrik
Thanks a lot, Henrik. As replied to Rich, most of my problems
were due to interpreting those instructions with respect to
the contents of the slacklive usb stick, rather than the
full-but-not-live install stick. My bad.
But, re your current-vs-stable remark immediately above,
the intructions also mention, right at the top,
"The reason: Some newer generation on-board graphics systems
use 64-bit addressing for the efifb. Slackware uses elilo as the
default boot system. Elilo is not compliant with 64-bit efifb."
And the computer I'm installing slackware on is
https://www.aliexpress.us/item/2255800975951409.html
which has Intel Iris Xe Graphics G7, which would seem to exhibit
that problem. So I don't think stable would work any better,
though I guess the only way to know for sure would be to
download and try it. Somewhat of a pain-in-the-elbow, but
if nothing else works, I'll eventually give it a try (and owe
you a "free beer" or two if that actually works:).
--
John Forkosh ( mailto: ***@f.com where j=john and f=forkosh )
Rich
2023-07-09 16:29:28 UTC
Permalink
Post by John Forkosh
I'm having precisely the same problem described at
https://www.linuxquestions.org/questions/slackware-installation-40/howto-prevent-installation-hangs-on-recent-hardware-4175671086/
but am having a bit of trouble understanding the suggested solution.
Firstly, I already create a bootable slackware install usb stick
with the usual
./usbimg2disk.sh -f -s /path/to/slackware64-current -o /dev/sdX
as per their step 1. As for mounting that stick as per their step 2,
I'm seeing three partitions on that /dev/sdX, with EFI/ and boot/
directories on /dev/sdX2, and the slackware install stuff apparently
on /dev/sdX3.
But then their step4,
Copy recursively (USBSLACKINS)/slackware64-current/EFI to (USBSLACKINS)/
is making no sense to me. Firstly, the source starts with (USBSLACKINS)/,
which says to me you're copying from another EFI directory already on
the usb stick, presumably from /dev/sdX3/???/EFI/ back to /dev/sdX2/EFI/.
But I'm not seeing any such EFI/ on /dev/sdX3.
You skipped over step 3....

Step 2, while cryptic, appears to be saying: "mount the newly made
install drive from step 1 somewhere" Lets say you mount it at /mnt/z

Then step 3 is saying: "remove (or rename)" the existing /EFI
directory, on the newly mounted USB install disk, so you would do one
of:

rm -rf /mnt/z/EFI
or
mv /mnt/z/EFI /mnt/z/EFI.original

Note everything is on /mnt/z above (the stand-in for "where you mounted
the USB stick).

And then you'd do step 4, which is saying to do this (assuming your USB
stick were mounted at /mnt/z:

cp -r /mnt/z/slackware64-current/EFI /mnt/z/

I.e., copy everyting under "slackware64-current/EFI" on the USB stick
(/mnt/z) to the root directory **of the USB stick** (that last bit is
important). You are copying to and from the USB stick, not your main
system upon which the stick is mounted.

Then you go and do the indicated edits -- **on the USB stick**
(/mnt/z).
John Forkosh
2023-07-10 03:06:23 UTC
Permalink
Post by Rich
Post by John Forkosh
I'm having precisely the same problem described at
https://www.linuxquestions.org/questions/slackware-installation-40/howto-prevent-installation-hangs-on-recent-hardware-4175671086/
but am having a bit of trouble understanding the suggested solution.
Firstly, I already create a bootable slackware install usb stick
with the usual
./usbimg2disk.sh -f -s /path/to/slackware64-current -o /dev/sdX
as per their step 1. As for mounting that stick as per their step 2,
I'm seeing three partitions on that /dev/sdX, with EFI/ and boot/
directories on /dev/sdX2, and the slackware install stuff apparently
on /dev/sdX3.
But then their step4,
Copy recursively (USBSLACKINS)/slackware64-current/EFI to (USBSLACKINS)/
is making no sense to me. Firstly, the source starts with (USBSLACKINS)/,
which says to me you're copying from another EFI directory already on
the usb stick, presumably from /dev/sdX3/???/EFI/ back to /dev/sdX2/EFI/.
But I'm not seeing any such EFI/ on /dev/sdX3.
You skipped over step 3....
Step 2, while cryptic, appears to be saying: "mount the newly made
install drive from step 1 somewhere" Lets say you mount it at /mnt/z
Then step 3 is saying: "remove (or rename)" the existing /EFI
directory, on the newly mounted USB install disk, so you would do one
rm -rf /mnt/z/EFI
or
mv /mnt/z/EFI /mnt/z/EFI.original
Note everything is on /mnt/z above (the stand-in for "where you mounted
the USB stick).
And then you'd do step 4, which is saying to do this (assuming your USB
cp -r /mnt/z/slackware64-current/EFI /mnt/z/
I.e., copy everyting under "slackware64-current/EFI" on the USB stick
(/mnt/z) to the root directory **of the USB stick** (that last bit is
important). You are copying to and from the USB stick, not your main
system upon which the stick is mounted.
Then you go and do the indicated edits -- **on the USB stick**
(/mnt/z).
Thanks a lot, Rich. Clarifies my problem, but some confusion remains.
Firstly, I made an absentminded-cum-dumb mistake in the original post.
As mentioned, I eventually installed slack from a slacklive usb stick.
But then, that's the stick whose ls -al EFI/BOOT/ directory I listed,
whereas, obviously, I should've been listing the not-live (so to speak)
stick's contents.
Okay, so now that I've finally mount'ed the correct stick,
it only has a single /dev/sdX1 partition, whose entire /mnt/sdX1/
root directory contents are, fyi,
drwxr-xr-x 8192 Jul 7 05:52 EFI
drwxr-xr-x 8192 Jul 7 21:12 System\ Volume\ Information
-rwxr-xr-x 574 Jul 7 05:52 f2.txt
-rwxr-xr-x 12079904 Jul 7 05:52 huge.s
-rwxr-xr-x 45914424 Jul 7 05:52 initrd.img
-r-xr-xr-x 37888 Jul 7 06:05 ldlinux.sys
-rwxr-xr-x 150024 Jul 7 05:52 memtest
-rwxr-xr-x 682 Jul 7 05:52 message.txt
-rwxr-xr-x 2879 Jul 7 05:52 setpkg
drwxr-xr-x 8192 Jul 6 17:26 slackware64-current-06Jul2023
-rwxr-xr-x 510 Jul 7 05:52 syslinux.cfg

And then, /mnt/sdX1/EFI/ only has a BOOT/ subdirectory, as expected,
and that /mnt/sdX1/EFI/BOOT/ subdirectory only contains the three files
-rwxr-xr-x 238531 Jul 7 05:52 BOOTX64.EFI
-rwxr-xr-x 422 Jul 7 05:52 elilo.conf
-rwxr-xr-x 561 Jul 7 05:52 message.txt

whereas /mnt/sdX1/slackware64-current-06Jul2023/EFI/BOOT/ contains
-rwxr-xr-x 1187840 Jun 15 2021 bootx64.efi
-rwxr-xr-x 78 Sep 23 2013 grub-embedded.cfg
-rwxr-xr-x 893 Apr 17 2018 grub.cfg
-rwxr-xr-x 12079904 Jul 5 16:30 huge.s
-rwxr-xr-x 45914424 Jul 5 16:59 initrd.img
-rwxr-xr-x 2504 Jul 5 2019 make-grub.sh
-rwxr-xr-x 10722 Sep 21 2013 osdetect.cfg
-rwxr-xr-x 1273 Aug 12 2013 tools.cfg

And now, the /mnt/sdX1/slackware64-current-06Jul2023/EFI/BOOT/grub.cfg
file originally contains (among some other stuff)

menuentry "Slackware 15.0 huge.s kernel"{
echo "Loading huge.s kernel and installer initrd. Please wait..."
linux /kernels/huge.s/bzImage vga=normal load_ramdisk=1 prompt_ramdisk=0 ro printk.time=0 nomodeset SLACK_KERNEL=huge.s
initrd /isolinux/initrd.img
}

menuentry "Slackware 15.0 huge.s kernel (use KMS console)"{
echo "Loading huge.s kernel (with KMS) and installer initrd. Please wait..."
linux /kernels/huge.s/bzImage vga=normal load_ramdisk=1 prompt_ramdisk=0 ro printk.time=0 SLACK_KERNEL=huge.s
initrd /isolinux/initrd.img
}

And according to those instructions, I'm supposed to edit/change
linux /kernels/huge.s/bzImage
to linux /EFI/BOOT/huge.s
and also change
initrd /isolinux/initrd.img
to initrd /EFI/BOOT/initrd.img

But here's the goofy problem with doing that. For the first change,
I diff'ed the bzImage and huge.s files, and they're identical.
For the second change, there's no isolinux/ subdirectory on the
stick at all, but there's a /mnt/sdX1/initrd.img file. And that
also diff's identically with the EFI/BOOT/initrd.img copy.
So as far as I can tell, the edits just point to different copies
of identical files. Confusing, no?
--
John Forkosh ( mailto: ***@f.com where j=john and f=forkosh )
Rich
2023-07-10 03:44:40 UTC
Permalink
Post by John Forkosh
Post by Rich
Post by John Forkosh
I'm having precisely the same problem described at
https://www.linuxquestions.org/questions/slackware-installation-40/howto-prevent-installation-hangs-on-recent-hardware-4175671086/
but am having a bit of trouble understanding the suggested solution.
Firstly, I already create a bootable slackware install usb stick
with the usual
./usbimg2disk.sh -f -s /path/to/slackware64-current -o /dev/sdX
as per their step 1. As for mounting that stick as per their step 2,
I'm seeing three partitions on that /dev/sdX, with EFI/ and boot/
directories on /dev/sdX2, and the slackware install stuff apparently
on /dev/sdX3.
But then their step4,
Copy recursively (USBSLACKINS)/slackware64-current/EFI to (USBSLACKINS)/
is making no sense to me. Firstly, the source starts with (USBSLACKINS)/,
which says to me you're copying from another EFI directory already on
the usb stick, presumably from /dev/sdX3/???/EFI/ back to /dev/sdX2/EFI/.
But I'm not seeing any such EFI/ on /dev/sdX3.
You skipped over step 3....
Step 2, while cryptic, appears to be saying: "mount the newly made
install drive from step 1 somewhere" Lets say you mount it at /mnt/z
Then step 3 is saying: "remove (or rename)" the existing /EFI
directory, on the newly mounted USB install disk, so you would do one
rm -rf /mnt/z/EFI
or
mv /mnt/z/EFI /mnt/z/EFI.original
Note everything is on /mnt/z above (the stand-in for "where you mounted
the USB stick).
And then you'd do step 4, which is saying to do this (assuming your USB
cp -r /mnt/z/slackware64-current/EFI /mnt/z/
I.e., copy everyting under "slackware64-current/EFI" on the USB stick
(/mnt/z) to the root directory **of the USB stick** (that last bit is
important). You are copying to and from the USB stick, not your main
system upon which the stick is mounted.
Then you go and do the indicated edits -- **on the USB stick**
(/mnt/z).
Thanks a lot, Rich. Clarifies my problem, but some confusion remains.
Firstly, I made an absentminded-cum-dumb mistake in the original post.
As mentioned, I eventually installed slack from a slacklive usb stick.
But then, that's the stick whose ls -al EFI/BOOT/ directory I listed,
whereas, obviously, I should've been listing the not-live (so to speak)
stick's contents.
Okay, so now that I've finally mount'ed the correct stick,
it only has a single /dev/sdX1 partition, whose entire /mnt/sdX1/
root directory contents are, fyi,
drwxr-xr-x 8192 Jul 7 05:52 EFI
drwxr-xr-x 8192 Jul 7 21:12 System\ Volume\ Information
-rwxr-xr-x 574 Jul 7 05:52 f2.txt
-rwxr-xr-x 12079904 Jul 7 05:52 huge.s
-rwxr-xr-x 45914424 Jul 7 05:52 initrd.img
-r-xr-xr-x 37888 Jul 7 06:05 ldlinux.sys
-rwxr-xr-x 150024 Jul 7 05:52 memtest
-rwxr-xr-x 682 Jul 7 05:52 message.txt
-rwxr-xr-x 2879 Jul 7 05:52 setpkg
drwxr-xr-x 8192 Jul 6 17:26 slackware64-current-06Jul2023
-rwxr-xr-x 510 Jul 7 05:52 syslinux.cfg
And then, /mnt/sdX1/EFI/ only has a BOOT/ subdirectory, as expected,
and that /mnt/sdX1/EFI/BOOT/ subdirectory only contains the three files
-rwxr-xr-x 238531 Jul 7 05:52 BOOTX64.EFI
-rwxr-xr-x 422 Jul 7 05:52 elilo.conf
-rwxr-xr-x 561 Jul 7 05:52 message.txt
Looks like an elilo install.
Post by John Forkosh
whereas /mnt/sdX1/slackware64-current-06Jul2023/EFI/BOOT/ contains
-rwxr-xr-x 1187840 Jun 15 2021 bootx64.efi
-rwxr-xr-x 78 Sep 23 2013 grub-embedded.cfg
-rwxr-xr-x 893 Apr 17 2018 grub.cfg
-rwxr-xr-x 12079904 Jul 5 16:30 huge.s
-rwxr-xr-x 45914424 Jul 5 16:59 initrd.img
-rwxr-xr-x 2504 Jul 5 2019 make-grub.sh
-rwxr-xr-x 10722 Sep 21 2013 osdetect.cfg
-rwxr-xr-x 1273 Aug 12 2013 tools.cfg
Looks like the 'grub' install that the web page you linked wanted you
to copy to /EFI on the stick.
Post by John Forkosh
And now, the /mnt/sdX1/slackware64-current-06Jul2023/EFI/BOOT/grub.cfg
file originally contains (among some other stuff)
menuentry "Slackware 15.0 huge.s kernel"{
echo "Loading huge.s kernel and installer initrd. Please wait..."
linux /kernels/huge.s/bzImage vga=normal load_ramdisk=1 prompt_ramdisk=0 ro printk.time=0 nomodeset SLACK_KERNEL=huge.s
initrd /isolinux/initrd.img
}
menuentry "Slackware 15.0 huge.s kernel (use KMS console)"{
echo "Loading huge.s kernel (with KMS) and installer initrd. Please wait..."
linux /kernels/huge.s/bzImage vga=normal load_ramdisk=1 prompt_ramdisk=0 ro printk.time=0 SLACK_KERNEL=huge.s
initrd /isolinux/initrd.img
}
And according to those instructions, I'm supposed to edit/change
linux /kernels/huge.s/bzImage
to linux /EFI/BOOT/huge.s
and also change
initrd /isolinux/initrd.img
to initrd /EFI/BOOT/initrd.img
But here's the goofy problem with doing that. For the first change,
I diff'ed the bzImage and huge.s files, and they're identical.
diff is not intended for comparing binary files, 'cmp' is generally the
better choice there. As for being identical, that's not an issue.
Post by John Forkosh
For the second change, there's no isolinux/ subdirectory on the
stick at all, but there's a /mnt/sdX1/initrd.img file. And that
also diff's identically with the EFI/BOOT/initrd.img copy.
So as far as I can tell, the edits just point to different copies
of identical files. Confusing, no?
Not at all. When the EFI boot subsystem is running, Linux is not
running. So there's no access to anywhere on the disk besides what the
EFI boot subsystem can see, and that is likely only the /EFI tree.
Everything else is not yet accessible.

So the edits are to point grub to copies of the files that it can ask
the EFS bios to load (i.e., the files in the /EFI file tree) instead of
pointing it at files the EFI bios can't read.

Loading...