[linux] grub-install voor debian-live CD
Derry
cl3m0t op gmail.com
Zo Dec 5 23:05:56 CET 2021
On 05-12-2021 17:04, George Schramkowski wrote:
>
>> Op 05-12-2021 15:58 schreef Paul Slootman
>> <paul+nospam op wurtel.net>:
>>
>>
>> Ten eerste, wat volgens mij nog niemand expliciet genoemd heeft: je
>> hebt dus geen (U)EFI systeem, aangezien je nog "traditionele" DOS
>> fdisk tabellen hebt (UEFI gebruikt GPT en die kent geen extended
>> partitions).
>>
>> On Sun 05 Dec 2021, George Schramkowski wrote:
>>>
>>> Ik heb grub-install in de live sessie kunnen installeren via
>>> grub2-common.
>>>
>>> Ik moest echter de optie --directory=/mnt/boot/grub/i386-pc
>>> meegeven met grub-install. Maar dit was niet voldoende. Je moet
>>> nog een chroot doen (iemand anders op dit forum wees er al op) en
>>> ook update-grub doen. Ik heb daar op internet instructies voor
>>> gevonden (en uitgevoerd), maar ik weet niet meer waar :-(.
>>>
>>> Ik heb bovenstaande op de root partitie van m'n Debian systeem
>>> gedaan. Merkwaardigerwijze vond update-grub toen geen Debian(!).
>>> Dat leverde dus een bootmenu op met win10, Ubuntu maar ZONDER
>>> Debian. Ik kan dus enkel win10 en Ubuntu booten.
>>
>> Ik zou de rescue option van de debian boot image gebruiken om de
>> root van je debian installatie te mounten, en dan de optie kiezen
>> om daarop een shell te starten. Dan ben je dus op je debian
>> installatie via een chroot.
>>
>> Daarbinnen dan niet vergeten /boot te mounten, en dan
>> grub-install. Indien nodig /dev/sda opgeven, aangezien dat is
>> waarvandaan jouw systeem boot.
>>
>> Als dat te spannend is, probeer dan de Ubuntu omgeving te booten,
>> en dan daarin /boot/grub/grub.cfg te editen om de Debian omgeving
>> erbij te zetten. Dat komt neer op een menuentry { ... } alinea te
>> dupliceren en daarbij de naam aanpassen (wel zo makkelijk...), de
>> "set root=", "linux=" en "initrd=" regels aanpassen.
>>
>> "set root=" geeft aan wat de root *voor grub* is. Dat zal dan
>> worden: set root='(hd1,msdos1)'
>>
>> Ik gok dat je root device /dev/sdb2 is? Dus:
>>
>> linux vmlinuz-5.10.0-8-amd64 root=/dev/sdb2 ro initrd
>> initrd.img-5.10.0-8-amd64
>>
>> volgens de info die je geeft. Een evt. "search --no-floppy ..."
>> regel kun je verwijderen, die zoekt ook de grub root op, een beetje
>> dubbelop dus.
>>
>> Al je dan zo in je debian omgeving kan komen, dan kun je daar weer
>> grub-install draaien.
>>
>>
>> Paul
>
> Er zijn al voor Debian menuentries gedefinieerd in de grub.cfg van
> Ubuntu. Een zo'n entry is
>
> menuentry 'Debian GNU/Linux 11 (bullseye) (on /dev/sdb2)' --class
> debian --class gnu-linux --class gnu --class os $menuentry_id_option
> 'osprober-gnulinux-simple-638f3efc-6924-45c4-be46-fe496c4d61a6' {
> insmod part_msdos insmod ext2 set root='hd1,msdos1' if [
> x$feature_platform_search_hint = xy ]; then search --no-floppy
> --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1
> --hint-baremetal=ahci1,msdos1 9038d26e-4b6e-4ef2-9f66-0757cdd2b0f0
> else search --no-floppy --fs-uuid --set=root
> 9038d26e-4b6e-4ef2-9f66-0757cdd2b0f0 fi linux /vmlinuz-5.10.0-8-amd64
> root=UUID=638f3efc-6924-45c4-be46-fe496c4d61a6 ro quiet initrd
> /initrd.img-5.10.0-8-amd64 }
>
>
> Deze wijst naar /dev/sdb2 maar dat is de root partitie van Debian,
> ik heb dit ook gecontroleerd door de UUID van bovenstaande entry te
> vergelijken met / in /etc/fstab op Debian. Ik heb ook een /boot
> partitie en dat is /dev/sdb1 (daar staan de images etc, zie mijn
> vorige E-mail). Is deze bovenstaande verwijzing dan wel in orde of
> moet ik naar de /boot partitie verwijzen? Indien nee, dan is het mij
> een raadsel waarom ik via update-grub op Ubuntu geen grub-lijst met
> Debian krijg.
/boot onder je systempartitie /dev/sdb2 is de mountpoint van je boot
partitie /dev/sdb1. De verwijzing naar /dev/sdb2 is volgens mij juist en
niet het probleem, maar je mag het veranderen als je het wilt uitproberen.
Heb je eigenlijk al op Ubuntu grub-install /dev/sda uitgevoerd voordat
je update-grub deed?
> Groetjes,
>
> George
>
Groet,
Derry
Meer informatie over de Linux
maillijst