SlackwareThis Forum is for the discussion of Slackware 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.
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.
how did you come across this "other-module:another-module:amdgpu"? I looked for something to reference for the future but could not find this specific line on the net.
I took out the /boot as agreed but also had to take out the resume=/dev/sdb2 from append because when loading up the OS it truncated the rest of the loading, but now I get another error when loading the OS:
Code:
mount: mounting /dev/sda2 on /mnt failed: No such device
ERROR: No /sbin/init found on rootdev (or not mounted). Trouble
You can try to fix it. Type 'exit' when things are done.
/bin/sh: can't access tty: job control turned off
Last edited by ernie young; 10-07-2020 at 07:21 PM.
Perhaps you have the wrong initrd specified for booting the generic kernel? You posted this snippet of your mkinitrd command for kernel 5.4.60 with the initrd generated as "/boot/initrd.gz":
Quote:
Originally Posted by ernie young
Code:
# initrd created with 'mkinitrd -c -k 5.4.60 -f ext4 -r /dev/sda2 -m xhci-pci:ohci-pci:ehci-pci:xhci-hcd:uh
ci-hcd:ehci-hcd:hid:usbhid:i2c-hid:hid_generic:hid-asus:hid-cherry:hid-logitech:hid-logitech-dj:hid-logitec
h-hidpp:hid-lenovo:hid-microsoft:hid_multitouch:jbd2:mbcache:crc32c_intel:crc32c_generic:ext4 -u -o /boot/initrd.gz'
If that was the case then make sure that you copied that file from /boot/initrd.gz to /boot/efi/EFI/slackware/initrd.gz, or in your case you would have had to rename the initrd to "initrd_5.4.60.gz", since thats what you're using in your elilo.conf stanzas.
Also note that the huge kernel shouldn't need an initrd, just the generic kernels should need them. You could try remaking the initrd and making sure that the newest initrd is the one sitting on the efi partition and pointed to by elilo.conf generic kernel stanza with the same name. Just a thought, perhaps you're past this alredy.
I cleared the previous mkinitrd files I had created, initrd.gz & initrd_5.4.60.gz. As you can probably see on my first post initrd.gz was being used by the huge kernel. I know it's not needed by Huge, however, now that I deleted it, my kernel went down with it. I am somewhat confused what has caused it.
Has this happened to someone before and what solution did you have, if any?
The error is: kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,2)
Last edited by ernie young; 10-10-2020 at 07:23 PM.
I ran eliloconfig, and I don't know if this is indicative of an issue but it adds this line to the Huge stanza: initrd=initrd.gz
If it's not needed why does the eliloconfig script add it? Is there a way for me to run mkinitrd to restore the OS.
I have tried:
Code:
mount /dev/sdaX /mnt #X - your root partition
mount /dev/sdaZ /mnt/boot #Z - your boot partition
mount -t proc /proc /mnt/proc
mount --rbind /sys /mnt/sys
mount --rbind /dev /mnt/dev
eliloconfig will copy over the /boot/initrd.gz and /boot/vmlinuz files (or the file(s) they point to if a symlink). It is not a "smart" program.
Here's what I'd do to maximize the chances of this work. First, forget about eliloconfig. It's done its job of registering the elilo efi file with the motherboard's firmware.
Now, since you're running -current, I'm going to use the kernel version that's included today with a fully updated system (5.4.70). If you don't have 5.4.70, either install it or adjust the version numbers below.
First, generate an initrd for that kernel. I'm using the line previously provided and including the amdgpu module:
@bassmadrigal, I greatly appreciate your help. Would you be able to help me overcome what I hope is our last hump, how can I load the modules for my 5.4.60 kernel to make mkinitrd work when mounting like in post #22? Or is there another way?
Before, I was able to make changes because my Huge kernel was working but since I got rid of initrd.gz through ignorance, I haven't been able to access my OS at all. Once I recover my current OS I will update to 5.4.70.
One easy way to get into a working install is to boot off your install media, mount your OS drive, and then bind mount a few directories, and then chroot into the mounted filesystem. Since you're running UEFI, you'll also want to mount your UEFI partition.
Code:
mount /dev/sda2 /mnt
mount /dev/sda1 /mnt/boot/efi # This is a guess on your UEFI partition... adjust as needed
mount -o bind /dev/ /mnt/dev/
mount -o bind /proc/ /mnt/proc/
mount -o bind /sys/ /mnt/sys/
chroot /mnt
From here, you should be able to make adjustments to your installed system.
Hello @bassmadrigal, your instructions worked like a charm. My chroot was not working before, maybe I didn't use the bind command correctly. Thank you very much for the help and the patience.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.