Arkisto: tammikuu 2011

Varmuuskopiointitapoja

keskiviikkona 12. tammikuuta 2011

Siika saatiin eilen tuotantokäyttöön, ja sen ansiosta kaikille jäsenille on nyt tarjolla 500 GB varmuuskopiointitilaa. Mutta millä ohjelmilla varmuuskopioita saa järkevimmin otettua?

Keskityn tässä Linux-pohjaisiin järjestelmiin, koska niistä tiedän eniten. Tietääkseni ainakin rsync toimii täsmälleen samalla tavalla myös Windowsissa ja Mac OS X:ssä, ja duplicity Mac OS X:ssä.

Olennaisin asia varmuuskopiointisovelluksessa on tuki pelkkien muuttuneiden tietojen siirtämiselle verkon yli. Esimerkiksi 1 Mbps ulospäin siirtävällä ADSL-yhteydellä 500 gigatavun siirto kestää 50 päivää, joten täyttä varmuuskopiointia ei tosiaan halua tehdä kuin kerran.

Jaetulle palvelimelle siirrettävät varmuuskopiot kannattaa myös salakirjoittaa, jos niissä on mitään vähänkään yksityistä. Valitettavasti salakirjoitus on monesti enemmän tai vähemmän ristiriidassa edellisen kohdan kanssa, sillä salakirjoitetuista tiedoista muutosten hakeminen on monimutkaisempaa.

Monessa ohjelmassa on lisäksi tuki inkrementaalisille versioille varmuuskopioista, joista voi tarvittaessa palauttaa esimerkiksi kuukauden vanhan version. Kapsilla tämä ei ole kuitenkaan ehdottoman tarpeellista, koska käytössä ovat järjestelmänlaajuiset tilannevedokset. Tilannevedosten säilytysaikaa ei tosin ole määritelty tarkasti, joten pitkäaikaissäilytystä varten täytyy ottaa myös itse kopioita.

Muutamia ratkaisuja näihin tarpeisiin on:

duplicity on tehty erityisesti etävarmuuskopiointiin, ja tukee salausta, pelkkien muutosten siirtoa ja versioiden tallennusta. Harmillisesti muutosten siirto ja versioiden tallennus riippuvat toisistaan: kaikki vanhat versiot täytyy säilyttää, tai vaihtoehtoisesti ajoittain täytyy siirtää kaikki tiedot uudelleen.

rdiff-backup tekee versioinnin eri järjestyksessä: uusin versio säilytetään hakemistossa, ja vanhemmat versiot pakattuina muutoskokoelmina. Haittapuolena rdiff-backupissa ei ole tukea salaukselle, ja se edellyttää täsmälleen saman version sovelluksesta sekä omalle koneelle että palvelimelle.

rsync:illä saa helposti kopioitua tietyn hakemiston palvelimelle, ja päivitettyä muutokset tehokkaasti. Tarvittaessa myös versiotallenteita saa luotua käyttämällä valitsinta –link-dest. Rsyncissä ei kuitenkaan suoraan ole tukea salaukselle, mutta tämä puute korjaantuu toisella työkalulla.

encfs on FUSE:en perustuva virtuaalitiedostojärjestelmä, jota tavallisesti käytetään tietojen säilyttämiseen salattuna kiintolevyllä. Valitsimen –reverse kanssa se kuitenkin ottaa kiintolevyllä salaamattoman hakemiston, ja esittää sen salattuna virtuaalihakemistona. Nyt tämän virtuaalihakemiston voi siirtää rsync:llä palvelimelle, jolloin saavutetaan sekä salaus että tehokas siirto ja tallennus.

Itse päädyin (kunhan varmuuskopioita jaksan alkaa järjestelemään uudelleen) tuohon encfs+rsync -yhdistelmään. Haittana on tosin monimutkaisuus, etenkin FUSEn säädön osalta.

Yhtä kaikki, muistakaa testata varmuuskopioiden palautus! Jos et testaa, käy näin.