Ero sivun ”Duplicity” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
pEi muokkausyhteenvetoa
 
(4 välissä olevaa versiota 2 käyttäjän tekeminä ei näytetä)
Rivi 3: Rivi 3:
| kuva=
| kuva=
| kuvateksti=
| kuvateksti=
| lisenssi=[[GPL]]v2+
| 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]
Rivi 18: Rivi 18:
{{Oikeudet}}
{{Oikeudet}}


===Valmistelu===
Luodaan ensin uusi avainpari duplicityn käyttöön [[root]]-tunnukselle. Salasana jätetään tyhjäksi.
Luodaan ensin uusi avainpari duplicityn käyttöön [[root]]-tunnukselle. Salasana jätetään tyhjäksi.
  # ssh-keygen -t rsa -b 4096
  # ssh-keygen -t rsa -b 4096
Rivi 35: Rivi 36:
  # gpg --list-keys
  # gpg --list-keys


===Varmuuskopiointi===
<tt>/home</tt> voitaisiin varmuuskopioida palvelimelle nyt näin:
<tt>/home</tt> voitaisiin varmuuskopioida palvelimelle nyt näin:
  # duplicity --encrypt-key '''avaimen_tunnus''' /home <nowiki>sftp://käyttäjä@esimerkki.fi/varmuuskopio</nowiki>
  # duplicity --encrypt-key '''avaimen_tunnus''' /home <nowiki>sftp://käyttäjä@esimerkki.fi/varmuuskopio</nowiki>


Koska varmuuskopiota ei ole tehty aiemmin, duplicity tekee täyden varmuuskopion. Kun varmuuskopio tehdää uudestaan, ei tehdä koko varmuuskopiota uudestaan, vaan kopioidaan vain muutokset, eli tehdään inkrementaalinen varmuuskopio. Uuden täyden varmuuskopion voi tehdä kuitenkin <tt>full</tt> -parametrilla.
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 <tt>full</tt> -parametrilla.
  # duplicity full --encrypt-key '''avaimen_tunnus''' /home <nowiki>sftp://käyttäjä@esimerkki.fi/varmuuskopio</nowiki>
  # duplicity full --encrypt-key '''avaimen_tunnus''' /home <nowiki>sftp://käyttäjä@esimerkki.fi/varmuuskopio</nowiki>


Rivi 48: Rivi 50:
  # duplicity remove-all-but-n-full 3 --force <nowiki>sftp://käyttäjä@esimerkki.fi/varmuuskopio</nowiki>
  # duplicity remove-all-but-n-full 3 --force <nowiki>sftp://käyttäjä@esimerkki.fi/varmuuskopio</nowiki>


Varmuuskopiointi voitaisiin automatisoida esimerkiksi [[cron]]illa, jolloin inkrementaaliset varmuuskopiot voitaisiin tehdä päivittäin ja täydet varmuuskopiot esimerkiksi kerran viikossa.
Varmuuskopiointi voitaisiin automatisoida esimerkiksi [[cron]]illa, jolloin inkrementaaliset varmuuskopiot voitaisiin tehdä päivittäin ja täydet varmuuskopiot esimerkiksi kerran viikossa tai kuukaudessa.


===Tiedostojen palauttaminen varmuuskopiosta===
Koko <tt>/home/</tt> -hakemisto voitaisiin palauttaa varmuuskopiosta seuraavasti:
# PASSPHRASE="'''avaimen_salasana'''" duplicity <nowiki>sftp://käyttäjä@esimerkki.fi/varmuuskopio</nowiki> /home
Tietty tiedosto voidaan palauttaa <tt>--file-to-restore /tiedoston/polku</tt> parametrilla.
# PASSPHRASE="'''avaimen_salasana'''" duplicity --file-to-restore '''/home/user/kuvat/lomakuva.png''' <nowiki>sftp://käyttäjä@esimerkki.fi/varmuuskopio</nowiki> '''/home/user/kuvat/lomakuva.png'''
{{Varmuuskopiointi}}
[[Luokka:Komentorivin erikoisohjelmat]]
[[Luokka:Komentorivin erikoisohjelmat]]
[[Luokka:Varmuuskopiointi]]

Nykyinen versio 11. marraskuuta 2019 kello 10.41

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[muokkaa]

Duplicity löytyy useimpien jakeluiden paketinhallinnasta nimellä duplicity. Lisätietoja ohjelmien asentamisesta löytyy artikkelista Ohjelmien asentaminen.

Käyttötapaus: /home -hakemiston varmuuskopiointi palvelimelle[muokkaa]

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.

Komennot, jotka alkavat $-merkillä suoritetaan tavallisena käyttäjänä ja komennot, jotka alkavat #-merkillä suoritetaan pääkäyttäjänä. Katso myös su, sudo ja doas.

Valmistelu[muokkaa]

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[muokkaa]

/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[muokkaa]

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
v  k  m
Varmuuskopiointi ja palautustyökalut
 Varmuuskopiointi  Back in Time | backup2l | backuppc | Bacula | Déjá Dup | dirvish | duplicity | dvdisaster | Flyback | Keep | luckyBackup | Mondo Rescue | Partimage | Pybackpack | rdiff-backup | rsnapshot | Sbackup | SystemRescue | Unison
 Palautustyökalut  Clonezilla | Ddrescue | PhotoRec