Pääkäyttäjän pitäisi huolehtia tärkeiden tiedostojen tallentamisesta toiselle taltiolle siten, että niiden palautus tarvittaessa on mahdollista. Kun käytettävissä on riittävän iso varmistustaltio, ovat varmuuskopiot yksinkertaisia: kirjoitetaan kaikki taltiolle riittävän usein.
Mikäli ei ole taltiota johon koko levyn sisältö mahtuisi kerralla, kannattaa tutkia miten varmuuskopioitaisiin riittävästi. Esimerkiksi koneeseen asennettuja ohjelmia ei välttämättä kannata varmuuskopioida, voi olla helpompaa asentaa ne uudestaan.
tale@dilbert ~ $ df -h Filesystem Size Used Avail Use% Mounted on /dev/sda5 99M 37M 57M 39% / /dev/sda6 964M 157M 757M 18% /var /dev/sda7 190M 2.0k 180M 1% /export3 /dev/sda8 2.7G 2.3G 347M 87% /export /dev/sdb1 17G 16G 786M 96% /export2 /dev/sdc2 1.8G 344M 1.4G 19% /tmp /dev/sdc3 2.0G 1.2G 889M 56% /usr tale@dilbert ~
Esimerkin palvelinkoneessa on levytila jaettu useisiin
levyosioihin, näistä /usr
sisältää Debian GNU/Linux
-ohjelmat, /tmp
ei ehkä mitään varmistamisen
väärtiä. /var
sisältää lokitiedostot, nämä
saattavat olla hyvinkin tärkeitä riippuen koneen
käyttötarkoituksesta. Mutta mahdollisesti mitään näistä ei tarvitse
varmuuskopioida.
/usr
sisältää siis niitä tiedostoja joita
on asenneltu rompulta tai netistä, ne saa asennettua uudestaan jos vain
muistaa mitä ohjelmapaketteja on asennettu. Tässä helpottaa
dpkg --get-selections, joka näyttää koneeseen
asennetuista paketeissa asennustilan, siis onko ne merkitty
asennettavaksi, poistettavaksi tms.
$ dpkg --get-selections > /tmp/dpkg--get-selections.list tale@phb ~/Work/Homepage $ wc -l /tmp/dpkg--get-selections.list 947 /tmp/dpkg--get-selections.list tale@phb ~/Work/Homepage $ head /tmp/dpkg--get-selections.list aalib1 install abuse install abuse-frabs install abuse-sdl install abuse-sfx install acroread deinstall addressbook deinstall adduser install ae deinstall an install tale@phb ~/Work/Homepage $
Tallettamalla listauksen voi sen avulla merkitä samat ohjelmapaketit asennettaviksi: dpkg --set-selections < dpkg--get-selections.list. Tätä voi käyttää myös jos pitää toiseen koneeseen saada asennettua samat paketit, esimerkiksi haluttaessa samanlaisia koneita. Mikäli massa-asennukset kiinnostavat, tutustumisen arvoinen on fai.
Jos on menetellyt kuten aikaisemmin kehotettiin eli
/etc
-hakemistossa olevat ohjelmien asetukset
sisältävät tiedostot on versioitu /etc/RCS
-hakemistossa, riittää tuon hakemiston tallettaminen. Sieltä saa
takaisin ne muutokset joita on tehnyt koneen asentamisen jälkeen.
Komennolla rsync voi kokonaisen hakemistopuun kopioida toiselle koneelle ja ylläpitää kopiota. rsync osaa kopioida vain muutokset, jopa vain muuttuneen osan tiedostosta. Käynnistämällä rsync esimerkiksi kerran vuorokaudessa on suhteellisen tuore kopio tiedostoista tallessa.
Huomaa, että molemmissa koneissa pitää olla rsync ja ssh asennettuna, jotta komento toimisi:
dilbert# rsync -a --rsh=ssh /export/ peli:/opt/dilbert
Tässä kopioidaan koneesta dilbert (näkee kehoitteesta) kaikki
mitä /export
-hakemistosta löytyy koneeseen peli
hakemistoon /opt/dilbert
. Ensimmäisellä
kopiointikerralla on tietysti pakko kopioida kaikki eli ei säästy
mitään (mutta rsync on silti nopeampi kuin esimerkiksi ftp), mutta
toisella kerralla kopioidaan vaan muuttuneista tiedostoista muuttuneet
osat jolloin kopiointi sujuu huomattavasti nopeammin. Seuraavassa
kuluu vain minuutti 46 sekuntia 2.3 Gigatavun levyosion
"varmistamiseen", eli se on kopioitu jo kertaalleen ja juurikaan
muutoksia ei ole tullut eli rsync vain tarkistaa tiedostojen olevan
molemmissa päissä samat.
dilbert# time rsync -a --rsh=ssh /export/ peli:/opt/dilbert root@peli's password: real 1m46.179s user 0m9.300s sys 0m6.330s dilbert#