A teljes cím:
Debian GNU/Linux root (/) filerendszer telepítése szoftver RAID0-ra, új generációs Debian installer-rel kicsi hackeléssel
A minap azzal a problémával találtam magam szemben, hogy Debian GNU/Linux-ot kellett telepítenem úgy, hogy az operációs rendszer / (root) filerendszerét egy szoftver RAID0 (stripe) tömbre kellett tennem. Ennek az oka az volt, hogy a gép gazdája szerette volna a két merevlemezét egy egészként használni úgy, hogy ne kelljen törődnie azzal, hogy mikor fut ki valamelyik lemez területéből. A számítógépben semmilyen RAID kártya nem volt, csak az operációs rendszer által nyújtott MD + RAID0 driverek felhasználása jöhetett szóba. Aki ismeri a Debian installer korábbi verzióit, az tisztában van vele, hogy azzal semmilyen lehetőség nincs RAID eszközt létrehozni, és arra telepíteni, úgyhogy a hivatalos telepítő nem jöhetett szóba. A telepítést különböző gányolásokkal (felteszem egy harmadik lemezre, boot-olok, fordítok kernelt RAID támogatással, előkészítem az md tömböt, rámásolom, átírogatom a konfig file-okat, stb.) valószínűleg meg lehetett volna oldani, de más megoldást kerestem. A cél az volt, hogy a telepítést egy bootolással, a lehető legkevesebb gányolással el lehessen végezni.
A keresgélés folyamán ráakadtam a Sarge businesscard beta telepítőjére (sarge-i386-businesscard.iso ~40 MB), amely már támogatja a RAID 0,1... és az LVM-es telepítést is.
Ezzel már majdnem meg tudtam oldani a feladatot. Egyetlen szépséghibája ennek a telepítőnek az, hogy a Debian jelenleg nem támogatja, hogy a / és a /boot filerendszer szoftver RAID(0,1) tömbön legyen (screenshot).
``Akkor mit lehet tenni?'' - hangzik a kérdés. A megoldás abban van, hogy kicsit bele kell avatkozni a Debian által elképzelt telepítésbe. Erről az alternatív telepítésről szól ez az írás:
A feladat: feltelepíteni úgy egy Debian rendszert, hogy a két rendelkezésre álló 2 GB-os lemezt összefűzzük (stripe), majd az összefűzés után kapott md0 eszközt használjuk fel a / filerendszerhez.
(Akit nem érdekel a RAID-es telepítés, de viszont érdekli, hogy milyen lesz a Sarge új telepítője, annak is érdemes végignézni a képeket (kb. 80 darab)... A elvárás a merevlemezek kiosztására:
SCSI (0,0,0) (sda) - 2.1 GB
#1 primary 135.5MB ext2 /boot
#2 primary 2.0 GB raid
SCSI (0,1,0) (sdb) - 2.1 GB
#1 primary 1.9 GB raid
#2 primary 148.0 MB swap swap
RAID0 device #0 - 4GB Software RAID device
#1 4.0 GB ext3 /
Az md0 (/dev/md/0) eszköz a sda2 és az sdb1 partíciók összefűzéséből alakult ki. Erre kerül telepítésre a / filerendszer.
A telepítés:
1.) Töltsük le a businesscard telepítő ISO-t:
# wget http://cdimage.debian.org/pub/cdimage-testing/daily/i386/current/sarge-i386-businesscard.iso
majd írjuk CD-re. Az ISO-ból írt CD-ROM-mal bootoljunk be.

2.) Válasszuk ki, hogy melyik kernellel kívánunk boot-olni. Én a 2.6-os kernel választottam ``expert'' módban:

3.) Válasszuk ki a telepítő nyelvét:

4.) Válasszuk ki a régiót:

5.) A billentyűzet kiosztást:

6.) Ismertessük fel és mount-oltassuk a telepítővel a CD-ROM-ot:

7.) A telepítő detektálja a gépünknek hardver eszközeit, és felajánlja hozzájuk a megfelelő kernel modulokat. Ezekből válogathatunk:

