Ero sivun ”Duplicity” versioiden välillä
pEi muokkausyhteenvetoa |
|||
Rivi 3: | Rivi 3: | ||
| kuva= | | kuva= | ||
| kuvateksti= | | kuvateksti= | ||
| lisenssi=[[ | | lisenssi=[[GPLv2+]] | ||
| käyttöliittymä=teksti | | käyttöliittymä=teksti | ||
| kotisivu=[http://duplicity.nongnu.org/ duplicity.nongnu.org] | | kotisivu=[http://duplicity.nongnu.org/ duplicity.nongnu.org] |
Versio 31. maaliskuuta 2016 kello 00.28
Duplicity | |
---|---|
Käyttöliittymä | teksti |
Lisenssi | GPLv2+ |
Kotisivu | duplicity.nongnu.org |
Duplicity on rsync-protokollaa käyttävä Pythonilla kirjoitettu varmuuskopiointiohjelma, jolla tehdään salatut varmuuskopiot tiedostoista. Duplicity käyttää GnuPG-salausohjelmaa varmuuskopioiden salaukseen, joten symmetrisen salauksen lisäksi myös avainparisalaus on mahdollinen. Duplicity on erityisen kätevä varmuuskopioitaessa SSH:n yli etäpalvelimelle. Duplicity tukee versiointia ja osaa myös tallentaa tiedostojen oikeudet. Linkeistä Duplicity tukee symbolisia linkkejä, mutta ei kovia linkkejä.
Asennus
Duplicity löytyy useimpien jakeluiden paketinhallinnasta nimellä duplicity. Lisätietoja ohjelmien asentamisesta löytyy artikkelista Ohjelmien asentaminen.
Käyttötapaus: /home -hakemiston varmuuskopiointi palvelimelle
Duplicityn käyttöön tulee luoda PGP- ja SSH-avainparit. Lisätietoa löytyy artikkeleista PGP-avainparin luominen ja SSH-avainparin luominen. PGP-avainta ei tarvita jos käytetään symmetristä salausta, mutta avainparisalaus on vahvempi, joten tässä ohjeessa käsitellään Duplicityn käyttö avainparilla.
Valmistelu
Luodaan ensin uusi avainpari duplicityn käyttöön root-tunnukselle. Salasana jätetään tyhjäksi.
# ssh-keygen -t rsa -b 4096
Kopioidaan julkinen avain palvelimelle.
# ssh-copy-id käyttäjä@esimerkki.fi
Kirjaudutaan palvelimelle ja luodaan hakemisto varmuuskopioille.
# ssh käyttäjä@esimerkki.fi $ mkdir ~/varmuuskopio $ exit
Luodaan PGP-avainpari GnuPG-ohjelmalla rootille /root/.gnupg/ -hakemistoon. GPG:lle tulisi antaa vahva salasana.
# gpg --gen-key
Oman avaimen tunnusta tarvitaan myöhemmin. Sen saa näkyviin komennolla:
# gpg --list-keys
Varmuuskopiointi
/home voitaisiin varmuuskopioida palvelimelle nyt näin:
# duplicity --encrypt-key avaimen_tunnus /home sftp://käyttäjä@esimerkki.fi/varmuuskopio
Koska varmuuskopiota ei ole tehty aiemmin, duplicity tekee täyden varmuuskopion. Kun varmuuskopio tehdään uudestaan, ei kopioida kaikkea uudestaan, vaan kopioidaan vain muutokset, eli tehdään inkrementaalinen varmuuskopio. Uuden täyden varmuuskopion voi tehdä kuitenkin full -parametrilla.
# duplicity full --encrypt-key avaimen_tunnus /home sftp://käyttäjä@esimerkki.fi/varmuuskopio
Jos ei haluta että Duplicity kysyy PGP-avaimen salasanaa, voidaan se antaa esimerkiksi näin:
# PASSPHRASE="avaimen_salasana" duplicity --encrypt-key avaimen_tunnus /home sftp://käyttäjä@esimerkki.fi/varmuuskopio
Tämä on erityisen hyödyllinen esimerkiksi skripteissä.
Jos halutaan poistaa palvelimelta esimerkiksi kaikki paitsi kolme uusinta täyttä varmuuskopiota muutoksineen, voitaisiin ne poistaa näin:
# duplicity remove-all-but-n-full 3 --force sftp://käyttäjä@esimerkki.fi/varmuuskopio
Varmuuskopiointi voitaisiin automatisoida esimerkiksi cronilla, jolloin inkrementaaliset varmuuskopiot voitaisiin tehdä päivittäin ja täydet varmuuskopiot esimerkiksi kerran viikossa tai kuukaudessa.
Tiedostojen palauttaminen varmuuskopiosta
Koko /home/ -hakemisto voitaisiin palauttaa varmuuskopiosta seuraavasti:
# PASSPHRASE="avaimen_salasana" duplicity sftp://käyttäjä@esimerkki.fi/varmuuskopio /home
Tietty tiedosto voidaan palauttaa --file-to-restore /tiedoston/polku parametrilla.
# PASSPHRASE="avaimen_salasana" duplicity --file-to-restore /home/user/kuvat/lomakuva.png sftp://käyttäjä@esimerkki.fi/varmuuskopio /home/user/kuvat/lomakuva.png