Grub instaliavimas, konfigūravimasKadangi, planuoju naudotis ne viena operacine sistema savo laptope, grub'ą sugalvojau pasidaryti nepriklausomą nuo os, tam reikės:
1. skirsnio diske (100mb daugiau nei per akis)
2. linux livecd (aš panaudojau
LFS live cd, kadangi jis turi visus reikalingus kompiliavimui įrankius, LFS knygą kurioje nemažai naudingos informacijos tiek apie grub, tiek apie patį linux, taip pat jame yra ir grub bei kitų programų "source kodai")
***Pastaba - jeigu planuojama naudoti langines kaip vieną iš os, patariu ją susiinstaliuoti pirmiausia, kol dar nėra jokios linux os ar grub'o
Užsikrauname LFS iš live cd, susikuriame skirsnius:
cfdisk /dev/hdamaniškiai yra tokie:
/dev/hda1 - primary - 5gb - winXp
/dev/hda2 - primary - 100mb - Grub
/dev/hda3 - primary - 7gb - slackware
/dev/hda5 - logical - 7gb - debian
/dev/hda6 - logical - 1gb - swap
/dev/hda7 - logical - visa kas liko - duomenų skirsnis ext3 formatu, kadangi pagrindinės mano naudojamos os yra slackware bei debian, windozė tik tam, kad galėčiau kokių nors failų iš jų pasiskolinti, be to yra
ext2/ext3 draiveris langinėms, ir jo pagalba windows mato ext2 ext3 failų sistemas kaip savas ;)
Toliau susikuriam ext3 failų sistemą grub skirsnyje:
mke2fs -jv /dev/hda2*** Pastaba /dev/hda2 yra mano naudojamas skirsnis, įrašyti reikia savo naudojamą ;)
Primontuojam naująjį grub'o skirsnį:
mkdir -pv /mnt/hda2
mount -v -t ext3 /dev/hda2 /mnt/hda2
toliau susikuriame keletą katalogų jame:
mkdir -v /mnt/hda2/{usr,boot,source}
mkdir -v /mnt/hda2/boot/grubGrub instaliacijos metu, grub'as ieškos savo failų /boot/grub direktorijoje, o ne /mnt/hda2/boot/grub, todėl susikuriam symlink'ą į /boot/grub:
ln -s /mnt/hda2/boot/grub /boot/grubpasidedame grub "source kodą" į /mnt/hda2/sources:
*** jeigu naudojatės LFS live cd:
cp -v /lfs-sources/grub-0.97.tar.gz /mnt/hda2/source/
cp -v /lfs-sources/grub-0.97-disk_geometry-1.patch /mnt/hda2/source/Išpakuojame grub'ą (turiu galvoje, jog esate /mnt/hda2/source/ kataloge):
gzip -d grub-0.97.tar.gz
tar -xf grub-0.97.tarĮrašome grub' pataisą (jeigu grub'o instaliavimui naudojamas ne LFS live cd, pataisą gauti galima iš
čia)
cd /grub-0.97
patch -Np1 -i ../grub-0.97-disk_geometry-1.patchKonfigūruojame:
./configure --prefix=/mnt/hda2/usrKompiliuojame:
makeInstaliuojame:
make installDabar, reikia pasidėti grub'o stage1 bei stage2 failus į reikiamą vietą:
cp -v /mnt/hda2/usr/lib/grub/i386-pc/stage{1,2} /mnt/hda2/boot/grubInstaliuojame grub'ą į kietą diską:
/mnt/hda2/usr/sbin/grub
root (hd0,1) ***(parodome skirsnį kuriame yra grub'o stage failai)
setup (hd0) ***(Instaliuojame grub'ą į primary diską)
quitpTurim gru'ą belieka jį tinkamai susikonfigūruoti:
nano /mnt/hda2/boot/grub/menu.lstpradžioje pagrindinė grub konfigūracija:
# Begin /boot/grub/menu.lst
# By default boot the first menu entry.
default 0
# Allow 30 seconds before booting the default.
timeout 30
# Use prettier colors.
color green/black light-green/blackKiek žemiau įrašome konifgūracijas naudojamoms OS:
*** Pastaba: čia pateiksiu tik pavyzdį pagal mano naudojamas os, susikonfigūruoti reikia pagal saviškes
# The first entry.
title slackware is within you!
root (hd0,2)
kernel /boot/vmlinuz-2.6.22.1 root=/dev/hda3 ro
boot*** root (hd0,2) parodo skirsnį kuriame yra os (mano atveju slackware), grub'as skaičiuoja diskus ir skirsnius nuo 0 todėl /dev/hda3 grub kalba užrašomas kaip (hd0,2) 0 - pirmas diskas (primary master arba /dev/hda) 2 - nurodo trečią skirsnį arba /dev/hda3)
Kernel /boot/vmlinuz-2.6.22.1 parodo kur yra kernelis vmlinuz-2.6.22.1 reikia pakeistį į savo kernelį, rootz=/dev/hda3 - vėlgi parodo skisnį kuriame yra OS šį karta linux kalba, ro - įsako prijungti skirsnį kaip "read only", kaikurioms distribucijoms ši opcija nėra būtina, tačiau slackware be šios opcijos metą klaidos pranešmą ***
#second entry for windows
title Windows
rootnoverify (hd0,0)
chainloader +1*** rootnoverify (hd0,0) - parodo diską ir skirsnį kuriame yra windows os mano atveju /dev/hda1 (kadangi windows instaliavau pirmiausia kol dar nebuvo jokių kitų os)
kai baigiam konfigūraciją išsaugom failą.
Viskas. sveikinu, grub sukonfigūruotas, ir yra nepriklausomas nuo jokios OS tuo tarpu konfigūruoti jį galima iš betkurios os (netgi iš win jei naudojamas e2fs draiveris) tereikia tik prisijungti grub'o skisnį ;)