# Kuinka luoda palvelimen varmuuskopioita rsync-komennolla

Varmuuskopioiden tulisi olla keskeisessä asemassa palvelinsuunnittelussasi. Yksittäiset varmuuskopiot voidaan määrittää ja suorittaa nopeasti ilmaisen synkronointityökalun tai [rsync-protokollan](https://www.ionos.com/fi-fi/digitalguide/palvelin/tyoekalut/rsync/) avulla.

## Kuinka määrittää rsync-varmuuskopiointi Linux-palvelimille

Jos haluat käyttää rsync-ohjelmaa Linux-käyttöjärjestelmissä, asenna ohjelma samannimisestä paketista ja luo varmuuskopiot **komentoriviltä**. Seuraavassa osiossa esittelemme Ubuntun avulla tärkeimmät vaiheet rsync-ohjelman avulla tehtävien varmuuskopiointiprosessien määrittämiseen. Olemme lisänneet mukaan myös käytännön esimerkkejä.

Rsync on jo asennettu Ubuntussa oletuksena. Jos näin ei ole, asenna se seuraavalla komennolla:

```bash
sudo apt-get install rsync
```

Jos rsync on asennettu, voit määrittää **lähde- ja kohdekansiot** sekä varmuuskopiointiasetukset komentoriviltä. Lähde- ja kohdepolkuina on määritettävä vastaavasti **lähdekansio** ja kansio, johon rsync tallentaa **varmuuskopion**. Vakiotila (”Archive”) suoritetaan esimerkiksi seuraavasti:

```bash
rsync -a source directory target directory
```

Vinkki Tarkista testikierroksella `-n`, että määritetyt **parametrit ja hakemistot** ovat oikein. Virheelliset tiedot voivat pahimmassa tapauksessa johtaa tietojen menetykseen. Jos joitakin tiedostoja ei kopioida odotetulla tavalla, syynä on usein puutteelliset käyttöoikeudet. Jos näin tapahtuu, yritä suorittaa komento järjestelmänvalvojana lisäämällä komennon eteen `sudo`.

## Viisi esimerkkiä rsync-varmuuskopioinnin käytöstä

Kun olet oppinut peruskomennot, rsync on erinomainen työkalu **tiedostojen kopiointiin** ja **varmuuskopioiden luomiseen**. Voit joko kokeilla ja ottaa käyttöön **yksittäisiä komentoja** tai käyttää rsync-parametrien **toimiviksi todettuja yhdistelmiä**. Olemme koonneet seuraaviin osioihin viisi suosittua tapaa tehdä rsync-varmuuskopioita.

### Tavallinen varmuuskopiointi arkistointitilassa

**Arkistointitila** kopioi kaikki tiedostot lähdekansiosta kohdekansioon, mukaan lukien kaikki alikansiot. Kaikki käyttöoikeudet, aikaleimat ja laitetiedot säilyvät. Tämä on monissa tapauksissa ihanteellinen ja yksinkertaisin ratkaisu, sillä se yhdistää useita vaihtoehtoja yhteen parametriin. Jos yhdistät tämän tilan parametriin `-v`, saat myös **kattavat tilatiedot** varmuuskopioinnin aikana.

```bash
rsync -av Source directory Target directory
```

**Lähde** - ja kohdepolkuina on määritettävä vastaava **lähdekansio** sekä **kansio**, johon rsync:n tulee **tallentaa varmuuskopio**.

### Lähdekansion tarkka kopio

rsync ei ainoastaan siirrä tiedostoja kohteeseen B, vaan se voi myös luoda **identtisiä kopioita** kansioista tai kokonaisista hakemistoista. Tavallisen arkistoinnin jälkeen ne tiedostot, jotka olivat kohdekansiossa ennen rsync-varmuuskopioinnin suorittamista (mutta joita ei ole lähdekansiossa), poistetaan.

```bash
rsync -av --delete Source directory Target directory
```

### rsync-varmuuskopiointi, jossa tietyn muotoiset tiedostot jätetään pois

Jos haluat suorittaa rsync-varmuuskopioinnin sulkemalla pois tietyn muotoiset tiedostot, voit käyttää `--exclude`. Tämän parametrin **avulla voit määrittää yksittäisen merkkijonon**, jota rsync käyttää merkkinä tiedoston ohittamisesta. Seuraava esimerkkikoodi sulkee pois .txt-tiedostot.

```bash
rsync -av --exclude'*.txt' Source directory Target directory
```

### Tiedostojen varmuuskopiointi tietyn vähimmäis- tai enimmäiskoon perusteella

Jos haluat, että rsync-varmuuskopioinnissa **tiettyjen tiedostojen poissulkemiseen** vaikuttaa **tiedostokoko** eikä tietty merkkijono, voit käyttää parametrejä `--max-size` ja `--min-size`. Jos käytät seuraavaa komentoa, kopioidaan vain tiedostot, joiden koko on vähintään 10 Mt ja enintään 100 Mt:

```bash
rsync -av --min-size=10MB --max-size=100MB Source directory Target directory
```

### Varmuuskopiointi, mukaan lukien merkkimuodon muunnos

Saatat joutua muuntamaan tiedostojen **merkistömuodon** kohdekansiossa. Jos haluat esimerkiksi siirtää tietoja Mac-tietokoneelta Linux-palvelimelle, sinun on huolehdittava merkistömuodon muuntamisesta. Apple-laitteet käyttävät oletuksena UTF8-MAC-merkistöä, jota ei ole saatavilla Linux-järjestelmissä ja joka aiheuttaisi ongelmia **erikoismerkkien** kanssa. Vaihtoehdon `--iconv` avulla voit helposti mukauttaa **merkkikoodausta** osana rsync-varmuuskopiointiprosessia (alla olevassa esimerkissä UTF8-MAC:sta UTF8:aan):

```bash
rsync -av --iconv=UTF8-MAC,UTF8 Source directory Target directory
```

## Yleiskatsaus tärkeimpiin rsync-varmuuskopiointiasetuksiin

Voit määrittää rsync-varmuuskopioiden yksittäiset asetukset käyttämällä erilaisia **vaihtoehtoja**, jotka voidaan kirjoittaa joko lyhenteinä tai kokonaisuudessaan. Seuraavassa taulukossa on koottu yhteen tärkeimmät **parametrit**, joita voidaan yhdistellä keskenään tarpeen mukaan:

<table>
  <thead>
    <tr>
      <th>Vaihtoehto</th>
      <th>Toiminto</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>`-r`, `--recursive`</td>
      <td>rsync-varmuuskopiointi ottaa huomioon kaikki alihakemistot</td>
    </tr>
    <tr>
      <td>`-u`, `--update`</td>
      <td>Ohje ohittaa kohdekansiossa olevat tiedostot, jotka ovat uudempia kuin lähdekansiossa olevat tiedostot</td>
    </tr>
    <tr>
      <td>`-c`, `--checksum`</td>
      <td>Lähde- ja kohdetiedostojen erottaminen tarkistussumman perusteella</td>
    </tr>
    <tr>
      <td>`-l`, `--links`</td>
      <td>Symboliset linkit kopioidaan sellaisinaan (eivätkä tiedostoina)</td>
    </tr>
    <tr>
      <td>`-p`, `--perms`</td>
      <td>Tiedostojen käyttöoikeudet säilyvät</td>
    </tr>
    <tr>
      <td>`-g`, `--group`</td>
      <td>Ryhmän tiedostojen käyttöoikeudet säilyvät</td>
    </tr>
    <tr>
      <td>`-t`, `--times`</td>
      <td>Tiedostojen aikaleimat (viimeisin muutos) säilyvät</td>
    </tr>
    <tr>
      <td>`-o`, `--owner`</td>
      <td>Tiedostojen omistajat säilytetään (vain jos he ovat järjestelmänvalvojia)</td>
    </tr>
    <tr>
      <td>`-D`, `--devices`</td>
      <td>Laitetiedot säilytetään</td>
    </tr>
    <tr>
      <td>`-z`, `--compress`</td>
      <td>Siirrettyjen tiedostojen automaattinen pakkaus</td>
    </tr>
    <tr>
      <td>`--compress-level=NUM`</td>
      <td>Määrittää pakkaustason; mahdolliset arvot (”NUM”) ovat 0 (ei pakkausta) ja 9 (maksimipakkaus)</td>
    </tr>
    <tr>
      <td>`-v`, `--verbose`</td>
      <td>Yksityiskohtaisempia tietoja varmuuskopiointiprosessien aikana</td>
    </tr>
    <tr>
      <td>`-q`, `--quiet`</td>
      <td>Piilota kaikki varmuuskopiointiprosessin tiedot (paitsi virheilmoitukset)</td>
    </tr>
    <tr>
      <td>`-a`, `--archive`</td>
      <td>Arkistointitila käytetään oletustilana ja se vastaa vaihtoehtoyhdistelmää — rlptgoD</td>
    </tr>
    <tr>
      <td>`-n`, `--dry-run`</td>
      <td>Testiajo, jossa ei tehdä todellisia muutoksia</td>
    </tr>
    <tr>
      <td>`-h`, `--help`</td>
      <td>Apuvalikko (voidaan käyttää vain ilman lähde- ja kohdekansioiden tai muiden argumenttien määrittämistä)</td>
    </tr>
    <tr>
      <td>`--bwlimit=KBPS`</td>
      <td>Rajoita kaistanleveyttä (kilotavua sekunnissa); esim. `--bwlimit=30` (raja 30 kbit/s)</td>
    </tr>
    <tr>
      <td>`--exclude=SAMPLE`</td>
      <td>Poista kuvio synkronoinnista; esim. `--exclude sample folder` (”sample folder” -kansiota ei synkronoida.)</td>
    </tr>
    <tr>
      <td>`--delete`</td>
      <td>Poista kaikki tiedostot, jotka ovat kohdekansiossa mutta eivät lähdekansiossa</td>
    </tr>
    <tr>
      <td>`--progress`</td>
      <td>Näytä rsync-varmuuskopioiden kesto ja siirtonopeus</td>
    </tr>
    <tr>
      <td>`--list-only`</td>
      <td>Luettele tiedostot varmuuskopion sijaan</td>
    </tr>
    <tr>
      <td>`--stats`</td>
      <td>Kattava raportti siirretyistä tiedoista (lukumäärä, koko)</td>
    </tr>
    <tr>
      <td>`--max-size=SIZE`</td>
      <td>Määritä tiedostojen enimmäiskoko, esim. `--max-size=10MB` (vain tiedostot, joiden koko on enintään 10 Mt, siirretään).</td>
    </tr>
    <tr>
      <td>`--ignore-errors`</td>
      <td>Estä varmuuskopiointiprosessin keskeyttäminen virhetilanteessa</td>
    </tr>
  </tbody>
</table>


This is a markdown version of: [https://www.ionos.com/fi-fi/digitalguide/palvelin/tyoekalut/palvelimen-varmuuskopioiden-maeaerittaeminen-rsync-komennolla/](https://www.ionos.com/fi-fi/digitalguide/palvelin/tyoekalut/palvelimen-varmuuskopioiden-maeaerittaeminen-rsync-komennolla/) for AI/LLM consumption.