Files in /etc/grub.d not included in /boot/grub/grub.cfg.
These are the files in the /etc/grub.d directory:
Code:
[root@revenge grub.d]# ls -l /etc/grub.d Code:
# BEGIN 11_slackware_linux |
it is default search patterns .. if it is in the other directory then it will pick it up and look at it, else move on.
seeings how this thread is a continuation of this one only for the last few post where you were offered a script to try, https://www.linuxquestions.org/quest...39#post5859539 I am not sure how you installed slack on your EMMC card. but, if you installed it just like a normal hdd and it took, and it booted up into a freshly installed Slack, and all you're wanting to do is change the Kernel to the smaller one, then try treating it as a normal Slack install as if it is installed on a hdd. install slack select mirror update gpg update cache list install new upgrade system change kernel https://docs.slackware.com/slackware:beginners_guide Quote:
Skip the LiLO stuff as I said before, Have you even given that a try yet, because they have to match. here is a post on Slack where someone had a similar issue it looks like " Grub2...can't load generic" marked solved. https://www.linuxquestions.org/quest...eneric-854190/ |
It's simple. I booted the installer from a USB stick (flash memory) and went through the usual procedure when installing from a CD, skipping the lilo creation. By the way I only installed the basic series (don't remember its name), that is, only one series, that which among other things creates the directory structure. I have two partitions, one of which has Arch on it and the other I intend to use for Slackware. Some time ago the scenario was:
partition 1: arch partition 2: debian Neither had any problem in booting. Only slackware won't boot. Back to arch/slackware: I ran the mkinitrd_command_generator.sh script and used the output. Everything was fine because among other things that gave me the drivers for the eMMC device (the "hard disk"). I think I now have a good initrd.gz file. and that only thing lacking is the bootloader. Unfortunately use of lilo with eMMC is for gurus, so I must fall back on grub, which I never had used before. So the file 11_slackware_linux in /etc/grub.d is not included by grub-mkconfig in grub.cfg because that same file should be in another directory also? EDIT: "Skip the LiLO stuff as I said before, Have you even given that a try yet, because they have to match". What has to match with what? |
the match is the initrd.gz has to match with the kernel its made from. you cannot just point to the generic kernel and use the same initrd.gz because it is made from the huge kernel.
Did you follow the instructions on that grub2 extra file on the git page? https://github.com/Richard-Cranium/SlackwareGrub2 so you did a partial install of Slack. My Option is install the full install, then skip lilo install, use Arch's gurb to control boot. run that script to create a new initrd.gz and let Arch grub pick it up, in most cases you're not going to see much difference between the huge and the generic, I went through all of that got to change it because ... ??? thing, then got past that feeling, and didn't really see any performance boost, so now I just use the huge and it just works out for me. If it was booting alright just by what you did install for Slack with the huge kernel, and didn't start giving you grief until you tried to change it? If it did, then the full install part you might still be able to get past that and just use Arches Grub to control the boot for both. this is how I do (sometimes) install slack if it is a second install, just like you, skip the lilo install and let the other distro boot, update grub and let it control the boot list. so every time the second or more get a kernal update you have to boot back into the controlling Grub distro and run update grub so it can pick up the new kernel for the other distro. Otherwise it might not boot that other distro until you do because the kernel has been changed. if you get to playing around with it enough you should see the cause and effects. then hopefully pick up what to do in response to them. so as it stands, just to like you did with installing Slack, and running that that script for change kernels mkinitrd -c -k 3.2.29 -f ext4 -r /dev/sdb2 -m usb-storage:ehci-hcd:usbhidhci-hcd:mbcache:jbd2:ext4 -u -o /boot/initrd.gz then boot again into Arch and run its update grub, then see if it catches Slack. NOTE: Make sure the paths are changed to reflect your system in that command to create your new initrd.gz |
Quote:
Quote:
Quote:
|
Quote:
As that is a old debain hangover part i carried with me back into slack, I just put that command into a file call it update-grub, then make it executable, then put that in /local/bin/ saves me time in writing it out. Anyways, that maybe why you're not getting Slack to boot, skipping the lilo install and not getting something else to see it, that is where Arch comes in with what ever command they use to update the grub file. if it was in fact Arch that was adding that EOF crap in the file, then I have no idea why, that is Arch, and well come to think of it, I did just installed Manjaro a few days ago, and its a arch knock off, but I have not looked into everything about it(yet). though, when I run its update-grub command it picks up my slack and windows with out issues. as that is what its is suppose to do. what happened to Arch and its grub? who was in control of grub before when you had arch and debian on it? if debain and you cannot get into Arch now either, then, supergrub2 burn it to a usb stick use that to pick up your OS'es then the one you boot into use that to install grub to your mbr? or efi (which I have no real experience in). anyways this is getting too involved in all of the variables it could be in my head then trying to cover them all here. Look: if Slack is installing properly as it were a hdd, as that is what it is suppose to do even if it is a eMMC card. the steps are then when you skip install of Lilo is to have a back up method to boot into that OS. Ie. someone elses grub from a distro already installed on your system. Then that is the means in which you use to boot any other system by updating its grub so it can add any other OS's to its listing. I think that it is as simple as that. you skipped that part, using Arch to take control over it. 2: you could get a copy of supergrub2 and use that as I have in the past when I've lost grub and go into rescue mode, I just pull that out and use that to boot into my distro then reestablish grub inside of the ditro I booted into using supergrub2. if this part that has a missing part I did but the file has a syntax error as declared by grub-mkconfig. Unfortunate case.[quote is suggesting that Arch grub is causing you grief by putting that error in the grub.cfg. then I would get supergrub2 and use that to see if it will get me into slack. then use Slack to install its grub then run the grub-mkconfig command and let it take over your system. supergrub2 is a program that boots off a USB Stick then searches your hdd for installs it can boot, then gives you a list and you pick from them until you find one that works. you'll see what I am talking about if you decide to try it. show it who's really the boss. :D |
Quote:
|
I am no just trying to look at it from a starting point, being a fresh install, no install lilo, have your other distro use its grub to pick up slack ( as this is what I've have and still do without issues). Whence you've established that you can in fact get into Slackware then go from there, as personally I see no point in changing the kernel. but if you still want to then as in your other post you have been given advice on that already.
first things first you need to get into Slack via Grub, you have a dual boot, that is where the other Distro comes in to help you achieve your goal. |
You wanted to know how I got Arch and Debian running in the same machine. Very simply: first I ran the Zen Installer from the USB stick and that gave a running Arch. Now I booted from a Stretch Debian iso image (stick) and that gave me a running (on the disk always) Debian, but Debian meddled with grub and as a result I was left without Arch. Alright. Then I ran the Zen Installer (of course this installs some sort of Arch) again and this time I could accsess both OS's. A pity the same does not happen with slackware. It's installer only offers lilo and so I have to skip the lilo setup, for the hd really is eMMC and lilo seems not to understand it. All right.
Lately, by advice of Volkerdi, I booted the slackware stick, immediately pressed Enter and then I was root. I did then a couple of things: Code:
# mount /dev/mmcblk0p3 /mnt Quote:
Quote:
Quote:
So you recognize I should now work with grub. But that's the subject matter of this thread! |
DELETED by the author.
|
OIC I did not know as you did not specify, that is the only OS you're working with. get supergrub2 burn it onto a different USB Stick , hopefully this is doable. Install Slack, skip lilo finish installing it, boot your system with supergrub2 and have it search your "hdd" for a bootable, or you could try this first, after you install slack, skip lilo, finish install, boot with your USB Stick again and it gives you an option to boot using that to kernel to mount your hdd then install grub when you inside of Slack on your "hdd" I think it is something like.
root=/path/to ro=rw you should know where you installed root to during install, remember that because you're going to need to use that path to boot into your fresh install using the kernel on your USB Stick. the other part you have to write is shown during that process. |
It seems there are only two files you can meddle with: /etc/default/grub and /etc/grub.d/40_custom. That's the reason why 09_slack_linux was no being read. Alright. Now suppose in 40_custom I write 'Do this' but the 30_os-prober section says 'Do not do this'. Which has precedence? There can be collisions of a 40_custom command and a 30_os-prober command???!!! This is a question.
|
how are you getting into it to mod files in grub.d ?
you can try this hack, just change the path to to reflect your system, and kernel as this is a "good working" grub.cfg and back up what you have then copy it over the other one. using your original as a guild line as well. do not generate a new one just mod it and use it to see if that will get you in. you'll need to know your UUID as well. Code:
sudo cp grub.cfg grub.cfg.org Code:
# |
Quote:
|
I don't understand the syntax set root='hd0,msdos5'. Isn't it set root=(hd0,5)?
|
All times are GMT -5. The time now is 04:50 AM. |