Rsync Linuxra: fájlok szinkronizálása, másolása és biztonsági mentése

9 perc olvasás - 2025. május 24.

hero section cover
Tartalomjegyzék
  • Rsync Linuxhoz: hogyan szinkronizáljunk, másoljunk és készítsünk biztonsági másolatot fájlokról, mint egy profi
  • Mi az az rsync?
  • Miért érdemes az rsync-et használni a cp vagy az scp helyett?
  • Gyakori rsync parancsjelzők
  • Rsync példák
  • Az rsync automatizálása a cron segítségével
  • Záró gondolatok
Megosztás

Hogyan használjuk az rsync-et Linuxon inkrementális átvitelre, SSH-n keresztüli távoli szinkronizálásra, ütemezett biztonsági mentésekre cron segítségével, és a trailing-slash csapda elkerülésére.

Rsync Linuxhoz: hogyan szinkronizáljunk, másoljunk és készítsünk biztonsági másolatot fájlokról, mint egy profi

Az Rsync a fájlok Linux-rendszerek közötti másolásának standard eszköze. Gyorsabb, mint cp vagy scp bármihez, amit többször futtat, helyreáll a hálózati kimaradások után, és csak azt továbbítja, ami ténylegesen megváltozott. Ez a bejegyzés bemutatja, mit csinál az rsync, melyek a tudnivaló kapcsolók, melyek a leggyakrabban használt példák, és hogyan lehet ütemezni a cron segítségével.


 

Mi az az rsync?

Az rsync egy parancssori segédprogram fájlok másolására és szinkronizálására különböző helyek között. Helyileg, SSH-n keresztül távoli gazdagépre, vagy egy rsync démonnal működik. A legfontosabb különbség a cp vagy scp: az rsync először összehasonlítja a forrás és a cél helyet, majd csak a különbségeket továbbítja. Egy 100 GB-os könyvtárban, ahol 200 MB változott, az rsync 200 MB-ot mozgat. cp és scp az egészet átmásolja.

Minden modern Linux-disztribúcióban megtalálható. Ha hiányzik: apt install rsync vagy dnf install rsync.

Miért érdemes az rsync-et használni a cp vagy az scp helyett?

Három ok, amiért az rsync nyer minden nem triviális másolásnál:

  • Inkrementális. A későbbi futtatások csak a megváltozott bájtokat továbbítják, nem az egész fájlokat. Biztonsági mentések és tükrözések esetén ez az éjszakai munkát néhány percesre csökkenti.
  • Túlél --partial, egy félig átvitt 50 GB-os fájl ott folytatódik, ahol abbamaradt, ahelyett, hogy elölről kezdené.
  • Megőrzi a metaadatokat. Az archív mód (-a) megőrzi a jogosultságokat, a tulajdonjogot, a szimbolikus linkeket és az időbélyegeket. Ez kritikus fontosságú a rendszerfájlok, a forráskódfák és minden olyan esetben, ahol az attribútumok számítanak.

Kis fájlok egyszeri másolásához scp megfelelő. Bármilyen ismétlődő, sávszélességigényes vagy folytatásra szoruló feladat esetén használja az rsync-et.

Gyakori rsync parancsjelzők

A leggyakrabban használt kapcsolók:

FlagMit csinál
-aArchív mód. Megőrzi a jogosultságokat, a tulajdonjogot, a szimbolikus linkeket és az időbélyegeket. Egyenértékű a -rlptgoD.
-vVerbose parancsnak. Felsorolja az átvitt fájlokat.
-zTömörítés átvitel közben. Hasznos lassú vagy drága kapcsolatok esetén, kevésbé hasznos LAN-on vagy már tömörített tartalom esetén.
-PÖsszevonja --partial és --progressparancsokat. Folytatja a megszakadt átviteleket, élőben mutatja az előrehaladást.
--deleteTörli a célhelyről azokat a fájlokat, amelyek nem léteznek a forráson. Szükséges a valódi tükörképhez.
--excludeUgrás a mintának megfelelő fájlokon.
--exclude-from=FILEOlvassa be a kizárási mintákat egy fájlból. Tisztább, mint sok --exclude flag láncolása.
--dry-runMegmutatja, mi történne, ha semmit sem másolna át.
--bwlimit=KBPSKorlátozza a sávszélesség-használatot kilobájt/másodpercben. Hasznos az üzleti órák alatt futó biztonsági mentésekhez.
--checksumA fájlokat méret és módosítási idő helyett ellenőrzőösszeg alapján hasonlítsa össze. Lassabb, de észleli a szélsőséges eseteket.
-e sshHasználja az SSH-t az átvitelhez. A legtöbb modern telepítésnél ez implicit.

Az alapértelmezett viselkedés a fájlméretet és a módosítási időt hasonlítja össze, ami gyors és szinte mindig helyes. Váltson át --checksum , ha a telepítési folyamat a tartalom megváltoztatása nélkül írja át az időbélyegeket, vagy ha bit szintű sérülésre gyanakszik.