8.) A telepítő végigpróbálja a modulokat:

9.) Kiválaszthatjuk, hogy a telepítő melyik komponenseire van szükségünk:



10.) A telepítő további hardver eszközöket detektál:


11.) A következő lépés a hálózat beállítása:









12.) A Debian mirror kiválasztása következik:






13.) Ha van még detektálatlan hardver, azt most lehet beállítani:

14.) A merevlemezek partícionálása következik:
































15.) HIBA! HIBA! HIBA! HIBA! menjünk tovább, válasszuk a ``Yes''-t, annak ellenére, hogy a telepítő azt mondja, hogy a rendszer nem fog boot-olni.

16.) Telepítsük az alaprendszert:

17.) Közben váltsunk console-t az ALT+F2-vel, és ellenőrizzük le, hogy a rendszer jól mountolta-e a /target (/) és a /target/boot (/boot) partíciókat:

18.) Közben az első console-on (ALT+F1) folyik a debootstrap telepítése.

19.) Amit a másik console-on (ALT+F2) ellenőrizni is tudunk:

20.) A debootstrap után települ a Debian base rendszer:


21.) Ellenőrzés a másik console-on (ALT+F2):

22.) Ha kész a base rendszer telepítése, akkor válasszunk kernelt. Teljesen mindegy melyiket, mert egyik sem lesz jó! Ahhoz, hogy felismerje a rendszer az újraindítás után, hogy a / egy szoftver RAID0 partíción van, kernelt kell fordítanunk még a telepítés ideje alatt!

23.) Ha kész a kernel telepítése, befejeződik a telepítés:

24.) Telepítsük a LILO-t!


25.) A telepítő jelzi, hogy kész a telepítés.

NE INDÍTSUK ÚJRA A GÉPET!!! Ha itt újraindítjuk, nem fog bootolni a rendszer, ahogy a telepítő azt korábban helyesen jelezte. Most kezdődik a hack time!
26.) Váltsunk a második console-ra (ALT+F2)!
- Mountoljuk a proc-t a /target/proc-ba
- chroot-oljunk a /target-be
- nézzük meg, hogy működőképes-e a LILO
- majd telepítsük a kernel fordításhoz szükséges dolgokat (binutils, gcc, libncurses5-dev, stb. + függőségek)
- töltsünk le egy kernel forrást (én a 2.6.7-et használtam), majd bontsuk ki a /usr/src alá. ehhez használhatunk wget-et, ftp-t, scp-t, vagy tetszés szerint bármit. ne felejtsük el, hogy itt már egy működő rendszerünk van, bármit telepíthetünk az apt segítségével...

27.) Fordítsunk egy kernelt úgy, hogy legyen benne FIXEN belefordított RAID0 támogatás! Másoljuk a helyére a kernelt, a System.map-ot, telepítsük a modulokat (make modules_install), stb.:



28.) Állítsuk be a /etc/lilo.conf-ot, majd futtassuk a LILO-t:

29.) Váltsunk vissza az első console-ra (ALT+F1), majd fejezzük be a telepítést:

30.) A reboot után a LILO-val a Linux-RAID névre hallgató image-t indítsuk el, majd fejezzük be a telepítést a szokásos módon:


31.) A bejelentkezés után ellenőrizzük le, hogy a RAID eszköz rendben van-e:

32.) Örüljünk!
Megjegyzés: az interneten számos olyan dokumentum van, amely RAID0-ra vagy RAID1-re telepít Debian-t. Amiket láttam, azok általában sokkal bonyolultabban oldották meg ezt a problémát, initrd-t, rsync-et, stb. használtak. Az új Sarge telepítővel az egész folyamat gyerekjáték, és ha a Debian Projekt mellékel majd olyan kernelt, amelyben fix RAID0, 1, stb. támogatást lesz, akkor még ezt a kis hacket is elfelejthetjük. Nekem tetszik a Sarge telepítő, reméljük, hogy a Sarge is hamarosan stabil lesz!