Android

Fájlok átvitele az rsync segítségével az ssh-n keresztül

Fájlok/képek másolása PC-re és laptopra (Windows, MacOS, WiFi)

Fájlok/képek másolása PC-re és laptopra (Windows, MacOS, WiFi)

Tartalomjegyzék:

Anonim

A fájl átvitelére a hálózati rendszerek között a Linux és az Unix felhasználók sok eszköz állnak rendelkezésére.

Az adatátvitel legnépszerűbb protokolljai az SSH és az FTP. Bár az FTP nagyon népszerű, mindig inkább az SSH-t használja, mivel ez a legbiztonságosabb módja a fájlok átvitelének.

Vannak speciális eszközök az SSH-n keresztüli fájlátvitelhez, például az scp és az sftp de sftp sem található meg az rsync biztosított összes szolgáltatás. rsync felhasználható adatok tükrözésére, növekményes biztonsági mentések készítésére, fájlok másolására a rendszerek között és így tovább.

Ebben az oktatóanyagban elmagyarázza, hogyan lehet fájlokat másolni az rsync az SSH-n keresztül.

követelmények

  • Az rsync segédprogramot telepíteni kell a cél- és a forrásrendszerre egyaránt. Ha nincs telepítve, akkor telepítheti a disztribúció csomagkezelőjével:

    Ubuntu és Debian:

    sudo apt install rsync

    CentOS és Fedora:

    sudo yum install rsync

    SSH hozzáférés a távoli számítógéphez.

    Az rsync parancsot futtató felhasználónak és az SSH távoli felhasználónak megfelelő engedélyekkel kell rendelkeznie a fájlok olvasására és írására.

Az rsync használata a fájlok SSH-n keresztüli átviteléhez

Az rsync segítségével fájlokat és könyvtárakat továbbíthat SSH-n keresztül a távoli kiszolgálókra és a távolról.

A fájlok rsync használatával történő átvitelének általános szintaxisa a következő:

Local to Remote: rsync… -e ssh… HOST:DEST Remote to Local: rsync… -e ssh HOST:SRC…

Ahol az SRC a forráskönyvtár, a DEST a célkönyvtár. A USER a távoli SSH felhasználónév, a HOST a távoli SSH gazdagép vagy IP cím.

Az rsync újabb verziója úgy van beállítva, hogy az SSH-t használja alapértelmezett távoli héjként, így elhagyhatja a -e ssh beállítást.

Például egy /opt/file.zip fájl /opt/file.zip a helyi rendszerből a /var/www/ könyvtárba a távoli rendszeren az IP 12.12.12.12 :

rsync -a /opt/file.zip [email protected]:/var/www/

Az -a opció az archív mód, amely szinkronizálja a könyvtárakat, továbbítja a speciális és blokkolt eszközöket, megőrzi a szimbolikus hivatkozásokat, a módosítási időket, a csoportot, a tulajdonjogot és az engedélyeket.

Ha a fájl létezik a távoli szerveren, akkor az felülíródik. Ha más néven szeretné elmenteni a fájlt, adja meg az új nevet:

rsync -a /opt/file.zip [email protected]:/var/www/file2.zip

Az adatok távolról történő átviteléhez a helyi gépen használja a távoli helyet forrásként, és a helyi helyet rendeltetési helyként:

rsync -a [email protected]:/var/www/file.zip /opt/

A könyvtárak átvitele az rsync rel az SSH-n keresztül ugyanaz, mint a fájlok átvitele.

Fontos tudni, hogy az rsync eltérő módon kezeli a forráskönyvtárakat egy vonallal / . Ha a forráskönyvtárban van egy vonal, akkor az rsync csak a forráskönyvtár tartalmát másolja a célkönyvtárba. Ha a hátsó perjel hiányzik, a forrás könyvtárat a cél könyvtárba másolja.

Például a helyi /opt/website/images/ könyvtár átviteléhez a távoli gépen található /var/www/images/ könyvtárba írja be:

rsync -a /home/linuxize/images/ [email protected]:/var/www/images/

Használja a --delete opciót, ha szinkronizálni kívánja a helyi és a távoli könyvtárat. Legyen óvatos, ha ezt az opciót használja, mivel az törli a rendeltetési könyvtár fájljait, ha azok nem léteznek a forráskönyvtárban.

rsync -a --delete /home/linuxize/images/ [email protected]:/var/www/images/

Ha az SSH a távoli gazdagépen nem az alapértelmezett 22 porton hallgat, akkor a -e opcióval adja meg a portot. Például, ha az SSH a 3322 -es porton hallgatja, akkor az lenne a következő:

rsync -a -e "ssh -p 3322" /home/linuxize/images/ [email protected]:/var/www/images/

Nagy mennyiségű adat átvitelénél javasolt az rsync parancs futtatása a képernyőn, vagy a -P opció használata, amely azt mondja az rsync hogy az átvitel során rsync az előrehaladási sávot, és tartsa meg a részben átvitt fájlokat:

rsync -a -P /home/linuxize/images/ [email protected]:/var/www/images/

Következtetés

Megmutattuk, hogyan lehet az rsync SSH-n keresztül másolni és szinkronizálni a fájlokat és könyvtárakat.

Érdemes lehet elolvasnia, hogyan lehet kizárni a fájlokat vagy könyvtárakat az rsync .

Ha bármilyen kérdése van, nyugodtan írjon megjegyzést.

rsync terminál