Naplózó UFS használata asztali számítógépeken
Előző |  | Következő

# 4. A naplózás beállítása

## 4.1. A `gjournal` futtatása

A naplózást nagyon könnyű lesz beállítani miután már előkészítettük az ehhez szükséges partíciókat. Váltsunk át egyfelhasználós módba, tehát jelentkezzünk be `root` felhasználóként és gépeljük be:

    # shutdown now

Ezután az Enter billentyű lenyomásával megkapjuk az alapértelmezett parancsértelmezőt. Válasszuk le azokat a partíciókat, amelyeken engedélyezni kívánjuk a naplózást. Ezek a példánkban a `/usr` és `/var` partíciók voltak:

    # umount /usr /var

Töltsük be a naplózáshoz szükséges modult:

    # gjournal load

Most pedig a korábbi feljegyzéseink alapján állapítsuk meg melyik naplóhoz melyik partíciót fogjuk rendelni. A példánkban a `/usr` csatlakozási ponthoz az `ad0s1f` eszköz tartozik, és ennek a naplója az `ad0s1g` eszköz lesz, miközben a `/var` ponthoz az `ad0s1d` eszközt rendeltük, és ezt az `ad0s1h` eszközön naplózzuk. Ennek megfelelően a következő parancsokat kell kiadnunk:

    # gjournal label ad0s1f ad0s1g

    GEOM_JOURNAL: Journal 2948326772: ad0s1f contains data.
    GEOM_JOURNAL: Journal 2948326772: ad0s1g contains journal.

    # gjournal label ad0s1d ad0s1h

    GEOM_JOURNAL: Journal 3193218002: ad0s1d contains data.
    GEOM_JOURNAL: Journal 3193218002: ad0s1h contains journal.

> Megjegyzés: A `gjournal` hibát fog jelezni, ha bármelyik partíció utolsó szektora már használatban van. Ilyen helyzetekben az `-f` kapcsoló segítségével felülírásra tudjuk kényszeríteni a parancsot, mint például:

>     # gjournal label -f ad0s1d ad0s1h

> Mivel most telepítettük a rendszerünket, elég kicsi a valószínűsége, hogy így bármit is ténylegesen felülírnánk.

Létrejött két új eszköz, név szerint az `ad0s1d.journal` és az `ad0s1f.journal`. Ezek képviselik azokat a `/var` és `/usr` partíciókat, amelyeket valójában csatlakoztatnunk kell. A csatlakoztatásuk előtt azonban állítsuk be hozzájuk a naplózást és tiltsuk le a Soft Updates használatát:

    # tunefs -J enable -n disable ad0s1d.journal

    tunefs: gjournal set
    tunefs: soft updates cleared

    # tunefs -J enable -n disable ad0s1f.journal

    tunefs: gjournal set
    tunefs: soft updates cleared

Ezt követően parancssorból csatlakoztassuk az új eszközöket a nekik megfelelő pontokra (itt most már használhatjuk az `async` beállítást):

    # mount -o async /dev/ad0s1d.journal /var
    # mount -o async /dev/ad0s1f.journal /usr

Nyissuk meg az `/etc/fstab` állományt, és az előbbiek szerint javítsuk ki a `/usr` és a `/var` állományrendszerekhez tartozó bejegyzéseket:

    /dev/ad0s1f.journal     /usr            ufs     rw,async      2       2
    /dev/ad0s1d.journal     /var            ufs     rw,async      2       2

> Figyelem: Figyelmesen ellenőrizzük a bejegyzéseket, mert ha hibásan adjuk meg ezeket, akkor az újraindítás után gondok lehetnek a rendszer indításával!

Végezetül gondoskodjunk róla, hogy a gjournal(8) modul minden egyes indítás során betöltődjön. Ehhez nyissuk meg a `/boot/loader.conf` állományt és adjuk hozzá a következő sort:

    geom_journal_load="YES"

Gratulálunk, sikeresen beállítottuk a rendszerünkön a naplózást! Innen vagy az `exit` begépelésével lépjünk vissza a többfelhasználós módba, vagy egy újraindítással próbáljuk ki a konfiguráció eredményét (mi ezt javasoljuk). A rendszerindítás során a következőhöz hasonló üzeneteket kell majd látnunk:

    ad0: 76293MB XEC XE800JD-00HBC0 08.02D08 at ata0-master SATA150
    GEOM_JOURNAL: Journal 2948326772: ad0s1g contains journal.
    GEOM_JOURNAL: Journal 3193218002: ad0s1h contains journal.
    GEOM_JOURNAL: Journal 3193218002: ad0s1d contains data.
    GEOM_JOURNAL: Journal ad0s1d clean.
    GEOM_JOURNAL: Journal 2948326772: ad0s1f contains data.
    GEOM_JOURNAL: Journal ad0s1f clean.

Szabálytalan leállások esetén az iménti üzenetek némileg változhatnak, például:

    GEOM_JOURNAL: Journal ad0s1d consistent.

Ez általában arra utal, hogy a gjournal(8) a naplóterületen tárolt információk segítségével helyreállította az állományrendszert.

## 4.2. A naplózás engedélyezése frissen létrehozott partíciókon

Míg az előbbiekben tárgyalt megoldást leginkább olyan partíciók esetén alkalmazhatjuk, amelyek már eleve tartalmaznak adatokat, addig egy újonnan létrehozott partíciót némileg könnyebb naplózással ellátni, mivel ilyenkor az adat- és a naplóterület egyazon partíción is kialakítható. Például most tegyük fel, hogy hozzáadtunk egy újabb lemezt a rendszerünkhöz, amelyen készítettünk egy új `/dev/ad1s1d` nevű partíciót. A napló létrehozása ekkor csupán ennyi:

    # gjournal label ad1s1d

A napló mérete alapértelmezés szerint 1 GB lesz, amelyet viszont a `-s` opció használatával tetszés szerint átállíthatunk. Az értéket megadhatjuk byte-okban, vagy a `K`, `M`, illetve `G` hozzáfűzésével kilobyte-okban, megabyte-okban, illetve gigabyte-okban is. Arra azonban figyeljünk, hogy a `gjournal` nem enged túlságosan kis méretű naplót létrehozni.

Például egy 2 GB méretű napló az alábbi paranccsal hozható létre:

    # gjournal label -s 2G ad1s1d

Mellé hozzunk létre egy állományrendszert az új partíción, ahol a `-J` kapcsolóval engedélyezzük a naplózást:

    # newfs -J /dev/ad1s1d.journal

## 4.3. A naplózás támogatásának beépítése a rendszermagba

Amennyiben nem kívánjuk betölteni a `geom_journal` modult, lehetőségünk van közvetlenül a rendszermagba beépíteni a hozzá tartozó funkcionalitást. Ehhez nyissunk meg (vagy hozzunk létre) egy saját rendszermag-konfigurációs állományt, és vegyük fel benne a következő két sort:

    options UFS_GJOURNAL # Megjegyzés: Ez része a GENERIC rendszermagnak
    options GEOM_JOURNAL # Ezt se felejtsük ki

A FreeBSD kézikönyvben szereplő utasítások mentén fordítsuk le és telepítsük az új rendszermagot.

Ha korábban használtuk volna a modult, akkor ezzel együtt ne felejtsük el kivenni a `/boot/loader.conf` állományból sem a hozzá tartozó sort.

Előző | Tartalom | Következő
A FreeBSD telepítése során elvégzendő lépések |  | A naplózás használata során felmerülő hibák kezelése

Ha kérdése van a FreeBSD-vel kapcsolatban, a következő címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon: <gabor@FreeBSD.org>.