JFS Root Boot Howto

Címkék

JFS Root Boot HOWTO

Paul Larson plars@austin.ibm.com

v1.0, May 22, 2001 - Copyright © International Business Machines Corp., 2001 1. Introduction

Micskó Gábor trey@debian.szintezis.hu - Hungarian Unix Portal

v.1.1, 2002. augusztus. 25 - Copyright © Hungarian Unix Portal

1. Bemutatás

2. Előfeltételek

3. Ext2 alapú filerendszer konvertálása JFS-re

3.1 Kernel fordítása JFS támogatással

3.2 JFS filerendszer készítése

3.3 A root filerendszer másolása

3.4 Végső beállítások

3.5 Reboot

4. Copyright, licenc, visszajelzés és ilyesmi

1. Bemutatás:

Ez a HOWTO leírja azt az eljárást amellyel át tudunk konvertálni egy ext2 filrendszer alapú Linux rendszert úgy, hogy az egész az IBM Journaled File System (JFS)-en fusson. A JFS-sel kapcsolatos bővebb információért és a legfrissebb letöltési lehetőségért látogasd meg a JFS for Linux web oldalt a http://www-124.ibm.com/developerworks/oss/jfs/ URL-en.

2. Előfeltételek:

Mielőtt nekilátnánk, két előfeltételnek kell megfelelned:

# Rendelkezned kell egy telepített és működő Linux rendszerrel

# Rendelkezned kell egy üres partícióval, a partíciónak 83-as típusúnak (Linux) kell lennie. Az nem számít, hogy a partíció formázva van-e vagy sem, mi majd megformázzuk JFS-re, és úgyis eltűnik róla minden, ami előtte rajta volt ;-)

Ez a dokumentum feltételezi, hogy egy nagy, egybefüggő Linux partíciód van, amelyen a root (/) filerendszered helyezkedik el, és nincsen külön a /home, /usr, stb. Nem baj ha esetleg külön vannak, viszont egy dologra figyelni kell, hogy az üres partíció amelyen a JFS filerendszer lesz elegendően nagy legyen ahhoz, hogy az egész / filerendszered elférjen rajta, módosítani tudd a /etc/fstab filet, törölni tudjál róla, vagy meg tudd változtani a becsatolások helyét ha az szükséges. Végül, a dokumentumban a root filerendszer (/) a /dev/hda5 eszközön van, és a új partíció, amelyet meg fogok formázni JFS-re a /dev/hda6-on lesz. Ez rendszer-specifikus, értelemszerűen más gépeken az ottani beállításokkal kell végezni a műveleteket.

Amit még figyelembe kell vennünk az az, hogy szükség lesz a megfelelő patchekre (hacsak nem kernel támogatást használunk, amely a 2.4.20-pre4-től a rendelkezésünkre áll), patchelnünk kell a kernel forrást, és egy kernelt kell fordítanunk JFS támogatással. Ez nem nehéz dolog, de ha még soha nem fordítottál kernelt, akkor lehet hogy nem ezzel kellene kezdened ;-)

3. Egy ext2 alapú rendszer konvertálása JFS-re

Több kereskedelmi Linux terjesztés felajánlja telepítéskor, hogy a rendszerünket JFS filerendszerre telepíthetjük. Ilyenkor nem kell mást tenni, mint kiválasztani a JFS-t, megadni a csatolási pontot (/) és a telepítő elvégzi helyettünk a szükséges feladatokat. Ez a dokumentum a meglevő ext2 alapú rendszer ``áthelyezéséről" szól.

A következő szekció leírja a szükséges lépéseket ahhoz, hogy hogyan építsünk fel egy JFS root (/) filerendszert, és hogyan bootoljuk be azt.

3.1 Kernel fordítása JFS támogatással

Töltsd le a legutolsó 2.4.x kernelt az ftp.kernel.org-ról, és a legutolsó jfs-x.y.z-patch.tar.gz-t a JFS for Linux web oldalról to /tmp könyvtárba. Csomagold ki őket egy elkülönített könyvtárba. Másold őket a /usr/src/ alá. Lépj be a kernel forrás alapkönyvtárába és patcheld meg a kernelforrást.

#cd /usr/src

#rm linux

#tar -xvzf /tmp/linux-2.4.3.tar.gz

#mv linux linux-2.4.3

#ln -s linux-2.4.3 linux

#mkdir jfs

#cd jfs

#tar -xvzf /tmp/jfs-0.3.1-patch.tar.gz

#cd /usr/src/linux

#patch -p1
#patch -p1

Konfiguráld a kernelt a make config (make menuconfig, make xconfig) segítségével, amelyik közelebb áll a szívedhez :-). A "Code maturity level options" címkével jelzett szekcióban, kapcsold be azt a menüpontot, hogy "Prompt for development and/or incomplete code/drivers." A "File systems" címkével jelzett szekcióban kapcsold be a "JFS filesystem support" stuffot. Legyél biztos abban, hogy a JFS támogatást a kernelbe fixen drótozva tetted, NEM MODULBA, mert akkor nem fogja boot időben a kernel támogatni a JFS-t (csak kisebb cselek árán, de erre most nem térek ki). Konfiguráld az egész kernelt ahogy szükséged van rá, mentsd el a konfigot, majd forgasd le a kernelt. A kernel fordítását a make dep; make clean; make bzImage parancsok kiadásával végezd (vagy ahogy tetszik, ezerféleképpen lehet) ha szükséges fordítsd le a modulokat is, make modules; make modules_install. Utána másold az új kernelt a /boot könyvtárba. Másold a System.map-ot /boot-ba.