Rsync példák

Könyvtár másolása helyileg:

rsync -av /source/path/ /destination/path/

Szinkronizálás távoli szerverre SSH-n keresztül:

rsync -avz /local/dir/ user@remote:/remote/dir/

Próbafutás, mielőtt bármi véglegeset tenne:

rsync -avz --dry-run /local/dir/ user@remote:/dir/

Két könyvtár tükrözése, beleértve a célhelyen végzett törléseket is:

rsync -av --delete /source/ /destination/

Naplók és ideiglenes könyvtár kizárása:

rsync -av --exclude='*.log' --exclude='tmp/' /src/ /dest/

Folytassa egy nagy adatátvitelt, amely megszakadhat:

rsync -avP user@remote:/backups/big.img /local/

Ha az SSH-kapcsolat megszakad, futtassa újra ugyanazt a parancsot. A -Paz rsync ott folytatja, ahol abbahagyta, ahelyett, hogy nulláról kezdené.

Korlátozza a sávszélességet 50 MB/s-ra csúcsidőn kívüli biztonsági mentés esetén, hogy ne terhelje túl a feltöltési sávot:

rsync -avz --bwlimit=50000 /local/dir/ user@remote:/dir/

A záró perjel csapdája

A leggyakoribb rsync-hiba:

rsync -av /source  /destination/    # copies the 'source' directory INTO /destination
rsync -av /source/ /destination/    # copies the CONTENTS of /source into /destination

A forrásnév végén lévő perjel azt jelenti, hogy „minden, ami ebben a könyvtárban van”. A perjel hiánya azt jelenti, hogy „maga a könyvtár”. Ha bizonytalan, először futtassa a --dry-run parancsot, különösen ha azt a --delete.

Az rsync automatizálása a cron segítségével

Az ütemezett biztonsági mentésekhez három dologra van szükség:

  1. Jelszó nélküli SSH-hozzáférés a célállomáshoz. A cron-feladatok nem tudnak jelszavakat beírni. Kulcs generálása és másolása a biztonsági mentés gazdagépére:

    ssh-keygen -t ed25519
    ssh-copy-id user@backup-host
  2. Egy szkript, nem egy egy soros parancs a crontab-ban. Könnyebb tesztelni, könnyebb naplózni:

    #!/bin/bash
    LOG=/var/log/rsync-backup.log
    rsync -az --delete /etc/ user@backup:/backups/$(hostname)/etc/ >> "$LOG" 2>&1

    Tegye futtathatóvá a chmod +x.

  3. Egy cron bejegyzés a futtatásához. Szerkessze a crontab -e:

    0 2 * * * /usr/local/bin/rsync-backup.sh

    Ez minden éjjel 02:00-kor futtatja a szkriptet.

Két finomítás, amit érdemes elvégezni a termelésben: csomagolja be a szkriptet flock -ba, hogy a hosszú ideig futó feladat ne fedje át a következő éjszaka futtatását, és a kimenetet csatornázza át logger , így a hibák a rendszer naplóba kerülnek, ahol a felügyelet észlelheti őket.

Záró gondolatok

Az rsync azon kevés Linux-eszközök egyike, amelyeknél a parancsjelzők megtanulására fordított idő szinte azonnal megtérül. A legfontosabb pontok:

  • Az inkrementális átvitelek és a folytatás támogatása miatt az rsync a megfelelő választás minden olyan feladatra, amelyet többször is végrehajt
  • -a az archív módhoz, -z tömörítéshez, -P a folytatáshoz és a haladás nyomon követéséhez, --delete valódi tükrözéshez
  • Figyeljen a forrásútvonal végén lévő perjelre, különösen a --delete
  • Párosítsa cron-nal és SSH-kulcsokkal az automatikus, ütemezett biztonsági mentésekhez

Létesítmények közötti adatmozgatást igénylő nagy biztonsági mentési feladatok esetén az rsync futtatása korlátlan sávszélességű VPS-en azt jelenti, hogy a biztonsági mentési ablakokat nem korlátozzák az adatátviteli korlátok.

Blog

Kiemelt ezen a héten

További cikkek
Beállított profilok a Linux-szerverek munkaterhelésének optimalizálásához

Beállított profilok a Linux-szerverek munkaterhelésének optimalizálásához

Hogyan válasszon, alkalmazzon és szabjon testre hangolt profilokat GPU-, adatbázis- és nagy sávszélességű Linux-kiszolgálókhoz, példákkal és Ansible telepítési tippekkel.

16 perc olvasás - 2026. június 9.

Linux OOM Killer Tuning for VPS: Egy gyakorlati útmutató

12 perc olvasás - 2026. június 8.

További cikkek
background image

Kérdése van, vagy egyedi megoldásra van szüksége?

icon

Rugalmas lehetőségek

icon

Globális elérés

icon

Azonnali telepítés

icon

Rugalmas lehetőségek

icon

Globális elérés

icon

Azonnali telepítés