Porto la mia esperienza, nel caso di installazione in multiboot di Manjaro con altri sistemi linux, per esempio Ubuntu e se si vuole avere ubuntu come sistema predefinito, scavalcando il problema che si ha con Manjaro avviato dal grub di altri sistemi.
Ho installato Manjaro, installando il suo bootloader (grub) sul dispositivo, cioè
/dev/sda, al riavvio il grub che comanda è quello di Manjaro, e lì, nessun problema, vengono rilevati gli altri sistemi linux e si avviano normalmente.
Il problema sorge se reinstalliamo su
/dev/sda il grub di un altro sistema linux (nel mio caso Kubuntu) in questo caso, avviando Manjaro dal grub di Kubuntu, si ha un kernel panic e Manjaro non si avvia.
Soluzione trovata, creare una voce personalizzata per Manjaro in
/etc/grub.d/40_customTale menuentry la si può copiare direttamente dal
/boot/grub/grub.cfg con l'aggiunta di una parte (si potrebbe fare anche nel file grub.cfg ma in quel caso la modifica non è permanente, cioè, con l'installazione di un aggiornamento del kernel di ubuntu, sparirebbe da grub.cfg)
In
/boot/grub/grub.cfg di Ubuntu si troverà, tra le altre, la entry di Manjaro, esempio
menuentry 'Manjaro Linux (15.12) (su /dev/sda12)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-b8028816-6500-4140-aa3f-0e784aa465ff' {
insmod part_msdos
insmod ext2
set root='hd0,msdos12'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos12 --hint-efi=hd0,msdos12 --hint-baremetal=ahci0,msdos12 b8028816-6500-4140-aa3f-0e784aa465ff
else
search --no-floppy --fs-uuid --set=root b8028816-6500-4140-aa3f-0e784aa465ff
fi
linux /boot/vmlinuz-4.1-i686 root=UUID=b8028816-6500-4140-aa3f-0e784aa465ff rw quiet splash resume=UUID=3b905134-992c-482d-8f39-8aff9357a4b8
initrd /boot/intel-ucode.img
}
selezionarla, e copiarla con privilegi di root in
/etc/grub.d/40_custom di ubuntu, aggiungendo alla riga finale l'initramfs.img riferita al kernel di Manjaro (si può vedere dal codice stesso copiato, nel mio caso si vede sopra il kernel (4.1-i686) "
/boot/vmlinuz-4.1-i686"
quindi andrà aggiunta la riga
/boot/initramfs-4.1-i686.imgIl codice finale da aggiungere in
/etc/grub.d/40_custom sarà quello trovato in
/boot/grub/grub.cfg + la riga da aggiungere
menuentry 'Manjaro Linux KDE (su /dev/sda12)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-b8028816-6500-4140-aa3f-0e784aa465ff' {
insmod part_msdos
insmod ext2
set root='hd0,msdos12'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos12 --hint-efi=hd0,msdos12 --hint-baremetal=ahci0,msdos12 b8028816-6500-4140-aa3f-0e784aa465ff
else
search --no-floppy --fs-uuid --set=root b8028816-6500-4140-aa3f-0e784aa465ff
fi
linux /boot/vmlinuz-4.1-i686 root=UUID=b8028816-6500-4140-aa3f-0e784aa465ff rw quiet splash resume=UUID=3b905134-992c-482d-8f39-8aff9357a4b8
initrd /boot/intel-ucode.img /boot/initramfs-4.1-i686.img
}
aggiunto il codice in
/etc/grub.d/40_custom salvare il file e chiuderlo ed eseguire l'update di grub.
La parte tra gli apici, questa
menuentry 'Manjaro Linux (15.12) (su /dev/sda12)'
si può cambiare a piacimento, anche perchè così, non si confonde con l'entry originale (che comunque resta in grub di ubuntu e non si avvia) io per esempio, ho messo
menuentry 'Manjaro Linux KDE (su /dev/sda12)'
dopo l'update di grub da ubuntu, riavviare e scegliere la nuova entry creata per Manjaro.
se interessa , aggiungo come nascondere la entry non funzionante dal grub di Ubuntu, in modo da avere solo la nuova creata ad hoc.
I codici messi sono esempi, che riguardano il mio sistema, quindi non fate copia/incolla, ognuno avrà i suoi...ci tenevo a dirlo, magari è superfluo, ma non si sa mai.....ciao