[SOLVED] Slackware 14.2 grub not finding Linux on /dev/sda1
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.
I guess Slackware uses a different mkinitrd or an older version. I know it's an option with Slackware's mkinitrd, and Slackware's man page is quite a bit larger with many more options.
as far as UUID's goes that is just the way I had Void setup to boot before even installing Slackware. setting them to old school isn't an issue if that is what lilo needs to use Void kernel that uses void's fstab to boot void, I do not see what that even matters. it to me is not logical. the kernel is what uses the fstab lilo just points to the kernel , the kernel points to the system Right?
Quote:
Originally Posted by bassmadrigal
but I'd try and get everything working first, then, if you want, try the swap to UUIDs. Before you run lilo, make sure that /dev/sda1 is mounted to /void/ (or some other directory, but make sure that it matches your lilo.conf). As I said before, I'd try with a lilo -t first, then if all goes well, lilo to install it.
As for the initrd with Void, I'm not positive how it generates them, since I've never used the OS. However, if the drive designations were changed at some point (like Void used to be /dev/sdb1 and now it's /dev/sda1, or it used to be /dev/sda3 and now it's /dev/sda1), then a new initrd would need to be generated. When you update the kernel in Void, and if it automatically generates a new initrd (which you seemed to indicate it would), it is likely it already knows that the Void root partition is /dev/sda1, however, if it was specified in some initrd conf file on installation, then you'd need to make that change manually (I'm not sure if or where Void stores that). Once you do generate a new initrd, even if it is the exact same name, you will need to boot into Slackware, mount your Void partition, and run lilo. Otherwise it won't use your new initrd.
And just a minor little nitpick, it is an SSD (solid state drive), not SDD (you probably based this on an HDD - hard disk drive). Using sdd can be a bit confusing since if you have 4 or more drives on your computer, the /dev/sdd designation would be used. Just something to clear up possible confusion others might have looking at this (I had to take a second look at it to realize you meant an ssd)
lilo before changing the setting as I used liloconfig to generate a new file and expert mode then ran lilo
Code:
Warning: Unable to determine video adapter in use in the present system.
Warning: Video adapter does not support VESA BIOS extensions needed for
display of 256 colors. Boot loader will fall back to TEXT only operation.
Added Void_linux *
Added Slackware_1
Added Slackware_2
Added Windows10
2 warnings were issued.
after I changed it to /void/boot/
Code:
tup length exceeds 63 maximum; kernel setup will overwrite boot loader
bash-4.3# lilo -t
Warning: Unable to determine video adapter in use in the present system.
Warning: Video adapter does not support VESA BIOS extensions needed for
display of 256 colors. Boot loader will fall back to TEXT only operation.
Fatal: Setup length exceeds 63 maximum; kernel setup will overwrite boot loader
the lilo file in question off of /dev/sda2 slack
Code:
# LILO configuration file
# generated by 'liloconfig'
#
# Start LILO global section
lba32 # Allow booting past 1024th cylinder with a recent BIOS
boot = /dev/sda
#compact # faster, but won't work on all systems.
# Boot BMP Image.
# Bitmap in BMP format: 640x480x8
bitmap = /boot/slack.bmp
# Menu colors (foreground, background, shadow, highlighted
# foreground, highlighted background, highlighted shadow):
bmp-colors = 255,0,255,0,255,0
# Location of the option table: location x, location y, number of
# columns, lines per column (max 15), "spill" (this is how many
# entries must be in the first column before the next begins to
# be used. We don't specify it here, as there's just one column.
bmp-table = 60,6,1,16
# Timer location x, timer location y, foreground color,
# background color, shadow color.
bmp-timer = 65,27,0,255
# Standard menu.
# Or, you can comment out the bitmap menu above and
# use a boot message with the standard menu:
#message = /boot/boot_message.txt
# Append any additional kernel parameters:
append=" vt.default_utf8=0"
prompt
timeout = 300
# VESA framebuffer console @ 1024x768x32k
vga = 790
# Normal VGA console
#vga = normal
# Ask for video mode at boot (time out to normal in 30s)
#vga = ask
# VESA framebuffer console @ 1024x768x64k
# vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773
# VESA framebuffer console @ 800x600x64k
# vga=788
# VESA framebuffer console @ 800x600x32k
# vga=787
# VESA framebuffer console @ 800x600x256
# vga=771
# VESA framebuffer console @ 640x480x64k
# vga=785
# VESA framebuffer console @ 640x480x32k
# vga=784
# VESA framebuffer console @ 640x480x256
# vga=769
# ramdisk = 0 # paranoia setting
# End LILO global section
# Linux bootable partition config begins
#image = /boot/vmlinuz
image= /void/boot/initrd-4.7.6_1.img
root = /dev/sda1
label = Void_linux
read-only # Partitions should be mounted read-only for checking
# Linux bootable partition config ends
# Linux bootable partition config begins
image = /boot/vmlinuz
root = /dev/sda2
label = Slackware_1
read-only # Partitions should be mounted read-only for checking
# Linux bootable partition config ends
# Linux bootable partition config begins
image = /boot/vmlinuz
root = /dev/sdb3
label = Slackware_2
read-only # Partitions should be mounted read-only for checking
# Linux bootable partition config ends
# Windows bootable partition config begins
other = /dev/sdb1
label = Windows10
# map-drive = 0x80
# to = 0x81
# map-drive = 0x81
# to = 0x80
table = /dev/sdb
# Windows bootable partition config ends
so I know not what that error is Setup length exceeds 63 maximum 63 max what? lines?
changed a line from to
Code:
# End LILO global section
# Linux bootable partition config begins
#image = /boot/vmlinuz
#image = /void/boot/initrd-4.7.6_1.img
image = /void/boot/vmlinuz-4.7.6_1
root = /dev/sda1
label = Void_linux
returned
Code:
bash-4.3# lilo
Warning: Unable to determine video adapter in use in the present system.
Warning: Video adapter does not support VESA BIOS extensions needed for
display of 256 colors. Boot loader will fall back to TEXT only operation.
Added Void_linux *
Added Slackware_1
Added Slackware_2
Added Windows10
2 warnings were issued.
kernel panic root fs not -- i think it said not recognized so i going to look into that
Code:
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 52430847 52428800 25G 83 Linux
/dev/sda2 52430848 95487999 43057152 20.5G 83 Linux
/dev/sda3 95488000 488396799 392908800 187.4G 83 Linux
??
that's my ssd Void is sda1 slack is sda2 data is sda3
so now i'm going to boot it with that slack img to see what i see
this setting
end kernel panic not syncing VFS unable to mount root fs on unknown block (0,0)
--- cut here ---
then more retrying to do whatever it was then it ended leaving in limbo
WHAT? it doesn't really seem to matter which Slack install I use does it? they both are the same system, therefore they both operate the same.
Sorry, I thought you only intended on booting one of the Slackware installs (the newer one). You can certainly have both if you want. However, to do it properly, you'd need to mount your sdb3 Slackware partition and reference that kernel in your /etc/lilo.conf like you did with Void. However, if they're both currently running the same kernel, you can get away with not doing it. But if one is upgraded, it will probably break the other one unless you make the change. For that reason, right now, I'm going to leave the sdb3 Slackware off and ignore it for now. Let's get everything working with Void (sda1), Slackware (sda2), and Windows (sdb1). Once that is done, adding Slackware (sdb3) should be relatively easy.
Quote:
Originally Posted by BW-userx
as far as UUID's goes that is just the way I had Void setup to boot before even installing Slackware. setting them to old school isn't an issue if that is what lilo needs to use Void kernel that uses void's fstab to boot void, I do not see what that even matters. it to me is not logical. the kernel is what uses the fstab lilo just points to the kernel , the kernel points to the system Right?
UUIDs are nice because they don't change (short of reformatting the drive). So, if you happen to swap a ton of drives around, no matter what they show up as under /dev/, the UUIDs will always point to the same device. However, they certainly are not needed, and if you have no interest in it, you can just leave it be
Quote:
Originally Posted by BW-userx
lilo before changing the setting as I used liloconfig to generate a new file and expert mode then ran lilo
Code:
Warning: Unable to determine video adapter in use in the present system.
Warning: Video adapter does not support VESA BIOS extensions needed for
display of 256 colors. Boot loader will fall back to TEXT only operation.
Added Void_linux *
Added Slackware_1
Added Slackware_2
Added Windows10
2 warnings were issued.
Ok, both those warnings are normal if you are booting off the install media.
Quote:
Originally Posted by BW-userx
after I changed it to /void/boot/
Code:
tup length exceeds 63 maximum; kernel setup will overwrite boot loader
bash-4.3# lilo -t
Warning: Unable to determine video adapter in use in the present system.
Warning: Video adapter does not support VESA BIOS extensions needed for
display of 256 colors. Boot loader will fall back to TEXT only operation.
Fatal: Setup length exceeds 63 maximum; kernel setup will overwrite boot loader
Changed what to /void/boot/? What exactly changed between the first run of lilo that just had the two warnings and the one that had the fatal error?
Actually, rom here on out, to make things easier, don't use liloconfig. We'll just make any edits to /etc/lilo.conf directly. Based on what I'm understanding, your lilo.conf should look like below (I removed all the comments for readability, because there's a ton to scroll through).
See if you get any errors with that. On your first lilo.conf you posted, you had Void trying to use the initrd as the kernel. In the second one, you had the correct kernel, but no initrd listed.
Also, when you try to reboot, specify what OS you're trying to boot up and any errors you get with it. Finally, don't use UUID right now. We don't need something else to complicate things up
I'll be in and out this evening, so I may not respond right away, but we'll get this resolved and hopefully you'll have a better understanding of lilo afterwards.
let me get back on trac but document this first, becuse I just said, self let me put slackware on /dev/sda1 if it does not see then make it that, then put Void on /dev/dsa2 then go from there.
I just got done installing slack then void os's, get into void, and do update-grub and this is what it gave me.
Code:
# update-grub
Generating grub.cfg ...
Found background: /usr/share/void-artwork/splash.png
Found linux image: /boot/vmlinuz-4.0.5_2
Found initrd image: /boot/initramfs-4.0.5_2.img
WARNING: lvmetad is running but disabled. Restart lvmetad before enabling it!
Found Slackware Linux (Slackware 14.2) on /dev/sda1
Found Windows Vista (loader) on /dev/sdb1
Found Slackware Linux (Slackware 14.2) on /dev/sdb3
done
#
everything is being seen by void, BUT this is before I do my system update, so we got a wait to see what happens from that. and I am going over to Void and post this too.
Sorry, I thought you only intended on booting one of the Slackware installs (the newer one). You can certainly have both if you want. However, to do it properly, you'd need to mount your sdb3 Slackware partition and reference that kernel in your /etc/lilo.conf like you did with Void. However, if they're both currently running the same kernel, you can get away with not doing it. But if one is upgraded, it will probably break the other one unless you make the change. For that reason, right now, I'm going to leave the sdb3 Slackware off and ignore it for now. Let's get everything working with Void (sda1), Slackware (sda2), and Windows (sdb1). Once that is done, adding Slackware (sdb3) should be relatively easy.
UUIDs are nice because they don't change (short of reformatting the drive). So, if you happen to swap a ton of drives around, no matter what they show up as under /dev/, the UUIDs will always point to the same device. However, they certainly are not needed, and if you have no interest in it, you can just leave it be
Ok, both those warnings are normal if you are booting off the install media.
Changed what to /void/boot/? What exactly changed between the first run of lilo that just had the two warnings and the one that had the fatal error?
Actually, rom here on out, to make things easier, don't use liloconfig. We'll just make any edits to /etc/lilo.conf directly. Based on what I'm understanding, your lilo.conf should look like below (I removed all the comments for readability, because there's a ton to scroll through).
See if you get any errors with that. On your first lilo.conf you posted, you had Void trying to use the initrd as the kernel. In the second one, you had the correct kernel, but no initrd listed.
Also, when you try to reboot, specify what OS you're trying to boot up and any errors you get with it. Finally, don't use UUID right now. We don't need something else to complicate things up
I'll be in and out this evening, so I may not respond right away, but we'll get this resolved and hopefully you'll have a better understanding of lilo afterwards.
OK now I am going to try this, because installing grun onto /dev/sda with void .. slack lilo keeps showing up and not working kernal paniac on last try .... ooooooooh
NOPE nothing worked with this lilo boot, I could not over wirte it with grub through void, I wiped everything, on both dirives, Linux OS's that is, then installed Void on my sdb BIOS changed that to be the boot drive and it is now seeing windows again, for how long I have no idea. that is what got me into all of this mess in the first place. so a great big thanks for the help you gave me ... thank you.... I am just now very leary about installing Slack onto anything having it screw up if I install lilo or if I do not install lilo and skip that part.
I think you're jumping around way too much before we have a chance to properly troubleshoot your problem. Each time, it is possible something completely new is causing a problem, or the changes we've made no longer apply. It'd be much better to stick with one setup until we can get the issues resolved. So, for now, let's keep all the OSes where they are and work to get lilo working. No more wiping everything and starting over, ok? Let's work through this
As I said before, I have no experience with grub, so I don't know how to overwrite lilo with grub nor why you couldn't.
We can start with a fresh lilo.conf and go from there (no liloconfig). It really doesn't matter where Slackware is installed, be it /dev/sda1, /dev/sda14, or /dev/sdq7. As long as you can select the drive it's installed to in the BIOS to boot off of, you can have that drive and Slackware's lilo.conf handle all your OSes. What is your current OS setup? What is installed on what drives? Is it like the below?
Code:
/dev/sda1 Slackware1
/dev/sda2 Void
/dev/sdb1 Windows
/dev/sdb3 Slackware2
If so, try this lilo.conf (you can literally copy/paste, replacing whatever is in there now). Again, for now, we're going to ignore Slackware2 for simplicity (we'll add it once we get Slackware1, Void, and Windows working without issue). We're also going to assume you have /dev/sda2 (your Void install) mounted in Slackware under /void/. With this lilo.conf, I expect Slackware and Windows should boot fine (please report if this is the case). Whether Void will boot will likely depend on whether you did a fresh install to /dev/sda2 (should work) or if you moved the old install over (probably won't work until you generate a new initrd in Void and rerun lilo in Slackware). Also, please verify the vmlinuz and initrd names referenced in the lilo.conf match what is in Void's /boot/ directory (which should be /void/boot/ on your Slackware install)... if you want, you can just provide the output of ls -la /void/boot/ so I can check it.
So, once you do this, please report back on each OS whether it boots or not. If it doesn't, please make note of any errors and we will work through them.
Oops, looks like I missed the part about you moving Void to /dev/sdb (see what I mean about jumping around? ). Now, I *think* your drives are set up like:
Code:
/dev/sda1 Slackware
/dev/sda2 Old_Void?
/dev/sdb1 Windows
/dev/sdb3 Void?
If so, use the following lilo.conf (again, after making sure you have /dev/sdb3 mounted to /void/).
Oops, looks like I missed the part about you moving Void to /dev/sdb (see what I mean about jumping around? ). Now, I *think* your drives are set up like:
Code:
/dev/sda1 Slackware
/dev/sda2 Old_Void?
/dev/sdb1 Windows
/dev/sdb3 Void?
If so, use the following lilo.conf (again, after making sure you have /dev/sdb3 mounted to /void/).
I worked myself all the way back around to where i was to start with. having Void Linux installed on my hybrid, split install. only it is sdb instead of sda
and grub is seeing windows10 again. for how long I do not know. to you I give a thanks for your help if I get myself back into that situation again. well....
thanks
marked solved.
thanks again
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.