#make dep

#make clean

#make bzImage

#cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.0-jfs

#cp /usr/src/linux/System.map /boot

Most szükségünk van a JFS programok lefordítására, (én a debian sarge rendszeremen egyszerűen kiadtam az 'apt-get install jfsutils' parancsot, de aki akarja forgassa le). Ezek azok a programok azok, amellyel a JFS filerendszert létre lehet hozni, ellenőrizni lehet, ki lehet terjeszteni a méretét, stb.

#cd fs/jfs/utils

#make

#make install

A következő lépés az, hogy módosítani kell a LILO bejegyzéseit úgy, hogy az új kernelünket bootolja be, és root (/) filerendszernek a JFS-t húzza fel. Szerkesszük a /etc/lilo.conf filet és végezzük el az alábbi bejegyzéseket:

image=/boot/vmlinuz-2.4.0-jfs

label=jfsboot

read-only

root=/dev/hda5

Futtassuk az /sbin/lilo parancsot, ahhoz hogy aktiváljuk a az új konfigurációt és rebootoljunk az új kernellel.

3.2 JFS filerendszer készítése

OK, most van egy kernelünk JFS támogatással, itt az ideje, hogy megformázzuk az üres partíciónkat JFS-re.

#mkfs -t jfs /dev/hda6

mkfs.jfs development version: $Name: v0_3_1 $

Warning! All data on device /dev/hda6 will be lost!

Continue? (Y/N) y


Format completed successfully.

5120608 kilobytes total disk space.

3.3 A root filerendszer másolása

Ez egy könnyű lépés, kevés munkát igényel a részedről, viszont ez viszi el a legtöbb időt a munka során. Először is umount-old az összes NFS, SMB, és cdrom-ot, ami esetleg mountolva lenne. Készíts egy csatolási pontot (mount point) az új JFS partíció részére, és mountold azt. Néhány dolog mielőtt másolsz: ne másold a /proc könyvtárt, viszont készíts neki egy csatolási pontot. Ha nem tudod umountolni a NFS-ed vagy cd-rom-od, emlékezz rá, hogy ezeket ne másold. Minden mást másolj át a cp -a paranccsal.

#mkdir /jfsvol

#mount -t jfs /dev/hda6 /jfsvol

#cd /

#cp -a bin etc lib boot dev home usr var [...] /jfsvol

#mkdir /jfsvol/proc

Ugyanezt a cp -ax paranccsal is el lehet végezni könnyebben, lásd a bővebb információkért a cp man oldalát.


3.4 Végső beállítások

Mielőtt rebootolnánk az új JFS partíciónkra, el kell végeznünk néhány beállítást. Először is, meg kell változtatnunk a /etc/fstab bejegyzést a root partíciónkhoz. Emlékezz! hogy az fstab file amin dolgoznunk kell a /jfsvol/etc alatt van, hiszen az lesz az új root partíciónk. Tehát szerkeszd ezt a filet, és írd át a root partícióhoz szóló bejegyzést. Valahogy így:

LABEL=/ / ext2 defaults 1 1

Ezt kell megváltoztatnunk így:

/dev/hda6 / jfs defaults 1 1

Editáld a /etc/lilo.conf-ot úgy, hogy a root partíciódra mutasson. Valami ilyesmit kell csinálnod:

default=jfsboot2

...

image=/boot/vmlinuz-2.4.0-jfs

label=jfsboot2

read-only

root=/dev/hda6

Figyelj arra, hogy futtasd a'/sbin/lilo'-t újra, mielőtt rebootolnál.

3.5 Reboot

Gratulálok! Ha követted a lépéseket, akkor a rendszered tisztán JFS-en fut. Hogy ellenőrizd ezt, írd be 'mount' és ellenőrizd a kimenetet:

/dev/hda6 on / type jfs (rw)

none on /proc type proc (rw)

none on /dev/pts type devpts (rw,gid=5,mode=620)

Ha minden jól müködik, akkor a régi partíciódat megformázhatod JFS-re, és visszaállíthatod a rendszered az eredeti partícióra. Vagy csinálhatsz amit kedved tart. Ha rám hallgatsz azt csinálsz amit akarsz ;-).



4. Copyright, licenc, visszajelzés és ilyesmi:



JFS Root Boot HOWTO

Paul Larson plars@austin.ibm.com

v1.0, May 22, 2001 - Copyright © International Business Machines Corp., 2001 1. Introduction

Micskó Gábor trey@debian.szintezis.hu - Hungarian Unix Portal

Ez a dokumentum szabadon másolható és terjeszthetõ, ha a copyright és az engedély szövegét minden másolaton megõrzik.



E dokumentum módosított változatai a változatlan másolatokkal megegyezõ feltételek alapján másolhatók és terjeszthetõk, ha a módosított változatot is az ezzel az engedéllyel megegyezõ feltételekkel terjesztik. A fordítások is a ``módosított változat'' kategóriájába tartoznak.



Garancia: Nincs.



Ajánlások: Az üzleti célú terjesztés megengedett és támogatott, de nyomatékosan ajánlott, hogy a terjesztõ lépjen kapcsolatba a szerzõvel a terjesztés elõtt, a dolgok naprakészségének biztosítása végett. (Küldhetsz egy példányt abból, amit csinálsz, ha már úgyis csinálod.) A fordítóknak is ajánlott kapcsolatba lépni a szerzõvel, mielõtt lefordítják. A nyomtatott változat jobban néz ki. A papírt használd fel újra!


Visszajelzéseket, építő jellegű kritikát a trey@debian.szintezis.hu email címre várok.



Sok szerencsét!