# Kā izveidot servera dublējumus, izmantojot rsync

Datu dublējumiem vajadzētu būt svarīgai lomai jūsu servera plānošanā. Atsevišķus dublējumus var ātri konfigurēt un veikt, izmantojot bezmaksas sinhronizācijas rīku vai [rsync](https://www.ionos.com/lv-lv/digitalguide/serveris/riki/rsync/) protokolu.

## Kā iestatīt rsync dublējumus Linux serveros

Lai izmantotu rsync Linux operētājsistēmās, instalējiet protokolu ar tādu pašu nosaukumu un izveidojiet dublējumus **, izmantojot termināļa komandas**. Turpmākajā sadaļā mēs izmantosim Ubuntu, lai parādītu svarīgākos soļus dublējumu procesu konfigurēšanai, izmantojot rsync. Esam iekļāvuši arī praktiskus piemērus.

Ubuntu sistēmā rsync jau ir instalēts pēc noklusējuma. Ja tā nav, izmantojiet šādu komandu, lai to instalētu:

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

Ja ir instalēta programma rsync, varat izmantot termināļa komandas, lai norādītu **avota un galamērķa direktorijus**, kā arī dublējuma opcijas. Kā avota un galamērķa ceļus ir jānorāda attiecīgais **avota direktorijs** un direktorijs, kurā rsync jāuzglabā **dublējuma kopija**. Standarta režīmu („Archive“) var izpildīt, piemēram, šādi:

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

Tip Izmantojiet testa palaidi `-n`, lai pārbaudītu norādīto **parametru un direktoriju** pareizību. Nepareizi ievadīti dati sliktākajā gadījumā var izraisīt datu zudumu. Ja daži faili netiek kopēti, kā vajadzētu, tas bieži vien ir saistīts ar nepietiekamām piekļuves tiesībām. Ja tā notiek, mēģiniet izpildīt komandu kā administrators, pievienojot tai priekšā `sudo`.

## Pieci piemēri, kā izmantot rsync dublējumu

Kad būsiet apguvis pamata komandas, rsync kļūs par lielisku rīku **failu kopēšanai** un **dublējumu veidošanai**. Jūs varat vai nu izmēģināt un pielietot **atsevišķas komandu konfigurācijas**, vai arī izmantot **pārbaudītas** pieejamo rsync parametru **kombinācijas**. Turpmākajās sadaļās esam apkopojuši piecus populārus veidus, kā veikt rsync dublējumus.

### Standarta dublējums arhivēšanas režīmā

**Arhivēšanas režīms** kopē visus failus no avota direktorija uz mērķa direktoriju, ieskaitot visus apakšdirektorijus. Tiek saglabātas visas atļaujas, laika zīmogi un ierīces dati. Daudzos gadījumos tas ir ideāls un vienkāršākais risinājums, jo vienā parametrā apvieno dažādas iespējas. Ja šo režīmu apvienojat ar `-v` parametru, dublēšanas procesa laikā saņemsiet arī **izsmeļošu informāciju par statusu**.

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

Kā avota un galamērķa ceļš ir jānorāda attiecīgais **avota katalogs** un **katalogs**, kurā rsync **jāuzglabā dublējuma kopija.**

### Avota direktorija identiska kopija

rsync ne tikai var pārsūtīt failus no A uz B, bet arī izveidot **identiskas** mapju vai veselu direktoriju **kopijas**. Pēc standarta arhivēšanas tiek dzēsti tie faili, kas atradās mērķa mapē pirms rsync dublējuma veikšanas (bet nav avota mapē).

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

### rsync dublējums, izslēdzot failus noteiktā formātā

Ja vēlaties veikt rsync dublējumu, izslēdzot failus konkrētā formātā, to var izdarīt, izmantojot komandu `--exclude`. Šis parametrs **ļauj definēt individuālu rakstzīmju kombināciju**, ko rsync izmanto kā indikatoru, lai ignorētu failu. Turpmākajā parauga kodā ir izslēgti .txt faili.

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

### Failu dublēšana ar minimālo vai maksimālo izmēru

Ja rsync dublējumā vēlaties, lai **konkrētu failu izslēgšanu** noteiktu nevis pēc konkrēta rakstzīmju modeļa, bet gan pēc **faila lieluma**, varat izmantot parametrus `--max-size` un `--min-size`. Ja izmantojat šādu komandu, tiks kopēti tikai faili, kuru lielums ir no vismaz 10 MB līdz ne vairāk kā 100 MB:

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

### Datu dublējums, ieskaitot rakstzīmju formāta konvertēšanu

Iespējams, ka mērķa direktorijā būs nepieciešams konvertēt failus citā **rakstzīmju kodējumā**. Ja, piemēram, vēlaties pārnest datus no Mac uz Linux serveri, būs nepieciešams veikt rakstzīmju kodējuma konvertēšanu. Apple ierīces pēc noklusējuma izmanto UTF8-MAC, kas Linux sistēmās nav pieejams un radītu problēmas ar **speciālajām rakstzīmēm**. `--iconv`. opcija ļauj viegli pielāgot **rakstzīmju kodējumu** kā daļu no rsync dublējuma procesa (zemāk redzamajā piemērā — no UTF8-MAC uz UTF8):

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

## Pārskats par svarīgākajām rsync dublējuma opcijām

Jūs varat definēt individuālos iestatījumus savām rsync dublējumkopijām, izmantojot dažādas **opcijas**, kuras var norādīt ar burtu saīsinājumu vai pilnu nosaukumu. Turpmākajā tabulā ir apkopoti svarīgākie **parametri**, kurus pēc vajadzības var kombinēt savā starpā:

<table>
  <thead>
    <tr>
      <th>Iespēja</th>
      <th>Funkcija</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>`-r`, `--recursive`</td>
      <td>rsync dublējums ņem vērā visus apakškatalogus</td>
    </tr>
    <tr>
      <td>`-u`, `--update`</td>
      <td>Norādījums izlaist mērķa direktorijā failus, kas ir jaunāki par avota direktorijā esošajiem</td>
    </tr>
    <tr>
      <td>`-c`, `--checksum`</td>
      <td>Avota un mērķa failu atšķiršana, pamatojoties uz kontrolsummu</td>
    </tr>
    <tr>
      <td>`-l`, `--links`</td>
      <td>Simboliskās saites tiek kopētas kā tādas (nevis kā faili)</td>
    </tr>
    <tr>
      <td>`-p`, `--perms`</td>
      <td>Failu atļaujas tiek saglabātas</td>
    </tr>
    <tr>
      <td>`-g`, `--group`</td>
      <td>Grupu failu atļaujas tiek saglabātas</td>
    </tr>
    <tr>
      <td>`-t`, `--times`</td>
      <td>Failu laika zīmogi (pēdējās izmaiņas) tiek saglabāti</td>
    </tr>
    <tr>
      <td>`-o`, `--owner`</td>
      <td>Tiek saglabāti failu īpašnieki (tikai tad, ja tie ir administratori)</td>
    </tr>
    <tr>
      <td>`-D`, `--devices`</td>
      <td>Ierīces dati tiek saglabāti</td>
    </tr>
    <tr>
      <td>`-z`, `--compress`</td>
      <td>Pārsūtīto failu automātiska saspiešana</td>
    </tr>
    <tr>
      <td>`--compress-level=NUM`</td>
      <td>Nosaka saspiešanas līmeni; iespējamās vērtības („NUM”) ir no 0 (bez saspiešanas) līdz 9 (maksimālā saspiešana)</td>
    </tr>
    <tr>
      <td>`-v`, `--verbose`</td>
      <td>Sīkāka informācija dublēšanas procesa laikā</td>
    </tr>
    <tr>
      <td>`-q`, `--quiet`</td>
      <td>Paslēpt visas detaļas par dublēšanas procesu (izņemot kļūdu ziņojumus)</td>
    </tr>
    <tr>
      <td>`-a`, `--archive`</td>
      <td>Arhivēšanas režīms tiek izmantots kā standarta režīms un ir identisks opciju kombinācijai — rlptgoD</td>
    </tr>
    <tr>
      <td>`-n`, `--dry-run`</td>
      <td>Pārbaudes darbs, kurā netiek veiktas faktiskas izmaiņas</td>
    </tr>
    <tr>
      <td>`-h`, `--help`</td>
      <td>Papildu izvēlne (var izmantot tikai bez avota un mērķa direktoriju vai citu argumentu norādīšanas)</td>
    </tr>
    <tr>
      <td>`--bwlimit=KBPS`</td>
      <td>Ierobežot joslas platumu (kilobaitu sekundē); piemēram, `--bwlimit=30` (ierobežojums 30 kbit/s)</td>
    </tr>
    <tr>
      <td>`--exclude=SAMPLE`</td>
      <td>Izslēgt modeli no sinhronizācijas; piemēram, `--exclude sample folder` (mapes „sample folder” netiek sinhronizētas).</td>
    </tr>
    <tr>
      <td>`--delete`</td>
      <td>Dzēst visus failus, kas atrodas mērķa direktorijā, bet nav avota direktorijā</td>
    </tr>
    <tr>
      <td>`--progress`</td>
      <td>Parādīt rsync dublējumu ilgumu un pārraides ātrumu</td>
    </tr>
    <tr>
      <td>`--list-only`</td>
      <td>Uzskaitīt failus, nevis dublējumu</td>
    </tr>
    <tr>
      <td>`--stats`</td>
      <td>Izsmeļošs pārskats par pārraidītajiem datiem (skaits, izmērs)</td>
    </tr>
    <tr>
      <td>`--max-size=SIZE`</td>
      <td>Noteikt maksimālo faila izmēru, piemēram, `--max-size=10MB` (tiek pārnesti tikai faili, kuru izmērs nepārsniedz 10 MB).</td>
    </tr>
    <tr>
      <td>`--ignore-errors`</td>
      <td>Novērst dublējuma procesa pārtraukšanu kļūdas gadījumā</td>
    </tr>
  </tbody>
</table>


This is a markdown version of: [https://www.ionos.com/lv-lv/digitalguide/serveris/riki/servera-dublejumu-konfiguresana-ar-rsync/](https://www.ionos.com/lv-lv/digitalguide/serveris/riki/servera-dublejumu-konfiguresana-ar-rsync/) for AI/LLM consumption.