De drie grote back-upprogramma's zijn dump(8), tar(1) en cpio(1).
De traditionele back-upprogramma's voor UNIX® zijn
dump
en restore
. Deze
zien het station als een verzameling van schijfblokken, onder
de abstracties van bestanden, koppelingen en mappen die door de
bestandssystemen worden aangemaakt. In tegenstelling tot andere
back-upprogramma's, verzorgt dump
een
back-up van een compleet bestandssysteem op een apparaat. Het
is niet in staat om slechts een gedeelte van een bestandssysteem
of een mapstructuur die meer dan één
bestandssysteem in beslag neemt te back-uppen. Het commando
dump
schrijft geen bestanden en
mappen naar band, maar de rauwe gegevensblokken waaruit de
bestanden en mappen bestaan. Wanneer het gebruikt wordt om
gegevens te extraheren, slaat restore
tijdelijke bestanden standaard op in /tmp/
— als u werkt vanaf een herstelschijf met een kleine map
/tmp
, moet u wellicht de
omgevingsvariabele TMPDIR
op een map met meer
vrije ruimte instellen zodat de restore kan slagen.
Indien dump
op een hoofdmap wordt
gebruikt, wordt er geen back-up gemaakt van /home
, /usr
of van de vele andere
mappen, aangezien dit typisch koppelpunten voor andere
bestandssystemen of symbolische koppelingen binnen deze
bestandssystemen zijn.
dump
bevat eigenaardigheden die uit de
begintijd in Versie 6 van AT&T UNIX® (circa 1975) zijn
overgebleven. De standaardparameters zijn geschikt voor banden
met 9 sporen (6.250 bpi), niet voor de media met hoge dichtheid
die vandaag beschikbaar zijn (tot 62.182 ftpi). Deze
standaardwaarden dienen op de opdrachtregel overschreven te
worden om de capaciteit van de huidige bandstations te
benutten.
Het is ook mogelijk om gegevens met
rdump
en rrestore
over
een netwerk naar een bandstation dat aan een andere computer
gekoppeld is te back-uppen. Beide programma's maken gebruik
van rcmd(3) en ruserok(3) om toegang tot het
bandstation op afstand te krijgen. De gebruiker die de back-up
uitvoert moet vermeld staat in het bestand
.rhosts
op de computer op afstand. De
argumenten die aan rdump
en
rrestore
gegeven worden dienen geschikt te
zijn voor gebruik op de computer op afstand. Als
rdump
gebruikt wordt om een dump te maken
van een FreeBSD computer naar een Exabyte-bandstation dat
met een Sun-computer genaamd komodo
verbonden
is:
#
/sbin/rdump 0dsbfu 54000 13000 126 komodo:/dev/nsa8 /dev/da0a 2>&1
Let op: er kleven veiligheidsbezwaren aan het toestaan van
authenticatie met .rhosts
. De situatie
dient goed geëvalueerd te worden.
Het is ook mogelijk om dump
en
restore
op een veiligere manier via
ssh
te gebruiken.
dump
via
ssh#
/sbin/dump -0uan -f - /usr | gzip -2 | ssh -c blowfish \
doelgebruiker@doelmachine.example.com dd of=/mijngrotebestanden/dump-usr-10.gz
Ook kan de ingebouwde manier van dump
gebruikt worden, door de omgevingsvariabele RSH
in te stellen:
dump
via
ssh met ingestelde
RSH
#
env RSH=/usr/bin/ssh /sbin/dump -0uan -f doelgebruiker@doelmachine.example.com:/dev/sa0 /usr
tar(1) stamt ook uit de tijd van Versie 6 van AT&T
UNIX® (circa 1975). Het werkt samen met het bestandssysteem.
tar
schrijft bestanden en mappen naar band
en ondersteunt niet het volledige scala aan opties dat
beschikbaar is met cpio(1), maar tar
heeft niet de ongebruikelijke opdrachtpijplijn nodig die
cpio
gebruikt.
Om tar
toe te passen op een Exabyte-bandstation
die met een Sun genaamd komodo
verbonden
is:
#
tar cf - . | rsh komodo dd of=tape-device
obs=20b
Indien de veiligheid van back-uppen over een netwerk een
punt is, dient gebruik te worden gemaakt van het commando
ssh
en niet van
rsh
.
cpio(1) is het originele UNIX® bandprogramma voor
magnetische media om bestanden uit te wisselen.
cpio
heeft opties (naast vele anderen) om
byte-swapping uit te voeren, een aantal verschillende
archiefformaten te schrijven en de gegevens over een pijplijn
naar andere programma's te voeren. Deze laatste optie maakt
cpio
een uitstekende keuze voor
installatiemedia. cpio
weet niet hoe het
door een mapstructuur moet lopen. Er dient een lijst met
bestanden door stdin
aangeleverd te
worden.
cpio
biedt geen ondersteuning voor
back-ups over het netwerk. Er kan gebruik worden gemaakt van
een pijplijn en rsh
om de gegevens naar een
banddrive op afstand te sturen.
#
for f in maplijst;
do
find $f >> back-up.lijst
done
#
cpio -v -o --format=newc < back-up.lijst | ssh gebruiker
@host
"cat > back-upapparaat
"
Hier is maplijst
een lijst van
de mappen waarvan een back-up gemaakt dient te worden,
gebruiker
@host
de gebruiker/hostnaam-combinatie die de back-ups uitvoert, en
back-upapparaat
het apparaat waar de
back-ups naar toe geschreven te worden (bijvoorbeeld
/dev/nsa0
).
pax(1) is het antwoord van IEEE en POSIX® op
tar
en cpio
. In de loop
der jaren zijn de verscheidene versies van
tar
en cpio
licht
incompatibel geworden. Dus in plaats van dit uit te vechten en
ze volledig te standaardiseren, heeft POSIX® een nieuw
archiveringsprogramma gemaakt. pax
poogt om
veel van de verscheidene formaten van cpio
en tar
te lezen en te schrijven, met daarbij
nog nieuwe, eigen formaten. De commandoverzameling lijkt meer
op die van cpio
dan op die van
tar
.
Amanda (Advanced Maryland Network Disk Archiver) is een client/server-back-upsysteem, in plaats van een enkel programma. Een Amanda server back-upt elk aantal computers dat een Amanda client en een netwerkverbinding met de Amanda server heeft naar een enkel bandstation. Een veelvoorkomend probleem bij bedrijven met een groot aantal schijven is dat de tijd die nodig is om de gegevens direct naar band te back-uppen langer is dan de tijd die voor de taak gereserveerd is. Amanda lost dit probleem op. Amanda kan gebruik maken van een “tussenschijf” om verschillende bestandssystemen tegelijkertijd te back-uppen. Amanda maakt “archiefverzamelingen” aan, een groep banden die gedurende een tijd gebruikt wordt om volledige back-ups te maken van alle bestandssystemen die in het instellingenbestand van Amanda vermeld staan. De “archiefverzameling” bevat ook incrementele (of differentiële) back-ups van alle bestandssystemen. Voor het herstellen van een beschadigd bestandssysteem zijn de meest recente volledige back-up en de incrementele back-ups nodig.
Het instellingenbestand biedt verfijnde controle over de back-ups en het netwerkverkeer door Amanda. Amanda kan elk bovenstaand back-upprogramma gebruiken om de gegevens naar de band te schijven. Amanda is òf als port òf als package beschikbaar.
“Nietsdoen” is geen computerprogramma, maar de de meest gebruikte back-upstrategie. Er zijn geen initiële kosten. Er is geen back-upschema om te volgen. Zeg gewoon nee. Als er iets met gegevens gebeurt, lach erom en leef ermee!
Als tijd en gegevens weinig tot niets waard zijn, is “Nietsdoen” het meest geschikte back-upprogramma. Maar wees bedacht, UNIX® is een nuttig stuk gereedschap en er is zo maar binnen zes maanden een verzameling bestanden die wèl van waarde is.
“Nietsdoen” is de juiste back-upmethode voor
/usr/obj
en andere mapstructuren die zo
opnieuw aangemaakt kunnen worden. Een voorbeeld zijn de
bestanden waaruit de HTML- of PostScript® versie van dit
Handboek bestaan. Deze documentformaten zijn vanuit
XML-invoerbestanden aangemaakt. Het back-uppen van de HTML-
of PostScript® bestanden is niet nodig. Van de XML-bestanden
dient regelmatig een back-up gemaakt te worden.
dump(8). Punt uit.. Elizabeth
D. Zwicky heeft stresstesten op alle hierboven besproken
back-upprogramma's uitgevoerd. De heldere keuze voor het
behouden van alle gegevens en alle eigenaardigheden van UNIX®
bestandssystemen is dump
. Elizabeth heeft
bestandssystemen aangemaakt met een grote verscheidenheid aan
ongewone omstandigheden (en enkele minder ongebruikelijke) en
heeft elk programma getest door een back-up van die
bestandssystemen uit te voeren en ze te herstellen. De
eigenaardigheden omvatten bestanden met gaten, bestanden met
gaten en een blok nullen, bestanden met vreemde tekens in hun
namen, onleesbare en onschrijfbare bestanden, apparaten,
bestanden waarvan de grootte verandert tijdens het back-uppen,
bestanden die aangemaakt/verwijderd worden tijdens het
back-uppen en meer. Ze presenteerde de resultaten op LISA V in
oktober 1991. Zie torture-testing
Backup and Archive Programs.
Er zijn slechts vier stappen om te volgen bij het voorbereiden op elke ramp die voor kan komen.
Het schijflabel van elke schijf dient afgedrukt te worden
(bijvoorbeeld met bsdlabel da0 | lpr
), de
bestandssysteemtabel (/etc/fstab
) en
alle opstartboodschappen, alles in tweevoud.
Ten tweede dient een “livefs” CD-ROM gebrandt te worden. Deze CD-ROM biedt ondersteuning voor het opstarten in een FreeBSD “livefs” reddingsmodus die gebruiker in staat stelt om vele taken uit te voeren zoals het draaien van dump(8), restore(8), fdisk(8), bsdlabel(8), newfs(8) en meer. Een livefs CD-beeld voor FreeBSD/i386 8.4-RELEASE is beschikbaar op ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/ISO-IMAGES/8.4/FreeBSD-8.4-RELEASE-i386-livefs.iso.
Livefs CD-beelden zijn niet beschikbaar voor FreeBSD 9.1-RELEASE en nieuwer. Naast de beelden voor CDROM-installaties kunnen ook beelden voor flash-drive-installaties gebruikt worden om een systeem te redden. Het “memstick”-beelden voor FreeBSD/i386 9.1-RELEASE is beschikbaar op ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/i386/ISO-IMAGES/9.1/FreeBSD-9.1-RELEASE-i386-memstick.img.
Ten derde dienen regelmatig back-upbanden aangemaakt te worden. Alle veranderingen die na de laatste back-up zijn gemaakt kunnen onherroepelijk verloren zijn gegaan. De back-upbanden dienen beveiligd te worden tegen overschrijven.
Ten vierde dienen de “livefs” CD-ROM die in stap twee
gemaakt is en de back-upbanden getest te worden. Van de handelingen
dienen aantekeningen gemaakt te worden. De aantekeningen, de
CD-ROM, de afdrukken en de back-upbanden dienen
gezamenlijk bewaard te worden. Tijdens het herstellen kunnen
de notities ervoor zorgen dat de back-upbanden vernietigd
worden. Hoe? In plaats van tar xvf
/dev/sa0
kan per ongeluk tar cvf
/dev/sa0
worden ingetypt, waardoor de back-upband
overschreven wordt.
Als extra veiligheidsmaatregel dienen telkens een “livefs” CD-ROM en twee back-upbanden gemaakt te worden. Eén van deze banden dient op een plaats op afstand bewaard te worden. Zo'n plaats is NIET de kelder van het zelfde kantoorgebouw. Een aantal bedrijven in het World Trade Center heeft deze les op de harde manier geleerd. Zo'n plaats dient fysiek gescheiden te zijn van de computers en de schijven door een significante afstand.
De hamvraag is: heeft de hardware het overleefd? Er zijn regelmatig back-ups gemaakt, dus zorgen over de software zijn niet nodig.
Indien hardware beschadigd is, dienen kapotte onderdelen vervangen te worden voordat gepoogd wordt om een computer te gebruiken.
Plaats de “livefs” CD-ROM in de CD-ROM drive indien
de hardware in orde is en start de computer op. Het originele
installatiemenu wordt op het scherm getoond. Kies het land van
toepassing en kies daarna en kies het item
. restore
en de andere
benodigde programma's staan in /mnt2/rescue
.
Herstel elk bestandssysteem apart.
Probeer de rootpartitie van de eerste schijf aan te
koppelen (bijvoorbeeld mount /dev/da0a
/mnt
). Als het schijflabel beschadigd is, gebruik
dan bsdlabel
om de schijf opnieuw te
partitioneren en te labelen zodat deze overeenkomt met het
afgedrukte en bewaarde label. Gebruik voor het opnieuw
aanmaken van de bestandssystemen newfs
.
Koppel de rootpartitie van de schijf opnieuw aan voor lezen
en schrijven (mount -u -o rw /mnt
).
Gebruik voor het herstellen van de gegevens van dit
bestandssysteem het back-upprogramma en de back-upbanden
(bijvoorbeeld restore vrf /dev/sa0
).
Koppel nu het bestandssysteem af (bijvoorbeeld
umount /mnt
). Herhaal dit voor elk
beschadigd bestandssysteem.
Back-up de gegevens naar nieuwe banden als het systeem weer draait. De omstandigheden die verantwoordelijk waren voor de crash of het gegevensverlies kunnen weer voorkomen. Nu een extra uur investeren, kan later grote zorgen besparen.