Portál AbcLinuxu, 13. května 2025 23:05
message
z lilo.conf
nebo ji přepsat na normální textový soubor.
grub --device-map=/dev/null
a pak patricne devices, root a setup a mas ,,normalni`` grub kdekoliv z jakekoliv distribuce na disku... V cem vidis problem?zcat $CWD/grub-0.93-graphics.patch.gz | patch -p1 zcat $CWD/grub-0.93-buggybios.patch.gz | patch -p1 zcat $CWD/grub-0.91-splashimagehelp.patch.gz | patch -p1 zcat $CWD/grub-0.93-graphics-bootterm.patch.gz | patch -p1Nejlepší tedy bude stáhnout Grub .srpm pro fedoru (ten obsahuje splahimage, Novellácký obsahuje gfx), rpm -i nainstalovat, přejít do adresáře /usr/src/redhat nebo tak nějak (za předpokladu že máš nainstalován rpm-devel balíček), dát rpmbuild -bb grubněco.spec a nechat si přeložit balíček. Ten si nainstaluješ, zkopíruješ soubory do /boot/grub a spustíš grub (např. na mém systému na stařičkém nb, kde je systém na hda2, instaluji do MBR):
# mkdir /boot/grub # cp /usr/share/grub/i386-slackware/* /boot/grub # grub --device-map=/dev/null GRUB version 0.93 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ] grub> device (hd0) /dev/hda grub> root (hd0, Possible partitions are: Partition num: 0, Filesystem type is fat, partition type 0x6 Partition num: 1, Filesystem type is xfs, partition type 0x83 Partition num: 2, Filesystem type unknown, partition type 0x82 grub> root (hd0,1) Filesystem type is xfs, partition type 0x83 grub> setup (hd0) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/xfs_stage1_5" exists... yes Running "embed /boot/grub/xfs_stage1_5 (hd0)"... 22 sectors are embedded. succeeded Running "install /boot/grub/stage1 (hd0) (hd0)1+22 p (hd0,1)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded Done. grub> setup (hd0) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/xfs_stage1_5" exists... yes Running "embed /boot/grub/xfs_stage1_5 (hd0)"... 22 sectors are embedded. succeeded Running "install /boot/grub/stage1 (hd0) (hd0)1+22 p (hd0,1)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded Done. grub> quit #Nyní si zkopíruji do /boot/grub ještě nějaký fajný splah image (sehnal jsem nevím kde, ale stačí googlit) a zkonfiguruji grub:
# cp ~/download/slack*xpm.gz /boot/grub root@oxygène:~# ls /boot/grub/ device.map jfs_stage1_5 slackblack.xpm.gz stage1 e2fs_stage1_5 menu.lst slacks.xpm.gz stage2 fat_stage1_5 minix_stage1_5 slacktux.xpm.gz vstafs_stage1_5 ffs_stage1_5 reiserfs_stage1_5 slackware.xpm.gz xfs_stage1_5 root@oxygène:~# cat /boot/grub/device.map (fd0) /dev/fd0 (hd0) /dev/hda # cat /boot/grub/menu.lst splashimage /boot/grub/slackblack.xpm.gz default 0 timeout 3 title Slackware Linux 8.1 on XFS (2.4.26-djz1) vesafb kernel /boot/xfs.s/bzImage root=/dev/hda2 ro reboot=warm vga=790 title Slackware Linux - rescue disk kernel /boot/rescue/bzImage ramdisk_size=26000 rw root=/dev/ram initrd /boot/rescue/initrd.img title FreeDOS beta9-final (2004-09-28) root (hd0,0) chainloader +1Volby jsou dobře popsány v manuálu, víceméně připomenu, že za default je číslo sekce title, číslovené od 0, tedy default je zde vesafb. Kdybych měl 2, startuje se FreeDOS. Timeout je ve vteřinách. Pokud neuvedeš splashimage nebo nějaký vesa mód, grub nastartuje v textu. Dále i když nebudeš mít menu.lst a nastartuješ grub v textu, pokud zadáš příkaz splashimage přepne se ti do grafiky. No to je pro začátek asi tak všechno...
... ale furt ten bootsplash nejde.. neví někdo co s tym? umi ten GRUB z GNU splashimage?Jsem si všiml, máš v tom zmatek. Myslíš bootsplash nebo splashimage? Obojí je něco úplně jiného. Splashimage je podkladový obrázek v GRUBu, bootsplash je rozšíření linuxového jádra o kompletní grafické bootovaní s obrázkem, teploměrem apod. podle použité témy. Splashimage je vlastnost GRUBu viz předchozí příspěvek, bootsplash musí umět jádro a nic než jádro. Dále téma musí být přibalená do initrd a zase nikam jinam. Takže pokud bootuješ jiné než Novell bootsplash jádro, nic se ti zobrazovat nebude. Pokud bootuješ jádro s parametrem root=... a nepoužíváš initrd, nic se ti zobrazovat nebude. Pokud máš vlastnoručně vyrobený initrd bez témy, opět se ti nic zobrazovat nebude. Jen ti blikne Grub a pak bude klasicky startovat jádro. Naopak, pokud máš bootsplash jádro i initrd s přidaným bootsplash (u initrd záleží asi i na použitém fs, mám zkušenosti že mi na mém romfs initrd nefunguje), tak ti bude linux startovat graficky i s tleskajícími efekty třeba o bootovaní z prastarého lilo nebo loadlin, to je úplně jedno. Comprendre?
grub-0.97.tar.gz
a grub-0.97-patches-1.2.tar.bz2
opatchovat pomocí patch -p0 < soubor_s_patchem
, zkompiloval a nainstalovat (./configure, make, make install), jelikož nemám /usr/local/sbin v PATH tak sem všechno zkopíroval do /usr/sbin (ve dvou skriptech z GRUBU sem přepsal prefix z /usr/local na /usr (nebo tak nějak, prostě bez toho local), v /boot/grub sem vymazal všechny stages, nakopíroval tam ty nový (myslím že z /usr/local/lib/grub/i386-pc/), spustil grub, dal do mbr grub < root (hd1,1) grub < setup (hd1) grub < quita po rebootu tam ten splashimage není
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.