Mentsük, ami menthető! II.
2004/12/06 00:47
572 megtekintés
A cikk már legalább egy éve nem frissült, az akkor még aktuális információk lehet, hogy mára elavultak.
Előző alkalommal megpróbáltunk mentési stratégiákat felállítani. Most lássuk, mivel tudjuk adatainkat archiválni!

Most, hogy tudjuk, milyen adatok mentésére lesz szükségünk, feltehetőleg kiválasztottuk és beszereztük az archiváláshoz szükséges eszközünket, nincs más hátra, minthogy megkeressük a szükséges szoftvereket. Szerencsére a Linux - a Unixokhoz hasonlóan - nem szűkölködik a háttértárak kezeléséhez szükséges eszközökben. Kezdetnek máris itt van a jó öreg tar (tape archive), mely nevével ellentétben tökéletesen alkalmazható akár merevlemezen is.

A tar néhány alapvető funkciója a következő

tar cf nev.tar Dir: a Dir könyvtár tartalmát összecsomagolja a nev.tar file-ba
tar czf nev.tar.gz Dir: ugyanez, csak gzip tömörítéssel
tar czf nev.tar /dev/nst0: a /dev/nst0 szalagos meghajtóra archivál
tar xzf nev.tar.gz: a nev.tar.gz archívum tartalmát csomagolja ki az aktuális könyvtárba.

Szalagos meghajtó használata estén jó barátunk lehet az mt, mely a tape egység vezérlésére alkalmas. A legfontosabb mt parancsok a következők:

mt -f /dev/nst0 status - tájékoztat a meghajtó állapotáról
mt -f /dev/nst0 rewind - visszacsévéli a szalagot
mt -f /dev/nst0 rewoffl - visszacsévéli és kiadja a szalagot.

Lássuk, mit lehet ezzekkel kezdeni. Elsőként dobjunk össze egy egyszerű "mentőprogramot":

#!/bin/bash

/bin/tar czf /dev/nst0 /mnt
/bin/mt rewoffl -f /dev/nst0

Ha e scriptet betesszük a root crontabjába megfelelő időzítéssel, akkor a megadott időpontokban az mnt könyvtár tartalmát elmenti a szalagos meghajtóra, majd a feladat végeztével visszacsévéli és kiadja a szalagos médiát.A következő alkalmazás kicsit kifinomultabb: több könyvtárat is megadhatunk, valamint alkalmas a kiírt anyag ellenőrzésére:

#!/bin/bash

PATH=/bin:/usr/bin

backupdirs="/etc /home /var"

mt -f /dev/nst0 rewind

for path in $backupdirs
do
    echo "A $path könyvtárak archiválása indul" | wall
    tar czf /dev/nst0 $path 1>/dev/null
    sleep 2
done

echo "Archiválás kész, állapot:: $?" | wall
echo "Az archívum ellenőrzése indul" | wall

mt -f /dev/nst0 rewind

for path in $backupdirs
do
    echo "$path ellenőrzése" | wall
    tar tf /dev/nst0 1>/dev/null &&
    echo "$path: verified" | wall ||
    echo "$path: hibák az ellenőrzés során" | wall
    if [ $? -eq 0 ]
            then echo "$path: ellenőrizve"
            else echo "$path: hiba az ellenőrzés során" 1>&2
    fi

mt -f /dev/nst0 fsf 1
done

mt -f /dev/nst0 rewind
echo "Távolítsa el a szalagot!" | wall

Csatlakozz hozzánk!

Ajánljuk

European Schoolnet Academy Ingyenes online tanfolyamok tanároknak
School Education Gateway Ingyenes tanfolyamok és sok más tanárok számára
ENABLE pilot Program iskoláknak a bullying ellen
eBiztonság Minősítés Minősítési rendszer oktatási intézményeknek