Ebben a cikkben néhány gyakorlati példával elmagyarázzuk, hogyan lehet fájlokat másolni az rsync segítségével. Ismertetjük az rsync használatát egyetlen fájl, több fájl és könyvtár másolásában mind a helyi, mind a távoli rendszerekre. Kitérünk az Rsync használatára:
- Fájl/könyvtár másolása a helyi rendszeren belül
- Fájl/könyvtár másolása a helyi rendszerből a távoli rendszerbe
- Fájl/könyvtár másolása a távoli rendszerből a helyi rendszerbe
Elmagyaráztuk az ebben a cikkben említett parancsokat és eljárásokat egy Ubuntu 20.04 LTS -en. Szüksége lesz a parancssori terminálra a fájlok rsync használatával történő másolásához. A parancssori Terminal alkalmazás megnyitásához használja a Ctrl+Alt+T billentyűparancsot.
Az Rsync telepítése
Az Rsync előre telepítve van az Ubuntu 20.04 LTS-be. Ha azonban véletlenül eltávolítja a rendszerből, a következőképpen telepítheti:
$sudotalálótelepítésrsync
Íme néhány általánosan használt opció, amelyek használhatók az rsync programmal:
–A: archiválási mód
–V: a másolási folyamat részleteit mutatja
–P: a folyamatjelző sávot mutatja
–R: rekurzív módon másolja az adatokat
–Z: tömöríti az adatokat
–Q: a kimenet leállítása
Fájlok és könyvtárak helyi másolása
Az rsync általános szintaxisa a következő:
$rsync[választási lehetőség] [forrás] [rendeltetési hely]
Egyetlen fájl másolása helyben
Ha egy fájlt másolni szeretne a rendszer egyik helyéről a másikra, akkor ezt gépeléssel teheti meg rsync majd a forrásfájl neve és a célkönyvtár.
Például, ha egyetlen file1.txt fájlt szeretne átmásolni az aktuális helyről, amely a Home könyvtár, a ~/Documents könyvtárba, a parancs a következő lenne:
$rsync/itthon/hinni/file1.txt/itthon/hinni/DokumentumokMegjegyzés: A /home/tin/file1.txt helyett a file1 -et is beírhatjuk, mivel jelenleg a saját könyvtárban dolgozunk. Ezenkívül használhatjuk a ~/Documents parancsot ahelyett, hogy a teljes elérési utat/home/tin/Documents néven említenénk.
Több fájl másolása helyben
Ha egyszerre több fájlt szeretne másolni a rendszer egyik helyéről a másikra, akkor ezt gépeléssel teheti meg rsync majd a forrásfájlok neve és a célkönyvtár.
Például a
$rsync/itthon/hinni/file2.txt/itthon/hinni/file3.txt/itthon/hinni/DokumentumokAz összes azonos kiterjesztésű fájl másolásához használhatja a csillag (*) szimbólumot a fájlnevek egyéni megadása helyett. Például, ha a .zip kiterjesztéssel végződő Home könyvtárból az összes fájlt át akarja másolni a ~/Documents könyvtárba, akkor a következőket használjuk:
$rsync/itthon/hinni/ *.zip ~/DokumentumokMásolja a könyvtárakat helyben
Ha egy könyvtárat az alkönyvtárával és minden tartalmával másolni szeretne a rendszer egyik helyéről a másikra, akkor ezt úgy teheti meg, hogy beírja rsync majd a forrás és a célkönyvtár.
Például, ha a mintakönyvtárat a Home könyvtáron belüli teszt/ könyvtárba szeretné másolni, a parancs a következő lenne:
$rsync-nak,-nek /itthon/hinni/minta/itthon/hinni/tesztMegjegyzés: A forráskönyvtár megadása / után csak a könyvtár tartalmát másolja. Ha nem adjuk meg a /-et a forráskönyvtár után, akkor a forráskönyvtár is átmásolódik a célkönyvtárba.
A következő kimenethez hasonlóan láthatja, hogy a forráscímtár -mintánkat is átmásoljuk a célkönyvtárba (mivel a minta helyett a mintát/ forráskönyvtárként használtuk).
Az Rsync támogatja a növekményes átvitelt, amint a fenti kimeneten látható, hogy csak az új vagy frissített fájlokat továbbítja.
Fájlok másolása a maximális méret alapján
Másolás közben megadhatjuk a –max-size opcióval másolható fájlok maximális méretét is. Például a 2000k -nál nem nagyobb fájlok másolásához a ~/Letöltések mappából a ~/Dokumentumok könyvtárba a parancs a következő lenne:
$rsync-nak nek --max méretű= 2000k/itthon/hinni/Letöltések/ * /itthon/hinni/DokumentumokEz a parancs az összes fájlt átmásolja a ~/Letöltések mappából a ~/Dokumentumok könyvtárba, kivéve a 2000k -nál nagyobb fájlokat.
Fájlok másolása a minimális méret alapján
Hasonlóképpen megadhatjuk a –min-size opcióval másolható fájlok minimális méretét is. Például, ha a ~/Letöltések mappából a ~/Dokumentumok könyvtárba szeretné másolni a nem kevesebb, mint 5 millió fájlt, a parancs a következő lesz:
$rsync-nak nek -min méretű= 5 millió/itthon/hinni/Letöltések/ /itthon/hinni/DokumentumokEz a parancs az összes fájlt átmásolja a ~/Letöltések mappából a ~/Dokumentumok könyvtárba, kivéve az 5 milliónál kisebb fájlokat.
Fájlok kizárása
Fájlok egyik könyvtárból a másikba másolásakor egyes fájlokat kizárhat a —kizárás opcióval, majd a fájlnévvel vagy a fájltípus kiterjesztésével.
Például az összes .zip fájl kizárásához, miközben fájlokat másol a ~/Letöltések mappából a ~/Dokumentumok könyvtárba, a parancs a következő lenne:
$rsync-nak nek -kizárni='*.postai irányítószám' /itthon/hinni/Letöltések/ /itthon/hinni/DokumentumokFájlok és könyvtárak másolása távolról
Az Rsync segítségével egyetlen fájlt, több fájlt és könyvtárat másolhat egy távoli rendszerbe. A fájlok és könyvtárak távoli másolásához a következőkre lesz szüksége:
- Az Rsync telepítve van mind a helyi, mind a távoli rendszerre
- SSH hozzáférés a távoli rendszerhez
- Távoli felhasználói jelszó
Mielőtt fájlokat másolna az rsync használatával, győződjön meg arról, hogy SSH -n keresztül tudja elérni a távoli rendszert:
$sshremote_user@távoli_ip
A fájlok és könyvtárak távoli rendszerbe történő másolásának általános szintaxisa az rsync használatával:
Például egyetlen fájl.txt fájl másolásához a ~/Letöltések a távoli rendszer ~/Dokumentumok könyvtárba a parancs a következő lenne:
$rsync-v~/Letöltések/file1.txt umara@192.168.72.164:~/DokumentumokHasonlóképpen a ~/Letöltések/fájlok könyvtárának másolása egy helyi rendszerben annak alkönyvtárával és minden tartalmával a távoli rendszer ~/Letöltések/minták könyvtárába:
$rsync-rv~/Letöltések/fájlok umra@192.168.72.164:~/Letöltések/mintákatMásolhatja a fájlokat és a könyvtárakat a távoli számítógépről a helyi gépre. Például egy fájl2.txt fájl másolásához a távoli rendszerről a helyi rendszer asztalára:
$rsync-vumara@192.168.72.164:~/Letöltések/fájl2.txt ~/Asztal/Hasonlóképpen egy könyvtár másolása a távoli rendszerből a helyi rendszerbe
$rsync-rvumara@192.168.72.164:~/Letöltések/minta ~/Asztal/tesztA fájlok távoli rendszerre/onnan történő másolása közben is használhatja az összes lehetőséget, például –max-size, –min-size, –exclude és egyebeket.
Az Rsync nagyszerű eszköz fájlok másolására a forrásból a célállomásba, akár helyben, akár távolról. Számos opciót tartalmaz, amelyek rugalmasságot és irányítást biztosítanak a fájlok távoli rendszerre történő átvitele közben.