Fórum Root.cz
Hlavní témata => Software => Téma založeno: Pavel 'TIGER' Růžička 09. 04. 2013, 17:41:15
-
Jak nejlépe připravit disk na klonování na další disky, tak aby nebylo nutné bootovat do záchraného systému a opravovat grub2? Problém vidím v UUID a ID disku, nejlepší by bylo přejít asi na PATH, ale nějak se nemohu dočíst, jak ho Grubu2 vnutit. Pak možná bude asi problém i v initrd ...
-
Takže jsem vyzkoušel změnit fstab na path cestu: pci-0000:00:1f.2-scsi-0:0:0:0-part1 pochopitelně party správně přiřazené k oddílům. Dále jsem v /boot/grub2 změnil device.map na pci-0000:00:1f.2-scsi-0:0:0:0 tady pochopitelně bez partu. Nechal jsem vygenerovat nový initrd a nový grub.cfg a stejně při naklonování končím na hlášce:
Trying manual resume from /dev/sda1
resume device /dev/sda1 not found (ignoring)
Trying manual resume from /dev/sda1
resume device /dev/sda1 not found (ignoring)
Waiting for device /dev/root to appear .................................... Could not find /dev/root.
Want me to fall back to /dev/disk/by-path/pci-0000:00:1f.2-scsi-0:0:0:0-part2? (Y/n)
Klávesy Y/n pochopitelně nereagují.
Originál jede bez problému, jen te kopie se přes tohle nehne, tohle vlastně naběhne hned po grubu.
Mám velké podezření na grub.cfg, jelikož tam jsou UUID cesty k disku a i to /dev/sda1 je tam prapodivné. Nicméně všude jsem se dočetl, že grub2 se needituje, ale generuje ... tak jsem si netroufl do toho zasáhnout.
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="${saved_entry}"
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 [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
font="/usr/share/grub2/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=POSIX
insmod gettext
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
insmod gfxmenu
loadfont ($root)/boot/grub2/themes/openSUSE/DejaVuSans-Bold14.pf2
loadfont ($root)/boot/grub2/themes/openSUSE/DejaVuSans10.pf2
loadfont ($root)/boot/grub2/themes/openSUSE/DejaVuSans12.pf2
loadfont ($root)/boot/grub2/themes/openSUSE/ascii.pf2
insmod png
set theme=($root)/boot/grub2/themes/openSUSE/theme.txt
export theme
if [ x${boot_once} = xtrue ]; then
set timeout=0
elif sleep --interruptible 0 ; then
set timeout=2
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'openSUSE 12.3' --class 'opensuse-12-3' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-8d84c8e4-e91e-4320-bcc1-38bd82913eb4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
echo 'Loading Linux 3.7.10-1.1-desktop ...'
linux /boot/vmlinuz-3.7.10-1.1-desktop root=UUID=8d84c8e4-e91e-4320-bcc1-38bd82913eb4 resume=/dev/sda1 splash=silent quiet showopts
echo 'Loading initial ramdisk ...'
initrd /boot/initrd-3.7.10-1.1-desktop
}
submenu 'Advanced options for openSUSE 12.3' $menuentry_id_option 'gnulinux-advanced-8d84c8e4-e91e-4320-bcc1-38bd82913eb4' {
menuentry 'openSUSE 12.3, with Linux 3.7.10-1.1-desktop' --class 'opensuse-12-3' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.7.10-1.1-desktop-advanced-8d84c8e4-e91e-4320-bcc1-38bd82913eb4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
echo 'Loading Linux 3.7.10-1.1-desktop ...'
linux /boot/vmlinuz-3.7.10-1.1-desktop root=UUID=8d84c8e4-e91e-4320-bcc1-38bd82913eb4 resume=/dev/sda1 splash=silent quiet showopts
echo 'Loading initial ramdisk ...'
initrd /boot/initrd-3.7.10-1.1-desktop
}
menuentry 'openSUSE 12.3, with Linux 3.7.10-1.1-desktop (recovery mode)' --class 'opensuse-12-3' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.7.10-1.1-desktop-recovery-8d84c8e4-e91e-4320-bcc1-38bd82913eb4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
echo 'Loading Linux 3.7.10-1.1-desktop ...'
linux /boot/vmlinuz-3.7.10-1.1-desktop root=UUID=8d84c8e4-e91e-4320-bcc1-38bd82913eb4 showopts apm=off noresume edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 nomodeset x11failsafe
echo 'Loading initial ramdisk ...'
initrd /boot/initrd-3.7.10-1.1-desktop
}
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/20_memtest86+ ###
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/20_ppc_terminfo ###
### END /etc/grub.d/20_ppc_terminfo ###
### BEGIN /etc/grub.d/30_os-prober ###
### 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 ###
### BEGIN /etc/grub.d/90_persistent ###
### END /etc/grub.d/90_persistent ###
Tak a co s tím? Chci jen naklonovat identický a funkční stroj, abych nemusel po klonování nic upravovat. Ovšem tento úkol se zdá být naprosto nemožný.
-
No, vykašlat se na nějaké pci a uuid... a použít klasické /dev/sda1, sda2, ... a pak dd if=/dev/sda of=/dev/sdb.
Pokud je v tom systému při startu jediný disk, tak to bude takto fungovat vždycky. Pokud je tam disků víc, pak záleží na tom, jaká dostanou jména (pořadí v jakém je připojí bios). Alternativou pak je použít label, ten by to vyřešil, ale nemám zkušenost jak to bere grub.
-
No, vykašlat se na nějaké pci a uuid... a použít klasické /dev/sda1, sda2, ... a pak dd if=/dev/sda of=/dev/sdb.
Pokud je v tom systému při startu jediný disk, tak to bude takto fungovat vždycky. Pokud je tam disků víc, pak záleží na tom, jaká dostanou jména (pořadí v jakém je připojí bios). Alternativou pak je použít label, ten by to vyřešil, ale nemám zkušenost jak to bere grub.
No fajn a jak mám upravit ten grub.cfg, aby tam neměl ty šílenosti a akceptoval klasiku /dev/sdx? Zkoušel jsem to různě, ale nějak jsem nepochodil. V duchu si říkám, co komu vadilo na původním grubu? Tohle je fakt šílenost, jen dva dny pročítám různé manuály a něco tak primitivního jako je klon systému prostě nefunguje. Hlavně, že máme Linuxové nástroje, které bezproblémově klonují Windows, ale chceme li naklonovat Linux, musíme číst tuny materiálu ...
-
Právě že nijak. ;-)
Jediná manuální úprava je ve fstab. Pak stačí jen přegenerovat initramfs a konfiguraci grubu (v debianu update-initramfs -u && update-grub, v archlinuxu mkinitcpio -p linux && grub-mkconfig -o /boot/grub/grub.cfg) a naklonovat celý disk přes dd. Systém přežije i pokud budeš klonovat přímo v živém systému, právě otestováno ve virtualboxu na debianu.
Samozřejmě, pokud máš LVM, LUKS, či jiné serepetičky, tak musíš upravit i ty, ale jinak problém není... Já nový systém instaluju jen výjimečně, obvykle klonuju už existující.
-
Právě že nijak. ;-)
Jediná manuální úprava je ve fstab. Pak stačí jen přegenerovat initramfs a konfiguraci grubu (v debianu update-initramfs -u && update-grub, v archlinuxu mkinitcpio -p linux && grub-mkconfig -o /boot/grub/grub.cfg) a naklonovat celý disk přes dd. Systém přežije i pokud budeš klonovat přímo v živém systému, právě otestováno ve virtualboxu na debianu.
Samozřejmě, pokud máš LVM, LUKS, či jiné serepetičky, tak musíš upravit i ty, ale jinak problém není... Já nový systém instaluju jen výjimečně, obvykle klonuju už existující.
Tak to jdu schválně zkusit. Mám openSUSE, ale podobnost snad dohledám. Nicméně nezkoušel si klonovat i přes clonezillu?
-
Nezkoušel. Jen výjimečně to klonuju na menší disk a pak to řeším stylem "vytvořit oddíly, rsync dat, chroot, reinstalace grubu".
-
Hm, tak stejně to u mne nezabralo, přepsal jsem oddíly na sdax, spustil mkinitrd a grub-install a výsledek je stejný. Hele, když přepíšeš fstab na klasiku a spustíš ten initramfs s uptadem grubu, jak potom vypadá onen grub.cfg, jsou tam ty šílenosti UUID atp? Mne zaráží, že když změním způsob z id na uuid, či path, tak v grub.cfg je pořád jen to uuid a způsob v něm se nemění ... chápal bych, že když to změním v fstab a nechám to přegenerovat pro grub, že by se to mělo změnit i tam ... ale to se neděje. Je to správně, či nikoliv?
-
Klonoval jsem systém z staršího notebooku na novější (stejný výrobce a typ, jen novější verze notebooku). Taky jsem se obával UUID.
Takže jsem si vytvořil diskové oddíly, změnil jejich UUID tak, aby byly stejné jako na starém disku, nakopíroval soubory, smazal /etc/udev/rules.d/70-persistent-net.rules a /etc/udev/rules.d/70-persistent-cd.rules, reboot, pomocí instalačního DVD jsem obnovil Grub (systémem klik-klik-obnovit Grub), hotovo (Debian Sqeeze).
Před 14 dny jsem dělal to samé, ale jiným způsobem - vytvořil diskové oddíly, obnovil předtím zazálohované diskové oddíy pomocí fsarchiver (ten zálohuje i UUID), smazal /etc/udev/rules.d/70-persistent-net.rules a /etc/udev/rules.d/70-persistent-cd.rules, reboot, pomocí instalačního DVD jsem obnovil Grub (systémem klik-klik-obnovit Grub), hotovo (CentOS 6).
-
Pak by mělo pomoct tohle (v /etc/default/grub) :-)
# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
GRUB_DISABLE_LINUX_UUID=true
-
Ještě to vysvětlím - ta úprava fstabu se týká s ohledem na grub jen toho, jaký oddíl je kam připojený, neřeší styl identifikace. Tzn fstab je potřeba upravit pro připojení oddílů po startu a hlavně pro initramfs, který by jinak skončil na tom, že nemůže najít root. Pro grub je rozhodující ta volba v nastavení, zapomněl jsem na ni. :)
-
Klonoval jsem systém z staršího notebooku na novější (stejný výrobce a typ, jen novější verze notebooku). Taky jsem se obával UUID.
Takže jsem si vytvořil diskové oddíly, změnil jejich UUID tak, aby byly stejné jako na starém disku, nakopíroval soubory, smazal /etc/udev/rules.d/70-persistent-net.rules a /etc/udev/rules.d/70-persistent-cd.rules, reboot, pomocí instalačního DVD jsem obnovil Grub (systémem klik-klik-obnovit Grub), hotovo (Debian Sqeeze).
Před 14 dny jsem dělal to samé, ale jiným způsobem - vytvořil diskové oddíly, obnovil předtím zazálohované diskové oddíy pomocí fsarchiver (ten zálohuje i UUID), smazal /etc/udev/rules.d/70-persistent-net.rules a /etc/udev/rules.d/70-persistent-cd.rules, reboot, pomocí instalačního DVD jsem obnovil Grub (systémem klik-klik-obnovit Grub), hotovo (CentOS 6).
Tak tomuto bych se rád vyhnul, přeci jen to budu kopírovat na nějakých třicet strojů. U jednoho bych si poradil a nezakládal toto vlákno, ale většího množství už to otravuje.
-
Ještě to vysvětlím - ta úprava fstabu se týká s ohledem na grub jen toho, jaký oddíl je kam připojený, neřeší styl identifikace. Tzn fstab je potřeba upravit pro připojení oddílů po startu a hlavně pro initramfs, který by jinak skončil na tom, že nemůže najít root. Pro grub je rozhodující ta volba v nastavení, zapomněl jsem na ni. :)
Tak tohle už vypadá velmi zajímavě, ale řeknu Ti, Grub2 je celkem šílenej ... rozházené je to po celém systému, nějak se nám vytratila ta jednoduchost. :-/ dříve většinou stačilo sáhnout do menu.lst a vyřešilo se vše. Inu pokrok ...
-
Jo, taky mi přijde, že grub2 to zbytečně komplikuje. Chápu, že asi s příchodem (U)EFI, vývojem požadavků a tak, mohlo být nejlepším řešením "zpátky na stromy a znovu a jinak", ale řekl bych, že se to chytilo za špatný konec.
-
Jo, přesně tak nějak to vidím ... po stránce, co to umí, to je asi dobré, ale zpracování už tak dobré není. /// Tak jsem to odkomentoval, ale problém bude asi v initrd i když pořád podezírám Grub2. Opensuse nepoužívá initramfs, ale initrd. A při vytváření nevypadá, že by bylo něco špatně. Nechám to teď rozležet v hlavě. Tak pořád to mohu naklonovat a pak chodit s opravním CD, ale u třiceti strojů, to mne fakt neláká ... Pro jistotu jsem napsal i na forum openSUSE.
-
Hmmmm.... Jako že ve vygenerovaném grub.conf máš pořád UUID?
Tak v nejhorším se to dá upravit ručně, naklonovat, a pak když přegeneruješ na běžícím stroji, tak se tam už doplní aktuální hodnoty...
Do grub.conf se nemá sahat právě proto, že se se bez varování přepíše.
Pokud je to v initrd, tak to pak nevím, nemám ho nikde.
-
Tentokrát to byla moje chyba, spustil jsem aktualizace, protože mezi nima byl i grub, doufaje v nějakou změnu, a nepřekontroloval jsem si to nastavení v /etc/default/grub a on vrátil to nastavení toho UUID. Tak jsem to zase odkomentoval, vygeneroval a vylezlo toto:
#
# 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="${saved_entry}"
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 [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
font="/usr/share/grub2/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=cs_CZ
insmod gettext
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
insmod gfxmenu
loadfont ($root)/boot/grub2/themes/openSUSE/ascii.pf2
loadfont ($root)/boot/grub2/themes/openSUSE/DejaVuSans-Bold14.pf2
loadfont ($root)/boot/grub2/themes/openSUSE/DejaVuSans10.pf2
loadfont ($root)/boot/grub2/themes/openSUSE/DejaVuSans12.pf2
insmod png
set theme=($root)/boot/grub2/themes/openSUSE/theme.txt
export theme
if [ x${boot_once} = xtrue ]; then
set timeout=0
elif sleep --interruptible 0 ; then
set timeout=2
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'openSUSE 12.3' --class 'opensuse-12-3' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-8d84c8e4-e91e-4320-bcc1-38bd82913eb4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
echo 'Loading Linux 3.7.10-1.1-desktop ...'
linux /boot/vmlinuz-3.7.10-1.1-desktop root=/dev/sda2 resume=/dev/sda1 splash=silent quiet showopts
echo 'Loading initial ramdisk ...'
initrd /boot/initrd-3.7.10-1.1-desktop
}
submenu 'Advanced options for openSUSE 12.3' $menuentry_id_option 'gnulinux-advanced-8d84c8e4-e91e-4320-bcc1-38bd82913eb4' {
menuentry 'openSUSE 12.3, with Linux 3.7.10-1.1-desktop' --class 'opensuse-12-3' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.7.10-1.1-desktop-advanced-8d84c8e4-e91e-4320-bcc1-38bd82913eb4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
echo 'Loading Linux 3.7.10-1.1-desktop ...'
linux /boot/vmlinuz-3.7.10-1.1-desktop root=/dev/sda2 resume=/dev/sda1 splash=silent quiet showopts
echo 'Loading initial ramdisk ...'
initrd /boot/initrd-3.7.10-1.1-desktop
}
menuentry 'openSUSE 12.3, with Linux 3.7.10-1.1-desktop (recovery mode)' --class 'opensuse-12-3' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.7.10-1.1-desktop-recovery-8d84c8e4-e91e-4320-bcc1-38bd82913eb4' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
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 --hint='hd0,msdos2' 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
else
search --no-floppy --fs-uuid --set=root 8d84c8e4-e91e-4320-bcc1-38bd82913eb4
fi
echo 'Loading Linux 3.7.10-1.1-desktop ...'
linux /boot/vmlinuz-3.7.10-1.1-desktop root=/dev/sda2 showopts apm=off noresume edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 nomodeset x11failsafe
echo 'Loading initial ramdisk ...'
initrd /boot/initrd-3.7.10-1.1-desktop
}
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/20_memtest86+ ###
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/20_ppc_terminfo ###
### END /etc/grub.d/20_ppc_terminfo ###
### BEGIN /etc/grub.d/30_os-prober ###
### 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 ###
### BEGIN /etc/grub.d/90_persistent ###
### END /etc/grub.d/90_persistent ###
To hlavní je asi změněné na sdx, ale pořád je tam na můj vkus i dost těch UUID ... no jdu to zkusit naklonovat. Ale moc tomu nevěřím.
Také jsem zjistil, že když dám mkinitrd initrd list, tak to hlásí: "Could not find map initrd/boot/System.map please specify a correct file with -M. Ale jestli to může mít nějaký vliv netuším, protože samotné mkinitrd proběhne bez chyby. Teda, ale je to věda .... Můžeš mi prosím pastnout Tvůj grub.cfg, abych to mohl porovnat?
-
Tak jsem zjistil, že na naklonované mašině ještě, než se spustí můj stále více <ironie>oblíbený</ironie> hodí 3x error: file not found a pak, když má začít spouštět, tak to samé 3x error: file not found a pak spouští linux 3.x ... až se zasekne na původní zprávě tohoto vlákna. Takže, co to detekuje, než se spustí grub? Jelikož ta chyba je 3x, tak to odhaduji na oddíly, protože mám tři, ale to je fakt jen odhad. Na zdrojové mašině to nedělá. Nejhorší na tom je, že neexistuje alternativa a člověk na moderní distribuci musí tuto hrůzu používat.
-
Hmmm, tak koukám, že ten můj grub vypadá podobně jak u tebe, taky je to mix uuid a sda. Zajímavé, že si nepamatuju, že bych s tím měl problémy...
No, našel jsem doporučení, že pokud nechci UUID, je lepší použít label. Návod: https://wiki.archlinux.org/index.php/GRUB2#Using_Labels (https://wiki.archlinux.org/index.php/GRUB2#Using_Labels) (a vůbec ta arch wiki je celkem šikovná :) ).
Tak to můžeš zkusit a uvidíš...
-
I ten poslední pokus selhal ... ale nejraději bych si nakopal! Chyba nebyla v grubu, chyba nebyla v initrd, ale chyba byla v biosu .... jeden notes měl kompatibilitu sata Compatibility a druhý AHCI. Blbě jsem to překontroloval, protože v biosu je to značené Serial ATA (SATA) ... tak jsem bral tu závorku jako nastavené ... a když se člověk podívá do nabídky, tak to bylo nastavené, ale u každého stroje jinak. Nesměj se tak hlasitě! Čtyři dny, to jde, ne?