Files in /etc/grub.d not included in /boot/grub/grub.cfg.
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 don't understand the syntax set root='hd0,msdos5'. Isn't it set root=(hd0,5)?
If it was then it would not be as it is written in the first place. I put to question, again, seeing how you have not been able to get slack to boot. Install a full version then take the steps I’ve provided and trying to get it to work
Rather than having a partial install of which you nor anyone else is sure it’s even bootable just in itself.
I have just installed all series except Emacs, documentation, kernel sources and series relating to X. This is the grub.cfg used:
Code:
[root@revenge grub]# cat /boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="0"
fi
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
else
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
fi
font="/usr/share/grub/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=en_US
insmod gettext
fi
terminal_input console
terminal_output gfxterm
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=5
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-4b48227b-6b20-4cdd-b9a4-fee01fab42d4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
else
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
fi
echo 'Loading Linux linux-zen ...'
linux /boot/vmlinuz-linux-zen root=UUID=4b48227b-6b20-4cdd-b9a4-fee01fab42d4 rw quiet noapic
echo 'Loading initial ramdisk ...'
initrd /boot/intel-ucode.img /boot/initramfs-linux-zen.img
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-4b48227b-6b20-4cdd-b9a4-fee01fab42d4' {
menuentry 'Arch Linux, with Linux linux-zen' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-advanced-4b48227b-6b20-4cdd-b9a4-fee01fab42d4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
else
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
fi
echo 'Loading Linux linux-zen ...'
linux /boot/vmlinuz-linux-zen root=UUID=4b48227b-6b20-4cdd-b9a4-fee01fab42d4 rw quiet noapic
echo 'Loading initial ramdisk ...'
initrd /boot/intel-ucode.img /boot/initramfs-linux-zen.img
}
menuentry 'Arch Linux, with Linux linux-zen (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-fallback-4b48227b-6b20-4cdd-b9a4-fee01fab42d4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
else
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
fi
echo 'Loading Linux linux-zen ...'
linux /boot/vmlinuz-linux-zen root=UUID=4b48227b-6b20-4cdd-b9a4-fee01fab42d4 rw quiet noapic
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-linux-zen-fallback.img
}
menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-4b48227b-6b20-4cdd-b9a4-fee01fab42d4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
else
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
fi
echo 'Loading Linux linux ...'
linux /boot/vmlinuz-linux root=UUID=4b48227b-6b20-4cdd-b9a4-fee01fab42d4 rw quiet noapic
echo 'Loading initial ramdisk ...'
initrd /boot/intel-ucode.img /boot/initramfs-linux.img
}
menuentry 'Arch Linux, with Linux linux (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-fallback-4b48227b-6b20-4cdd-b9a4-fee01fab42d4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
else
search --no-floppy --fs-uuid --set=root 4b48227b-6b20-4cdd-b9a4-fee01fab42d4
fi
echo 'Loading Linux linux ...'
linux /boot/vmlinuz-linux root=UUID=4b48227b-6b20-4cdd-b9a4-fee01fab42d4 rw quiet noapic
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-linux-fallback.img
}
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Slackware 14.2 (pre-15.0 -current) (on /dev/mmcblk0p3)' --class slackware --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-ca12f07c-07c7-4c0a-a9c1-597b0d7020f0' {
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
else
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
fi
linux /boot/vmlinuz root=/dev/mmcblk0p3 noapic
initrd /boot/initrd.gz
}
submenu 'Advanced options for Slackware 14.2 (pre-15.0 -current) (on /dev/mmcblk0p3)' $menuentry_id_option 'osprober-gnulinux-advanced-ca12f07c-07c7-4c0a-a9c1-597b0d7020f0' {
menuentry 'Slackware 14.2 (pre-15.0 -current) (on /dev/mmcblk0p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--ca12f07c-07c7-4c0a-a9c1-597b0d7020f0' {
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
else
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
fi
linux /boot/vmlinuz root=/dev/mmcblk0p3
initrd /boot/initrd.gz
}
menuentry 'Slackware 14.2 (pre-15.0 -current) (on /dev/mmcblk0p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--ca12f07c-07c7-4c0a-a9c1-597b0d7020f0' {
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
else
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
fi
linux /boot/vmlinuz root=/dev/mmcblk0p3
initrd /boot/initrd.gz
}
menuentry 'Slackware 14.2 (pre-15.0 -current) (on /dev/mmcblk0p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-generic--ca12f07c-07c7-4c0a-a9c1-597b0d7020f0' {
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
else
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
fi
linux /boot/vmlinuz-generic root=/dev/mmcblk0p3
}
menuentry 'Slackware 14.2 (pre-15.0 -current) (on /dev/mmcblk0p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-generic-4.14.34--ca12f07c-07c7-4c0a-a9c1-597b0d7020f0' {
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
else
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
fi
linux /boot/vmlinuz-generic-4.14.34 root=/dev/mmcblk0p3
}
menuentry 'Slackware 14.2 (pre-15.0 -current) (on /dev/mmcblk0p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-huge--ca12f07c-07c7-4c0a-a9c1-597b0d7020f0' {
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
else
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
fi
linux /boot/vmlinuz-huge root=/dev/mmcblk0p3
}
menuentry 'Slackware 14.2 (pre-15.0 -current) (on /dev/mmcblk0p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-huge-4.14.34--ca12f07c-07c7-4c0a-a9c1-597b0d7020f0' {
insmod part_msdos
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
else
search --no-floppy --fs-uuid --set=root ca12f07c-07c7-4c0a-a9c1-597b0d7020f0
fi
linux /boot/vmlinuz-huge-4.14.34 root=/dev/mmcblk0p3
}
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
[root@revenge grub]#
This is what I got after rebooting:
Code:
mmc0: new HS200 MMC card at address 0001
mount: mounting /dev/mmcblk0p3 on /mnt failed: no such file or directory.
ERROR: No /sbin/init found on rootdev (or not mounted). Trouble ahead.
The grub.cfg file was create by grub-mkconfig. In the os-prober section it wrote
Code:
linux /boot/vmlinuz root=/dev/mmcblk0p3
initrd /boot/initrd.gz
So I relinked vmlinuz to the generic kernel (it pointed to the huge) and did the same with config and System.map.
if it is doing that /mnt/dev/ thing again. I'm just ball parking now, or shooting in the dark, same thing, there has to be a /mnt on your root system, why it is trying to mount /dev/mmcblk0p3 to /mnt I have no idea. I am not verse in this type of setup where it is using the nomenclature for a SD Card as a hdd. Because as you are experiencing, it screws things up.
Though it too makes no since that Arch, and Debian can deal with it but you're having issues with it using Slackwere. Personally as it is not sitting in front of me try every possible scenario i can think of on it to see what it is doing while trying and get it to boot, I am at a loss.
I pretty much ran though a gambit of ideas, you still have supergrub2 to see if that till work.
I give up. Passing on to Debian. You are right. Neither Arch nor Debian have problems, Slackware does. However, some remarks. You notice, in the grub.cfg, that in 10_linux the line beginning with 'linux' gives the device as a UUID number whereas in the os-probe section the line gives it as /dev/mmcblk0p3. And that, /dev/mmcblk0p3 is precisely what the bootloader cannot find. The message says: "No such file or directory". So this is one thing. The other is that line, the one begining with linux, in 10_linux has a lot of kernel parameters: rw, et cetera whereas in the os-probe it has none. In the lilo.conf one had to put 'readonly'. What if I add the ro option?
Anyway, once I have Debian running, I will follow trying with slackware. It seems obvious to me that volkerdi knows the solution. Mine can't be the first attempt at installing Slackware on eMMC. Only trouble with Debian is it has not the wi-fi driver. But this will go in another thread. Thanks a lot for your posts, BW.
I give up. Passing on to Debian. You are right. Neither Arch nor Debian have problems, Slackware does. However, some remarks. You notice, in the grub.cfg, that in 10_linux the line beginning with 'linux' gives the device as a UUID number whereas in the os-probe section the line gives it as /dev/mmcblk0p3. And that, /dev/mmcblk0p3 is precisely what the bootloader cannot find. The message says: "No such file or directory". So this is one thing. The other is that line, the one begining with linux, in 10_linux has a lot of kernel parameters: rw, et cetera whereas in the os-probe it has none. In the lilo.conf one had to put 'readonly'. What if I add the ro option?
Anyway, once I have Debian running, I will follow trying with slackware. It seems obvious to me that volkerdi knows the solution. Mine can't be the first attempt at installing Slackware on eMMC. Only trouble with Debian is it has not the wi-fi driver. But this will go in another thread. Thanks a lot for your posts, BW.
NP, though again, if you are putting on two distro in a dual boot, the one that does work, ie Debain, or Arch, establish its grub, install Slackware as your second distro, skip installing Lilo let it finish installing, reboot, go into the established Disto, the other one, update its grub to pick up Slackware then try booting into it.
that'd be my last ditch attempt. Until I thought of something else.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.