Než jsem si nainstaloval Fedoru 16 používal jsem Mandrivu 2011, kterou mám stále na disku. Při startu PC je v grubu 2 pod možností volby linux (on /dev/sda5). Pokud zvolím tuto možnost objeví se na obrazovce :
vga=788 is deprecated. Use set gfxpayload=800x600x16, 800x600 before linux command instead.
error: no such partition
press and key to continue…
Po stisknutí klávesy se objeví hláška:
kernel panic-not syncing: vfs: unable to mount root fs on unknown-bloc (0,0)
id:1, comm: swapper not tained 2.6.38.7-desktop-1mnb2#1
a ještě další text a ikony na klávesnici se rozblikají a pak už jen pomůže reset pro restart
Zajímá mě co bych měl a kde nastavit abych mohl používat obě distribuce, kdysi dávno se mi to povedlo tím že jsem si z editoval soubor /boot/grub/menu.lst, ale to bylo ještě grub. Nyní tuším že fedora používá také grub 2 a nevím kde soubor menu.lst najít a jak ho upravit. Očekával jsem že Mandriva půjde bez jakékoliv úpravy když už ji grub našel sám a nabízí mi jí ke spuštění ale tak to není.
Toto je vzdy trochu ozehave tema, protoze nikdo nevi, jak a kde si mel ci mas nainstalovane zavadece a dane distribuce.
Obecne by grub2 mel byt schopen nastartovat i madrivu - jde jen o to, kde je spravny kernel a initramfs.
Soubor, ktery by si mohl upravit je nyni v /boot/grub2/grub.cfg, ovsem pokud provedes rucni upravu, je problem v tom, ze tento soubor je automaticky generovan pri kazde instalaci jadra, takze by si o zmeny brzy prisel. Idealni je tedy pripsat si vlastni “custom” configuraci do /etc/grub.d/40_custom ovsem je nutno dodrzet styl zapisu z grub.cfg. Zrejme bude potreba upravit i parametry pro kernel madrivy, ktere skript 10_linux nekde posbiral.
Novy grub.cfg se pak vygeneruje prikazem grub2-mkconfig -o /boot/grub2/grub.cfg
To tedy zrovna nevypadá jednoduše.
Asi to nechám být tak jak to je protože se z toho nějak nevidím.
Tady je pro info výpis /boot/grub2/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub2-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="0"
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 {
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
}
set timeout=5
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Fedora (3.1.1-1.fc16.x86_64)' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos8)'
search --no-floppy --fs-uuid --set=root cd4dc669-92ea-42d4-a447-fbe8bf558559
echo 'Loading Fedora (3.1.1-1.fc16.x86_64)'
linux /boot/vmlinuz-3.1.1-1.fc16.x86_64 root=UUID=cd4dc669-92ea-42d4-a447-fbe8bf558559 ro nomodeset rd.md=0 rd.lvm=0 rd.dm=0 KEYTABLE=cz-us-qwertz quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-3.1.1-1.fc16.x86_64.img
}
menuentry 'Fedora Linux, with Linux 3.1.0-7.fc16.x86_64' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos8)'
search --no-floppy --fs-uuid --set=root cd4dc669-92ea-42d4-a447-fbe8bf558559
echo 'Loading Linux 3.1.0-7.fc16.x86_64 ...'
linux /boot/vmlinuz-3.1.0-7.fc16.x86_64 root=UUID=cd4dc669-92ea-42d4-a447-fbe8bf558559 ro nomodeset rd.md=0 rd.lvm=0 rd.dm=0 KEYTABLE=cz-us-qwertz quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-3.1.0-7.fc16.x86_64.img
}
menuentry 'Fedora Linux, with Linux 3.1.0-7.fc16.x86_64 (recovery mode)' --class fedora --class gnu-linux --class gnu --class os {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos8)'
search --no-floppy --fs-uuid --set=root cd4dc669-92ea-42d4-a447-fbe8bf558559
echo 'Loading Linux 3.1.0-7.fc16.x86_64 ...'
linux /boot/vmlinuz-3.1.0-7.fc16.x86_64 root=UUID=cd4dc669-92ea-42d4-a447-fbe8bf558559 ro single nomodeset rd.md=0 rd.lvm=0 rd.dm=0 KEYTABLE=cz-us-qwertz quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 LANG=en_US.UTF-8
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-3.1.0-7.fc16.x86_64.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 "Microsoft Windows XP Professional (on /dev/sda1)" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root C67093007092F681
drivemap -s (hd0) ${root}
chainloader +1
}
menuentry "linux (on /dev/sda5)" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set=root 8b680efc-1bae-4885-b3d0-819543730859
linux /boot/vmlinuz BOOT_IMAGE=linux root=UUID=8b680efc-1bae-4885-b3d0-819543730859 logo.nologo quiet resume=UUID=7b4fcba8-32f3-4fa0-98df-f75845584de5 splash=silent vga=788
initrd (hd0,4)/boot/initrd.img
}
menuentry "linux-nonfb (on /dev/sda5)" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set=root 8b680efc-1bae-4885-b3d0-819543730859
linux /boot/vmlinuz BOOT_IMAGE=linux-nonfb root=UUID=8b680efc-1bae-4885-b3d0-819543730859 resume=UUID=7b4fcba8-32f3-4fa0-98df-f75845584de5
initrd (hd0,4)/boot/initrd.img
}
menuentry "failsafe (on /dev/sda5)" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set=root 8b680efc-1bae-4885-b3d0-819543730859
linux /boot/vmlinuz BOOT_IMAGE=failsafe root=UUID=8b680efc-1bae-4885-b3d0-819543730859 nokmsboot failsafe
initrd (hd0,4)/boot/initrd.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 $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
### BEGIN /etc/grub.d/90_persistent ###
### END /etc/grub.d/90_persistent ###
Nic na tom neni, otevri tento soubor v geditu a zkus zmenit v
menuentry "linux (on /dev/sda5)" --class gnu-linux --class gnu --class os
initrd (hd0,4)/boot/initrd.img
na
initrd /boot/initrd.img
Jde o to, ze grub2 ponekud zmenil cislovani oddilu na disku a v konfiguraci kterou vygeneruje os-prober zrejme vezme z mandriva configu spatne cislo oddilu s initrd (navic zbytecne).
Jasne edituj… jedine co se muze stat ze o zmeny pri nekaje dalsi priletosti prijdes, nebo v katastrofalenim pripade ze ten konfig nejak uplne pokazis nenabootujes, ale doufam ze tu zmenu co jsem psal zvladnes bez te katastrofy.
initrd (hd0,4)/boot/initrd.img
na
initrd /boot/initrd.img
a z části úspěch. Objevila se obrazovka s logem Mandrivy a i se zdálo že to nabíhá tak jak má, ale někde je problém.
Poslední řádky výpisu při startu Mandrivy byly:
Started show plymouth boot screen.
Starting /mnt/fedora aborted because a dependency failed.
Starting setup links in /boot for running kernel aborted because a dependency failed.
Starting relabel all filesystems, if necessary aborted because a dependency failed.
Welcome to emergency mode. Use 'systemctl default' or ^D to activate default mode.
Give root password for maintenance.
(or type Control-D to continue).
Snad jsem to opsal dobře, kdybych věděl kam se tento výpis ukládá tak to nemusím přepisovat.
Nevím kde je problém, stisknout Contorl-D jsem zkoušel ale přišlo mi že se nic neděje.
Z toho vypisu se neda nic poznat. Jen ze Mandriva pouziva systemd.
Predpokladam ze se ve Fedore jsi schopen podivat na diskovy oddil s Mandrivou (mel by to byt oddil /dev/sda5, takze prinejhorsim mkdir /mnt/madriva; mount /dev/sda5 /mnt/mandriva). Pak se podivej do adresare /mnt/mandriva/boot/grub/menu.lst nebo pokud tam je grub/grub.cfg - nevim kterou verzi grubu mandriva pouziva. A tam by si mel videt, jake parametry ma mit ten zaznam pro Mandrivu.
což bych řekl jse stejné jako bylo po úpravě jako v příspěvku 22. 11. 2011 19:01 a také se to i stejně chovalo.
Nechápu, proč na to není nějaká gui pro snadné nastavení.
Ano to mas pravdu - vysledek je stejny. Problem ale uz asi nebude v zavadeci ale ve fstab Mandrivy.
Najdi si na diskovem oddilu Mandrivy /etc/fstab - zrejme sis tam pridal pripojovani oddilu Fedory do /mnt/fedora a to je ted spatne. Zakomentuj ten radek nebo ho smaz… ja si porad rikal co tam dela to /mnt/fedora.
GUI na to neni protoze normalne do toho radsi nikdo nema sahat.
Tak tohle pomohlo, problém vyřešen už jde spouštět i Mandriva.
V oddílu Mandrivy jsem /etc/fstab nijak neupravoval, /mnt/fedora se tam přidala sama. Napřed jsem měl nainstalovanou Fedoru, pak jsem nainstaloval Mandrivu, která zřejmě disk s Fedorou našla a sama si upravila fstab a pak jsem nainstaloval znovu Fedoru v jejímž zavaděči už Mandriva byla, ale nešla spouštět.
No chápu, že do toho radši nikdo nemá sahat ale to není důvod aby nebylo GUI přístupné po zadání hesla roota.
Díky za pomoc s problémem, teď už se jen musím rozhodnout u jaké distribuce linuxu zůstanu
Ještě doplním, tak připojování oddílu Fedory do /mnt/fedora v Mandrivě jsem si tam dal původně sám, teď jsem si na to vzpomněl. Přímo v Mandrivě je totiž k editaci nástroj s GUI, přes který jsem to takhle nastavil a pak jsem až nainstaloval znovu Fedoru. Tak se omlouvám za mylnou informaci.
Ta konfigurace grub.cfg je generovana. To ze si ji upravil rucne znamena ze priste az se spusti jeho generovani (teoreticky napr. instalace noveho jadra, i kdyz tam se to dela jinak) tak se ti zmeny v grub.cfg smazou…