CJ Fearnley on 29 Aug 2016 12:23:17 -0700 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: [PLUG] Making sure GRUB2 detects your root volume |
Looks like I used dos mode: cjf@tetrahelix:~$ sudo grub-install --target=i386-pc /dev/sda Installing for i386-pc platform. grub-install: error: disk `lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/xAJ9fS-1bIS-oxAI-VF82-7no4-mrLe-XmNTzC' not found. [status 1] cjf@tetrahelix:~$ sudo grub-install --target=x86_64-efi /dev/sda grub-install: error: /usr/lib/grub/x86_64-efi/modinfo.sh doesn't exist. Please specify --target or --directory. [status 1] This system successfull had grub installed for 4 years before disk failure forced a reinstall. It booted once correctly via grub into lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/xAJ9fS-1bIS-oxAI-VF82-7no4-mrLe-XmNTzC that was straight lvm on one disk. Then I converted the LVM to RAID-1 and grub has been failing ever since. What step did I miss when converting the LVM to RAID-1 to make grub work? Grub doesn't seem to have noticed the RAID-1 change and it appears to remember the old LVM booting even after I purged and reinstalled all grub packages. Is there no way to tell grub which root partition to use? Here is my gdisk output in case it helps any: cjf@tetrahelix:~$ sudo gdisk -l /dev/sda GPT fdisk (gdisk) version 0.8.10 Partition table scan: MBR: protective BSD: not present APM: not present GPT: present Found valid GPT with protective MBR; using GPT. Disk /dev/sda: 3907029168 sectors, 1.8 TiB Logical sector size: 512 bytes Disk identifier (GUID): CC804C51-77C9-4754-B44F-5A4BADF99F3F Partition table holds up to 128 entries First usable sector is 34, last usable sector is 3907029134 Partitions will be aligned on 2048-sector boundaries Total free space is 2157 sectors (1.1 MiB) Number Start (sector) End (sector) Size Code Name 1 2048 4095 1024.0 KiB EF02 2 4096 491519 238.0 MiB 8200 3 491520 3907028991 1.8 TiB 8E00 $ sudo gdisk -l /dev/sdb [sudo] password for cjf: GPT fdisk (gdisk) version 0.8.10 Partition table scan: MBR: protective BSD: not present APM: not present GPT: present Found valid GPT with protective MBR; using GPT. Disk /dev/sdb: 3907029168 sectors, 1.8 TiB Logical sector size: 512 bytes Disk identifier (GUID): 5C2A59E6-8DE1-4E00-BEE1-C208D42E1152 Partition table holds up to 128 entries First usable sector is 34, last usable sector is 3907029134 Partitions will be aligned on 2048-sector boundaries Total free space is 2014 sectors (1007.0 KiB) Number Start (sector) End (sector) Size Code Name 1 2048 4095 1024.0 KiB EF02 2 4096 491519 238.0 MiB 8200 3 491520 3907029134 1.8 TiB 8E00 On Mon, Aug 29, 2016 at 12:25:52PM -0400, Keith C. Perry wrote: > Did you install in grub in dos or gpt mode? In trying to get my Arch USB system to work on UEFI system and legacy boot system I recently went through this. I seem to have gotta a build that does work for both cases but still not my Chromebook (which appears to only want to boot my Syslinux multiboot USB flashdrive- different issue) > > My partition map... > > gdisk -l /dev/sdb > GPT fdisk (gdisk) version 1.0.1 > > Partition table scan: > MBR: protective > BSD: not present > APM: not present > GPT: present > > Found valid GPT with protective MBR; using GPT. > Disk /dev/sdb: 494403584 sectors, 235.8 GiB > Logical sector size: 512 bytes > Disk identifier (GUID): 1D5A0BBE-1D6B-44EA-A7E2-3FF3A9E30DB2 > Partition table holds up to 128 entries > First usable sector is 34, last usable sector is 494403550 > Partitions will be aligned on 2-sector boundaries > Total free space is 0 sectors (0 bytes) > > Number Start (sector) End (sector) Size Code Name > 1 2048 1026047 500.0 MiB EF00 EFI System > 2 1026048 494403550 235.3 GiB 8300 Linux filesystem > 4 34 2047 1007.0 KiB EF02 BIOS boot partition > > I originally has this as partition 1 - 3 but think I read something about the BIOS boot partition needing to be last. I do think it will work that way actually. > > The bigger problem I had on Arch was that I needed to create another preset for build the initrd with pointer to /boot/efi for the EFI partion. Once I got that right, the it was just a matter of running grub for both cases. > > First run update-grub (which is just a script that runs grub-mkconfig -o /boot/grub/grub.cfg) then, > > So for dos... > grub-install --target=i386-pc /dev/sda > mkinitcpio -p linux > > ...and for EFI... (making sure /dev/sda4 is mounted to /boot/efi) > grub-install --target=x86_64-efi /dev/sda > mkinitcpio -p linux-efi > > I say all that for reference to see if it helps generally but specially for LV's I think key is to keep it simple. I have a system I recently rebuild and it does NOT use a BIOS partition. It is a mirrored system with one drive being a dos and the other being gpt (they have size mis-match). GPT is just used so that the entire partition can be seen for booting purposes but I NOT do grub-install with an EFI target. Linux is apparently ok with such and animal (i.e. gpt drive with mbr install). > > While that might be "wierd" it is clean because the system (which only has a 50Gb system volume) uses LVM so there are no partition size restrictions. > > ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ > Keith C. Perry, MS E.E. > Owner, DAO Technologies LLC > (O) +1.215.525.4165 x2033 > (M) +1.215.432.5167 > www.daotechnologies.com > > ----- Original Message ----- > From: "cjf" <cjf@LinuxForce.net> > To: "Philadelphia Linux User's Group Discussion List" <plug@lists.phillylinux.org> > Sent: Sunday, August 28, 2016 7:16:29 PM > Subject: Re: [PLUG] Making sure GRUB2 detects your root volume > > I added the following to my /etc/default/grub: > GRUB_CMDLINE_LINUX="" > GRUB_CMDLINE_LINUX="rd.lvm.lv=tetrahelix/root > rd.luks.uuid=bc49d20d-c4b8-4cfb-bd36-16e2c04062e9 > rd.lvm.lv=tetrahelix/root rhgb quiet" > > But I get the same error as before: > > $ sudo update-grub > Generating grub configuration file ... > Found linux image: /boot/vmlinuz-3.16.0-4-amd64 > Found initrd image: /boot/initrd.img-3.16.0-4-amd64 > /usr/sbin/grub-probe: error: disk `lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/xAJ9fS-1bIS-oxAI-VF82-7no4-mrLe-XmNTzC' not found. > /usr/sbin/grub-probe: error: disk `lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/xAJ9fS-1bIS-oxAI-VF82-7no4-mrLe-XmNTzC' not found. > /usr/sbin/grub-probe: error: disk `lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/xAJ9fS-1bIS-oxAI-VF82-7no4-mrLe-XmNTzC' not found. > done > > $ sudo grub-mkconfig -o /boot/grub/grub.cfg > Generating grub configuration file ... > Found linux image: /boot/vmlinuz-3.16.0-4-amd64 > Found initrd image: /boot/initrd.img-3.16.0-4-amd64 > /usr/sbin/grub-probe: error: disk `lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/xAJ9fS-1bIS-oxAI-VF82-7no4-mrLe-XmNTzC' not found. > /usr/sbin/grub-probe: error: disk `lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/xAJ9fS-1bIS-oxAI-VF82-7no4-mrLe-XmNTzC' not found. > /usr/sbin/grub-probe: error: disk `lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/xAJ9fS-1bIS-oxAI-VF82-7no4-mrLe-XmNTzC' not found. > done > > I have no logical volume > lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/xAJ9fS-1bIS-oxAI-VF82-7no4-mrLe-XmNTzC > > The correct logical volume is > lvmid/dcqgzj-awwK-OfNY-pVPk-dJNm-pEbM-OfP6VO/bc49d20d-c4b8-4cfb-bd36-16e2c04062e9 > > I suspect update-grub and grub-mkconfig are reading the result stored in > my gpt BIOS boot partition from before I converted the LVM to be RAID-1. > > I still don't have a clue as to how to override grub's intransigence in > guessing the incorrect LV to boot. > > I am almost desperate enough to try zeroing /dev/sda1 and /dev/sda2 > (my two gpt BIOS boot partitions) in the hopes that once grub can no > longer access the incorrect information that it wrote there, it might do > the right thing. But zeroing a partition is something that is the very, > very last resort. Always :) > > Is there no reasonable solution? > > On Wed, Aug 03, 2016 at 07:52:43PM -0400, Mike DePaulo wrote: > > This is the answer to a question at PLUG central: > > > > Edit "/etc/default/grub" > > > > My Fedora 24 laptop has the contents: > > > > GRUB_TIMEOUT=5 > > GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" > > GRUB_DEFAULT=saved > > GRUB_DISABLE_SUBMENU=true > > GRUB_TERMINAL_OUTPUT="console" > > GRUB_CMDLINE_LINUX="rd.lvm.lv=fedora/root > > rd.luks.uuid=luks-62c83a70-f5bf-4b20-aab7-78a2b48f3164 > > rd.lvm.lv=fedora/swap rhgb quiet" > > GRUB_DISABLE_RECOVERY="true" > > > > The option you care about is "rd.lvm.lv". "fedora/root" is the volume > > group name / logical volume name. > > > > Afterwards, run your command to generate your grub.cfg. This varies > > based on whether you are in BIOS or UEFI mode. > > > > BIOS mode: > > grub2-mkconfig -o /boot/grub2/grub.cfg > > > > UEFI mode: > > A command like this ("fedora" string will differ for your distro): > > grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg > > ___________________________________________________________________________ > > Philadelphia Linux Users Group -- http://www.phillylinux.org > > Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce > > General Discussion -- http://lists.phillylinux.org/mailman/listinfo/plug > > -- > CJ Fearnley | LinuxForce Inc. > cjf@LinuxForce.net | IT Projects & Systems Maintenance > http://www.LinuxForce.net | http://blog.remoteresponder.net > ___________________________________________________________________________ > Philadelphia Linux Users Group -- http://www.phillylinux.org > Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce > General Discussion -- http://lists.phillylinux.org/mailman/listinfo/plug > ___________________________________________________________________________ > Philadelphia Linux Users Group -- http://www.phillylinux.org > Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce > General Discussion -- http://lists.phillylinux.org/mailman/listinfo/plug -- CJ Fearnley | LinuxForce Inc. cjf@LinuxForce.net | IT Projects & Systems Maintenance http://www.LinuxForce.net | http://blog.remoteresponder.net ___________________________________________________________________________ Philadelphia Linux Users Group -- http://www.phillylinux.org Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce General Discussion -- http://lists.phillylinux.org/mailman/listinfo/plug