grub vs. winyocsere vs. ubuntu

Fórumok

grub vs. winyocsere vs. ubuntu

Hozzászólások

Elorebocsatom, hogy utalom a grubot. Lilo forever. :) Vagy meginkabb olyan gep, amin nem kell bootloader egyaltalan (pl. Pegasos). Viszont, kerdes: van egy 5.04-em felrakva, es anno domini nagy kuzdelmek aran winyot csereltem alatta (PATA->SATA). Igy az eredetileg hda6-n levo root particio atkerult sda6-ra. Miutan kisebb agyverzesek aran elmagyaraztam a grubnak hogy miaz az sda6, mukodott is a rendszer.

Viszont, minden egyes kernel upgradenal, gondolom a post-install script modositja a /boot/grub/menu.lst-t, es visszairja a kernelparameternek a root=/dev/hda6-t, meg kigyalulja a custom kernelparametereket amiket megadtam neki. Hol lehet elmagyarazni ennek a minosithetetlen @#($&(@&#($&!!!-nek, hogy ne tegye ezt velem? Tehat hogy ne modositsa a menu.lst-t, vagy ha megis, hol vannak azok a default dolgok, amiket beleir az ujrageneralt menu.lst-be?

Most azt a modszert hasznalom, hogy elmentettem a menu.lst-t, es kernelupgrade utan visszamasolom, de felteszem van vmi elegansabb megoldas is.

[quote:306a5b1cd5="bandy"]esetleg egy grub-install /dev/sda6 ?

Ez mar megvolt anno, maskepp be se bootolna, nyilvan. Egyebkent, ez esetleg megfixelheti az h. ne irja at /dev/hda6-ra a cuccot, de a custom boot parameterekkel mi lesz? Vagy ilyenkor azokat is eltarolja "valahova" a menu.lst alapjan?

Nalam Debianban (Ubuntu is igy csinalja?) jo alaposan megjeloltek azt a reszt, amibe belenyulnak a update-scriptek. (De meg itt is lehet allitgatni az opciokat, lasd lejjebb.) Tedd a fix beallitasaidat az automatikus cuccok ele es nem piszkalja el, vagy meginkabb allits az automatikus resz beallitasain.

[code:1:b550e20871]
#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specifiv kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
# kopt=root=/dev/hda1 ro

## default grub root device
## e.g. groot=(hd0,0)
# groot=(hd0,0)

[es igy tovabb...]
[/code:1:b550e20871]

Amugy miert szar a grub?

[quote:6ba147276a="BandiG"]Nalam Debianban (Ubuntu is igy csinalja?) jo alaposan megjeloltek azt a reszt, amibe belenyulnak a update-scriptek. (De meg itt is lehet allitgatni az opciokat, lasd lejjebb.) Tedd a fix beallitasaidat az automatikus cuccok ele es nem piszkalja el, vagy meginkabb allits az automatikus resz beallitasain.

Okes, koszi. Tartottam tole hogy valami olyasmi van, ami majdnem kiboki a szemem, es nem veszem eszre. Nyert. Abbol indultam ki, hogy ha a menu.lst-t regeneralja, akkor abban biztos nem lehet ilyen beallitas. Tevedtem. :)

Amugy miert ***** a grub?

Nekem eddig tobb bajom volt vele mint nem. Valahogy feleslegesen tulbonyolitottnak erzem, pl. ezek a device aliasok meg ilyesmik. Oke h. nagyon univerzalis akar lenni, de az ilyesmi ritkan vezet jora.

A grub sosem írja át magától a menu.lst-t. Ha az csak úgy átíródik, akkor disztribúciód készítőit okold emiatt, mert ők raktak valami túlzott anti-intelligenciát a grub vagy kernel vagy ilyesmi csomagba.

Ami a device-okat illeti, és a device.map fájlt:

Ha a grub arra a vinyóra települ, ahol saját stage2-jét és menu.lst-jét keresni fogja, akkor tök mindegy, hogy ebben a fájlban mi áll, mivel a boot rekord megfelelő byte-jába 0xFF-et rak, ami azt jelenti, hogy "az aktuális meghajtó", vagyis azt a meghajtót akárhova átrakhatod, ha a BIOS egyszer rátalált, akkor onnan kezdve a Grub nem nagyon tud hibázni.

A bonyodalmak akkor kezdődnek, amikor a grub stage1 nem arról a vinyóról töltődik be, amelyiken neki saját stage2-jét és menu.lst-jét meg kellene találnia. Ekkor a stage1-ben a megfelelő byte értéke nem 0xFF lesz, hanem abszolút hivatkozással a stage2-t tartalmazó vinyó bios azonosítója, vagyis 0x80 az első bios vinyóra, 0x81 a második bios vinyóra és így tovább.

A grub-install parancsnak tehát tudnia kell ezt az értéket, de nem tudja, mivel a bios-tól nem lehet lekérdezni, így megtippeli, de felül is tudod bírálni, erről szól a device.map fájl. A (hd0), (hd1) stb. értékek tulajdonképpen a bios 0x80, 0x81 stb. azonosítóinak fedőnevei a grub nyelvén, ezek tehát ugyanazok, a (hd0) jelenti a bios szerinti első vinyót, (hd1) a másodikat és így tovább. Ezeket kell ebben a fájlban összerendelni a diszkek Linux alatti neveikkel. Mint írtam, mindennek csak akkor van szerepe, ha a bootloader betöltésének folyamata több vinyót is érint.

Szerintem nagyon klafa progi a grub, a lilo-hoz képest leírhatatlan előny a parancssor, ahol bármely kernel fájlt be tudsz rántani, nem csak az előre megadottat. Én úgy érzem, hogy te nem ismered a grubot, és ebből adódik, hogy nem tudod rendesen használni és ezért nem is szereted. Ajánlom, próbáld meg megismerni picit jobban, biztos jobb képed lesz róla.