You are not logged in.
Hullo mates. I'm not entirely sure if this is an Arch or a Ubuntu question, or even a general knowledge question. I think it's worth asking here since Arch handles my grub, but tell me it's not an Arch problem and I'll move along.
I have multiple OSes installed to my hard drive:
Windows 7 (preinstalled) sda1 and sda2
Arch sda5 and sda6
Kali sda7
Fedora 25 sda8
Ubuntu MATE 16.10 sda9
The hard drive uses MBR, and sda3 is my extended partition. sda4 holds /boot for Arch:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
sda 8:0 0 298.1G 0 disk
├─sda4 8:4 0 1000M 0 part /boot
├─sda2 8:2 0 77.2G 0 part
├─sda9 8:9 0 38.4G 0 part
├─sda7 8:7 0 32.6G 0 part
├─sda5 8:5 0 29.7G 0 part
│ └─cryptroot 254:0 0 29.7G 0 crypt /
├─sda3 8:3 0 1K 0 part
├─sda1 8:1 0 1.5G 0 part
├─sda8 8:8 0 20G 0 part
└─sda6 8:6 0 97.8G 0 part
└─crypthome 254:1 0 97.8G 0 crypt /home
$ sudo parted /dev/sda print
[sudo] password for fred:
Model: ATA TOSHIBA MK3275GS (scsi)
Disk /dev/sda: 320GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 1574MB 1573MB primary ntfs diag
2 1574MB 84.5GB 82.9GB primary ntfs
4 84.5GB 85.5GB 1049MB primary ext4 boot
3 85.5GB 320GB 235GB extended
5 85.5GB 117GB 31.9GB logical
6 117GB 222GB 105GB logical
7 222GB 257GB 35.0GB logical ext4
8 257GB 279GB 21.4GB logical ext4
9 279GB 320GB 41.2GB logical btrfs
I do have os-prober installed, but whever I run `sudo grub-mkconfig -o /boot/grub/grub.cfg`, all of the OSes are found but Ubuntu MATE on sda9:
$ sudo grub-mkconfig -o /boot/grub/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-linux
Found initrd image(s) in /boot: initramfs-linux.img
Found fallback initrd image(s) in /boot: initramfs-linux-fallback.img
Found Windows 7 (loader) on /dev/sda1
Found Windows 7 (loader) on /dev/sda2
Found Kali GNU/Linux Rolling (kali-rolling) on /dev/sda7
Found Fedora release 25 (Twenty Five) on /dev/sda8
done
And sure enough, Ubuntu MATE is not listed from my Grub menu though everything else is.
Can someone help me figure out why this is, and what I should do to have it show up?
One difference is that I installed Ubuntu to a btrfs partition, while all the other LInuxes are ext4. The wiki does say that Grub and btrfs sometimes don't get along, but only when the drive was previously formatted btrfs without partitions, which I did not do.
I also see that I could simply add a menu entry for Ubuntu myself, but I'm curious (or stubborn ) and I'd like to figure out why Grub doesn't see or add the Ubuntu install automatically.
Thanks!
Fred
Offline
Hullo mates
Hello Fred
Two questions:
Do you have btrfs-progs installed?
What is the full output of `grub-mkconfig`?
Offline
G'day HoaS!
I did not have btrfs-progs installed but I do now.
Here's the full output of grub-mkconfig after installing btrfs-progs:
$ sudo grub-mkconfig -o /boot/grub/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-linux
Found initrd image(s) in /boot: initramfs-linux.img
Found fallback initrd image(s) in /boot: initramfs-linux-fallback.img
Found Windows 7 (loader) on /dev/sda1
Found Windows 7 (loader) on /dev/sda2
Found Kali GNU/Linux Rolling (kali-rolling) on /dev/sda7
Found Fedora release 25 (Twenty Five) on /dev/sda8
done
Still no U. Mate.
Offline
I'm just curious, does this work if you build the images from Ubuntu, or one of the other OS'es you have, instead of Arch? Also, why is Windows 7 detected twice...?
I am diagnosed with bipolar disorder. As it turns out, what I thought was my greatest weakness is now my greatest strength.
Everyday, I make a conscious choice to overcome my challenges and my problems. It's not easy, but its better than the alternative...
Offline
Here's the full output of grub-mkconfig after installing btrfs-progs:
$ sudo grub-mkconfig -o /boot/grub/grub.cfg
Sorry to be a stickler for detail but what I actually asked for was the full output of:
# grub-mkconfig
without the -o flag -- sometimes GRUB gets confused and puts the kernel images in the wrong menu entry, perhaps this is what is happening with your Ubuntu kernels.
Speaking of which, perhaps the Ubuntu kernels are strangely named and so not picked up by the (vanilla) Arch GRUB package -- is this the case?
Offline
Sorry to be a stickler for detail but what I actually asked for was the full output of:
# grub-mkconfig
without the -o flag
So you did. :oops: I didn't realise there was a difference 'till now.
Here we are:
# grub-mkconfig
Generating grub configuration file ...
#
# 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 loadfont unicode ; 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 ###
Found linux image: /boot/vmlinuz-linux
Found initrd image(s) in /boot: initramfs-linux.img
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-734bc2d1-9e97-4850-a86d-6c795057dc63' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos4 --hint-efi=hd0,msdos4 --hint-baremetal=ahci0,msdos4 b4fc9661-dcce-4501-9e7e-444a5ed24cb0
else
search --no-floppy --fs-uuid --set=root b4fc9661-dcce-4501-9e7e-444a5ed24cb0
fi
echo 'Loading Linux linux ...'
linux /vmlinuz-linux root=UUID=734bc2d1-9e97-4850-a86d-6c795057dc63 rw cryptdevice=/dev/sda5:cryptroot
echo 'Loading initial ramdisk ...'
initrd /initramfs-linux.img
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-734bc2d1-9e97-4850-a86d-6c795057dc63' {
menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-734bc2d1-9e97-4850-a86d-6c795057dc63' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos4 --hint-efi=hd0,msdos4 --hint-baremetal=ahci0,msdos4 b4fc9661-dcce-4501-9e7e-444a5ed24cb0
else
search --no-floppy --fs-uuid --set=root b4fc9661-dcce-4501-9e7e-444a5ed24cb0
fi
echo 'Loading Linux linux ...'
linux /vmlinuz-linux root=UUID=734bc2d1-9e97-4850-a86d-6c795057dc63 rw cryptdevice=/dev/sda5:cryptroot
echo 'Loading initial ramdisk ...'
initrd /initramfs-linux.img
}
Found fallback initrd image(s) in /boot: initramfs-linux-fallback.img
menuentry 'Arch Linux, with Linux linux (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-fallback-734bc2d1-9e97-4850-a86d-6c795057dc63' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos4 --hint-efi=hd0,msdos4 --hint-baremetal=ahci0,msdos4 b4fc9661-dcce-4501-9e7e-444a5ed24cb0
else
search --no-floppy --fs-uuid --set=root b4fc9661-dcce-4501-9e7e-444a5ed24cb0
fi
echo 'Loading Linux linux ...'
linux /vmlinuz-linux root=UUID=734bc2d1-9e97-4850-a86d-6c795057dc63 rw cryptdevice=/dev/sda5:cryptroot
echo 'Loading initial ramdisk ...'
initrd /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 ###
Found Windows 7 (loader) on /dev/sda1
menuentry 'Windows 7 (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-A8A8985DA8982C36' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 A8A8985DA8982C36
else
search --no-floppy --fs-uuid --set=root A8A8985DA8982C36
fi
parttool ${root} hidden-
chainloader +1
}
Found Windows 7 (loader) on /dev/sda2
menuentry 'Windows 7 (loader) (on /dev/sda2)' --class windows --class os $menuentry_id_option 'osprober-chain-EA74BDEB74BDBAA1' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2 EA74BDEB74BDBAA1
else
search --no-floppy --fs-uuid --set=root EA74BDEB74BDBAA1
fi
parttool ${root} hidden-
chainloader +1
}
Found Kali GNU/Linux Rolling (kali-rolling) on /dev/sda7
menuentry 'Kali GNU/Linux Rolling (kali-rolling) (on /dev/sda7)' --class kali --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-8f102ce1-0e13-42d7-84f8-276975c840f8' {
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 8f102ce1-0e13-42d7-84f8-276975c840f8
else
search --no-floppy --fs-uuid --set=root 8f102ce1-0e13-42d7-84f8-276975c840f8
fi
linux /boot/vmlinuz-4.8.0-kali2-amd64 root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro initrd=/install/initrd.gz quiet
initrd /boot/initrd.img-4.8.0-kali2-amd64
}
submenu 'Advanced options for Kali GNU/Linux Rolling (kali-rolling) (on /dev/sda7)' $menuentry_id_option 'osprober-gnulinux-advanced-8f102ce1-0e13-42d7-84f8-276975c840f8' {
menuentry 'Kali GNU/Linux (on /dev/sda7)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.8.0-kali2-amd64--8f102ce1-0e13-42d7-84f8-276975c840f8' {
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 8f102ce1-0e13-42d7-84f8-276975c840f8
else
search --no-floppy --fs-uuid --set=root 8f102ce1-0e13-42d7-84f8-276975c840f8
fi
linux /boot/vmlinuz-4.8.0-kali2-amd64 root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro initrd=/install/initrd.gz quiet
initrd /boot/initrd.img-4.8.0-kali2-amd64
}
menuentry 'Kali GNU/Linux, with Linux 4.8.0-kali2-amd64 (on /dev/sda7)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.8.0-kali2-amd64--8f102ce1-0e13-42d7-84f8-276975c840f8' {
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 8f102ce1-0e13-42d7-84f8-276975c840f8
else
search --no-floppy --fs-uuid --set=root 8f102ce1-0e13-42d7-84f8-276975c840f8
fi
linux /boot/vmlinuz-4.8.0-kali2-amd64 root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro initrd=/install/initrd.gz quiet
initrd /boot/initrd.img-4.8.0-kali2-amd64
}
menuentry 'Kali GNU/Linux, with Linux 4.8.0-kali2-amd64 (systemd) (on /dev/sda7)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.8.0-kali2-amd64--8f102ce1-0e13-42d7-84f8-276975c840f8' {
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 8f102ce1-0e13-42d7-84f8-276975c840f8
else
search --no-floppy --fs-uuid --set=root 8f102ce1-0e13-42d7-84f8-276975c840f8
fi
linux /boot/vmlinuz-4.8.0-kali2-amd64 root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro initrd=/install/initrd.gz quiet init=/lib/systemd/systemd
initrd /boot/initrd.img-4.8.0-kali2-amd64
}
menuentry 'Kali GNU/Linux, with Linux 4.8.0-kali2-amd64 (recovery mode) (on /dev/sda7)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.8.0-kali2-amd64-root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro single initrd=/install/initrd.gz-8f102ce1-0e13-42d7-84f8-276975c840f8' {
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 8f102ce1-0e13-42d7-84f8-276975c840f8
else
search --no-floppy --fs-uuid --set=root 8f102ce1-0e13-42d7-84f8-276975c840f8
fi
linux /boot/vmlinuz-4.8.0-kali2-amd64 root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro single initrd=/install/initrd.gz
initrd /boot/initrd.img-4.8.0-kali2-amd64
}
menuentry 'Kali GNU/Linux, with Linux 4.8.0-kali1-amd64 (on /dev/sda7)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.8.0-kali1-amd64--8f102ce1-0e13-42d7-84f8-276975c840f8' {
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 8f102ce1-0e13-42d7-84f8-276975c840f8
else
search --no-floppy --fs-uuid --set=root 8f102ce1-0e13-42d7-84f8-276975c840f8
fi
linux /boot/vmlinuz-4.8.0-kali1-amd64 root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro initrd=/install/initrd.gz quiet
initrd /boot/initrd.img-4.8.0-kali1-amd64
}
menuentry 'Kali GNU/Linux, with Linux 4.8.0-kali1-amd64 (systemd) (on /dev/sda7)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.8.0-kali1-amd64--8f102ce1-0e13-42d7-84f8-276975c840f8' {
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 8f102ce1-0e13-42d7-84f8-276975c840f8
else
search --no-floppy --fs-uuid --set=root 8f102ce1-0e13-42d7-84f8-276975c840f8
fi
linux /boot/vmlinuz-4.8.0-kali1-amd64 root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro initrd=/install/initrd.gz quiet init=/lib/systemd/systemd
initrd /boot/initrd.img-4.8.0-kali1-amd64
}
menuentry 'Kali GNU/Linux, with Linux 4.8.0-kali1-amd64 (recovery mode) (on /dev/sda7)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.8.0-kali1-amd64-root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro single initrd=/install/initrd.gz-8f102ce1-0e13-42d7-84f8-276975c840f8' {
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 8f102ce1-0e13-42d7-84f8-276975c840f8
else
search --no-floppy --fs-uuid --set=root 8f102ce1-0e13-42d7-84f8-276975c840f8
fi
linux /boot/vmlinuz-4.8.0-kali1-amd64 root=UUID=8f102ce1-0e13-42d7-84f8-276975c840f8 ro single initrd=/install/initrd.gz
initrd /boot/initrd.img-4.8.0-kali1-amd64
}
}
Found Fedora release 25 (Twenty Five) on /dev/sda8
menuentry 'Fedora release 25 (Twenty Five) (on /dev/sda8)' --class fedora --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-f4192224-a5c0-4021-aa14-2b5bb08b09fe' {
insmod part_msdos
insmod ext2
set root='hd0,msdos8'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos8 --hint-efi=hd0,msdos8 --hint-baremetal=ahci0,msdos8 f4192224-a5c0-4021-aa14-2b5bb08b09fe
else
search --no-floppy --fs-uuid --set=root f4192224-a5c0-4021-aa14-2b5bb08b09fe
fi
linux /boot/vmlinuz-0-rescue-f1b2549b2c474628909bbaedda1c3209 root=/dev/sda8
initrd /boot/initramfs-0-rescue-f1b2549b2c474628909bbaedda1c3209.img
}
submenu 'Advanced options for Fedora release 25 (Twenty Five) (on /dev/sda8)' $menuentry_id_option 'osprober-gnulinux-advanced-f4192224-a5c0-4021-aa14-2b5bb08b09fe' {
menuentry 'Fedora release 25 (Twenty Five) (on /dev/sda8)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-0-rescue-f1b2549b2c474628909bbaedda1c3209--f4192224-a5c0-4021-aa14-2b5bb08b09fe' {
insmod part_msdos
insmod ext2
set root='hd0,msdos8'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos8 --hint-efi=hd0,msdos8 --hint-baremetal=ahci0,msdos8 f4192224-a5c0-4021-aa14-2b5bb08b09fe
else
search --no-floppy --fs-uuid --set=root f4192224-a5c0-4021-aa14-2b5bb08b09fe
fi
linux /boot/vmlinuz-0-rescue-f1b2549b2c474628909bbaedda1c3209 root=/dev/sda8
initrd /boot/initramfs-0-rescue-f1b2549b2c474628909bbaedda1c3209.img
}
menuentry 'Fedora release 25 (Twenty Five) (on /dev/sda8)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.8.10-300.fc25.x86_64--f4192224-a5c0-4021-aa14-2b5bb08b09fe' {
insmod part_msdos
insmod ext2
set root='hd0,msdos8'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos8 --hint-efi=hd0,msdos8 --hint-baremetal=ahci0,msdos8 f4192224-a5c0-4021-aa14-2b5bb08b09fe
else
search --no-floppy --fs-uuid --set=root f4192224-a5c0-4021-aa14-2b5bb08b09fe
fi
linux /boot/vmlinuz-4.8.10-300.fc25.x86_64 root=/dev/sda8
initrd /boot/initramfs-4.8.10-300.fc25.x86_64.img
}
menuentry 'Fedora release 25 (Twenty Five) (on /dev/sda8)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-4.8.6-300.fc25.x86_64--f4192224-a5c0-4021-aa14-2b5bb08b09fe' {
insmod part_msdos
insmod ext2
set root='hd0,msdos8'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos8 --hint-efi=hd0,msdos8 --hint-baremetal=ahci0,msdos8 f4192224-a5c0-4021-aa14-2b5bb08b09fe
else
search --no-floppy --fs-uuid --set=root f4192224-a5c0-4021-aa14-2b5bb08b09fe
fi
linux /boot/vmlinuz-4.8.6-300.fc25.x86_64 root=/dev/sda8
initrd /boot/initramfs-4.8.6-300.fc25.x86_64.img
}
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### 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 ###
done
And here's a gist to make it easier to read:
https://gist.github.com/Fred-Barclay/b5 … 781d27cbdb
The Ubuntu kernel img names are **literally** generic (initrd.img-VERSION-generic and vmlinuz-VERSION-generic).
Okay, here's where it gets interesting. Don't laugh at my confusion (or mistakes)... too much. Scratch that, feel free to laugh!
I just opened the Ubuntu MATE partition from Arch and I have the weirdest setup:
$ls
@ @home
Now why on eath is / called @ ? (Rhetorical question - don't feel compelled to answer.) And why does /home, or @home, rather, have it's own directory independent of / ? I certainly didn't set it up like that. Nor did I encrypt any of U MATE or set up LVM or do anything other than a vanilla install.
Perhaps btrfs uses @ instead of / ? Snapshotting, maybe? It's certainly something I've never heard of and I can't find it in a quick scan of the wiki. HoaS, don't I remember reading on the Debian forums that you use btrfs? Is this normal?
At any rate, I suspect that's the reason that grub can't find the Ubuntu kernels.
@JohnBobSmith:
Ubuntu does find itself when it handles grub, but since my Arch partitions are encrypted I'd rather not have to edit crypttab again, especially since the Ubuntu MATE install is simply a test (my computer can't handle virtualisation all that well, so I end up multi-booting whenever I want to test a distro). Better to leave Arch in control of Grub, IMHO.
I'm not entirely positive why Windows 7 was detected twice. I think there's a bootloader on sda1 and sda2?
It was already installed when I got this computer so I don't know the particulars about how it was installed. I don't expect it'll get much use though...
Cheers, and thanks!
Fred
Last edited by Fred Barclay (2017-01-03 02:17:23)
Offline
Now why on eath is / called @ ? (Rhetorical question - don't feel compelled to answer.) And why does /home, or @home, rather, have it's own directory independent of / ? I certainly didn't set it up like that. Nor did I encrypt any of U MATE or set up LVM or do anything other than a vanilla install.
Answer - BTRFS Subvolumes.
It appears that Ubuntu Mate now defaults to using btrfs subvolumes on a new installation. If you check Mates fstab you should see that the @ subvolume is mounted at / and the @home subvolume is mounted at /home. I'd guess that this is what's causing the grub autodetection to fall over, it's only looking in a partitions root for boot files, not in different subvolumes.
You can manually add an entry for your Mate install by creating an /etc/grub.d/40_custom file with the following content...
menuentry "Ubuntu Mate" {
set root=(hd0,9)
linux /boot/vmlinuz rootflags=subvol=@
initrd /@/boot/initrd.img
}
substituting the correct filenames for your kernel images and then regenerating your grub config.
Offline
Ah, so that's what it is!
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda9 during installation
UUID=2460d602-30ff-4705-97df-9b038124787d / btrfs defaults,subvol=@ 0 1
# /home was on /dev/sda9 during installation
UUID=2460d602-30ff-4705-97df-9b038124787d /home btrfs defaults,subvol=@home 0 2
I tried manually adding the listing to Grub as you suggested but I get this message at boot:
error: file 'boot/vmlinuz-4.8.0-32-generic' not found.
error: you need to load the kernel first.
Press any key to continue...
I presume this means that one of my paths in /etc/grub.d/40_custom is incorrect, so I'm going to start experimenting with that.
For reference, here's what it currently looks like:
$ cat /etc/grub.d/40_custom
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
menuentry "Ubuntu Mate" {
set root=(hd0,9)
linux /boot/vmlinuz-4.8.0-32-generic rootflags=subvol=@
initrd /@/boot/initrd.img-4.8.0-32-generic
Offline