Magunk alatt vágni a fát ősi magyar szokás..

Íme egy kis történet az agyon optimalizált megoldásokról, és hogy azok mennyire de nem hordozhatóak :)

Alap sztori: Volt nékem egy Gigabyte Ga-m55plus-s3g alaplapom.. Büszkén használtam, szerettem, és az alatta futó linuxot kényem-kedvem szerint alakítottam.. Ez kb annyit takart, hogy az összes eszköz RAID 1-ben volt, és bizonyos RAID tömbön belül még LVM is ( /home legfőképp ). Ámde mivelhogy a legtöbb disztró kernel nem szereti, ha LVM+RAID párosunk is van bootoláskor ( meg amúgy se szeret az ember disztró kernellel járkálni ), így gondoltam fogom magam, és fordítok rá kernelt, amit anno kb 2,5 éve sikeresen meg is tettem.. Egészen a múlt hétig szép és jó is volt minden...

..aztán megjelent Murphy, és annak rendje és módja szerint le is csapott, ráadásul pont olyan helyen ahol az ember a legkevésbé sem várná: Valahogy a fent említett alaplapom BIOS-a szőrén szálán eltűnt, így a gép se előre, se hátra, de legfőképp nem a bootolás rögös ösvényére.. Persze a garancia lejárt már 1 ideje, így - mivel nincs lehetőségem csak a BIOS chipet újraírni - előrébb hoztam a gépfejlesztési projectem, és vásároltam a gépbe ( immár egy dual bios-os ) gigabyte ga-m720-us3 alaplapot ( plusz hozzá egy Nvidia videókártyát, tekintve, hogy ezen nincs integrált NIC VGA , azon meg volt ).

..Kis hegesztés, farigcsálás, és voálá - ismét minden HW elem a helyére került.. Innen jött a vicces rész.. Ugyan is a gépen csak 2 kernel volt: Egy régről visszamaradt gyári 2.6.18-as, meg egy általam használt ( patchelt, meg hegesztett ) 2.6.22-es.. Ámde sajna a jelek szerint anno az AHCI supportot kihagytam a 2.6.22-esből, mert nem akart bootolni az új alaplappal. Ergo egy HW upgrade után előrébb jött a kernel upgrade is :).. Ám ehhez első körben valami alapot össze kellett hozni..

Ennek előteremtését egy 9.04-es ubuntu desktop livecd-re bíztam, aminek a termináljából szépen be is tudtam mountolni a /boot és a /lib fájlrendszereket, majd nemes egyszerűséggel átmásoltam az ubuntu cd-n lévő vmlinuz-t és initrd-t a /boot alá, illetve a /lib/modules alá a hozzá tartozó 2.6.28-11-generic kernel modulokat.

Ez után jött a bootolás rész, ami szintén nem volt zökkenő mentes.. Tekintve, hogy az ubuntu se szeresse a raid tömböket out of the box, így sajna a bootolás is csak dedikált partícióról megoldható ( RAID tömb helyett ), de gondoltam sebaj, majd utána szinkronba hozom a RAID 1 tömb 2 oldalát, miután megoldottam. Na szóval grub console,

root (hd0,1)
kernel /vmlinuz.ubuntu root=/dev/sda1
initrd /initrd.ubuntu
boot

Ez után a rendszer bebootolt, ám mivel a bináris nvidia driver itt még nem volt, így kénytelen voltam a kernelben lévő nv-re átdobni a xorg.conf-ot. Ennek következtében egy csonka kis rendszerem már volt.. De nekem még egy kernel is kellett volna, így fogtam magam, lerántottam a 2.6.29.4-es forrást, és forgattam magamnak egy kernelt ( plusz biztonsági intézkedésként a jelenlegi md1 alatti raid tömbről csináltam egy gyors tar mentést egy másik FS-re ). Miután ezt bebootoltam fogadott csak a nagy meglepetés: az fsck halálra dobálta a hibákat az md1 raid köteten belül ( itt volt a / ). A jelek szerint megártott neki, hogy eddig nem szóltam neki az eddigi változásokról..

Nos akkor uccu neki, fsck -n /dev/md1... Nem számoltam meg, de töménytelen hiba, amit ráadásul ilyen módban javítani esélytelen is.. Így hát ismét ubuntu cd elő, majd manuálisan a raid tömb 2 oldalára fsck.. Ez még jó is lett volna, de ezért meg jó pár újonnan létrehozott file-om hibás lett az mdadm miatt, így ismét ott voltam, ahol előtte: szopó pályán..

A megoldás erre aztán a következő lett: a rendszert bebootoltam ebben az állapotban, majd a raid tömbből kiszedtem a 2. disket ( mdadm /dev/md1 -f /dev/sdb1 -r /dev/sdb1 ) , ezek után ismét reboot ubuntu cd-ről, ott manuálisan bemountol a partició, majd manual fsck, aztán a mázlimra elkészített mentés visszatöltése, és újabb reboot után már élt a rendszer, igaz az md1 tömb csupán 1 taggal, de legalább élt :) Így nem maradt más, csak visszarakni a tömbbe az elkobzott részt: mdadm /dev/md1 --add /dev/sdb1, majd leszedni a legfrissebb nvidia drivert, és akkor már azt is telepíteni, és visszaállítani a xorg.conf-ot az nvidia driver használatára.. Így már megy is a rendszer hála az égnek :)

Hozzászólások

én is pont most vettem ga-m720-ud3 alaplapot :D
fasza langyos rajta a chipset hűtés, mi? :D

----------------------------------
feel the beat - it's everywhere!

Ize, a disztrok, koztuk az ubuntu is annyira utaljak az md+lvm parost, hogy a telepitok is tamogatjak. Ubuntu eseteben (amint egyebkent irjak is) az alternate ISO kell hozza.

Debian is támogatja szó se róla.. De boot időben még minden modulként van.. ergo ott nem bírja inicializálni ( tehát pl amikor megnézi a particionálásnál, hogy milyen köteteid vannak ott se látja ).. Annyi a trükk, hogy amikor telepítés közben megmondod neki, hogy az a kötet egy RAID/LVM kötet lesz, akkor ő nyomban úgy generálja le a /boot alá az initrd-t, hogy az statikusan a helyén legyen. Sajna a CD-n ez nem így éz ki a tapasztalatok alapján
____________________________________
Az embert 2 éven át arra tanítják hogyan álljon meg a 2 lábán, és hogyan beszéljen... Aztán azt mondják neki: -"Ülj le és kuss legyen!"..

"(plusz hozzá egy Nvidia videókártyát, tekintve, hogy ezen nincs integrált NIC, azon meg volt)"
Khhhmmmm... he?
--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

Ga-m55plus-s3g-n volt egy integrált VGA ( Nvidia 6100 chipset, ha érdekel ), de a mostani MB-n meg ilyen nincs, így muszály volt vennem egy PCI-E-s VGA-t..
____________________________________
Az embert 2 éven át arra tanítják hogyan álljon meg a 2 lábán, és hogyan beszéljen... Aztán azt mondják neki: -"Ülj le és kuss legyen!"..

jogos.. elírtam, javítottam.. Mondjuk most végigolvasva látszik, hogy késő este írtam az egész bejegyzést.. elég draft kinézetű az egész :)
____________________________________
Az embert 2 éven át arra tanítják hogyan álljon meg a 2 lábán, és hogyan beszéljen... Aztán azt mondják neki: -"Ülj le és kuss legyen!"..