Weboldal keresés

Fájlok átvitele két számítógép között nc és pv parancsokkal


Kedves Linux-olvasók! Újabb nagyszerű cikket hozok nektek a Linux Tippek és trükkök sorozatunkból, ezúttal két kevésbé ismert Linux segédprogramot fogunk használni, amelyekről tudnia kell.

Ez a cikk elmagyarázza, hogyan lehet fájlokat átvinni két Linux-számítógép között az nc (hálózati segédprogram) és a pv (pipe viewer) használatával.) parancsokat, mielőtt továbblépnék, hadd magyarázzam el, mi ez a két parancs.

Az nc a Netcat rövidítése, és gyakran utal arra, hogy a „Swiss Army knife” egy hálózati eszköz, amelyet hálózati hibakereséshez és nyomozáshoz használnak, és használják is. hálózati kapcsolatok létrehozásához TCP vagy UDP használatával, portszkennelés, fájlátvitel stb. Megbízható háttérprogramnak készült, és kifejezetten programokban és szkriptekben használható, mivel szinte bármilyen hálózati kapcsolatot képes létrehozni, és számos beépített funkcióval rendelkezik.

A pv röviden a Pipe Viewer egy terminál alapú eszköz a csővezetéken keresztül küldött adatok előrehaladásának nyomon követésére, lehetővé teszi a felhasználó számára, hogy lássa az adatok előrehaladását a folyamatjelző sávon, megjeleníti az eltelt időt, a befejezett százalékot, az aktuális átviteli sebességet. sebesség, az összes átvitt adat és a folyamat befejezéséhez szükséges becsült idő.

Az adatok előrehaladásának figyelése a pv (Pipe Viewer) paranccsal

Lépjünk tovább, és nézzük meg, hogyan kombinálhatjuk a két parancsot két Linux-számítógép közötti fájlok átviteléhez, ebben a cikkben két Linux-gépet fogunk használni az alábbiak szerint:

Machine A with IP : 192.168.0.4
Machine B with IP : 192.168.0.7

Megjegyzés: Határozottan azt tanácsolom, hogy ne használja a netcat szolgáltatást nyilvános hálózaton keresztüli adatok küldésére és fogadására, mivel az nem használ bejelentkezést vagy hitelesítést , az egyetlen követelmény a kliens IP-címe és a figyelési port száma, és a hálózaton keresztül küldött adatok nem védettek, ezért mindig a haladó Linux felhasználók számára vannak fenntartva, és védett helyi hálózaton használják.

Azokban a helyzetekben, amikor az adatok biztonsága fontosabb, mindig használja az rsync-et SSH-n vagy az scp-t SSH-n keresztül.

Most kezdjük az nc és a pv parancsok néhány igazán egyszerű példájával, de mielőtt ezt megtennénk, mindkét segédprogramot telepíteni kell a rendszerre, ha nem a megfelelő terjesztési csomagkezelővel. eszköz a javasolt módon:

yum install netcat pv        [On RedHat based systems]
dnf install netcat pv        [On Fedora 22+ versions]
apt-get install netcat pv    [On Debian and its derivatives]

Hogyan lehet fájlokat átvinni két Linux-gép között?

Tegyük fel, hogy egy CentOS-7-x86_64-DVD-1503.iso nevű nagy fájlt szeretne küldeni az A számítógépről a B számítógépre a hálózaton keresztül. , ennek leggyorsabb módja az nc egy hálózati segédprogram, amellyel fájlokat küldhet TCP-hálózaton keresztül, a pv az adathaladás figyelésére és a tar segédprogram az adatok tömörítésére az átviteli sebesség javítása érdekében.

Linux gépen A

Először jelentkezzen be az „A” gépre 192.168.0.4 IP-címmel, és futtassa a következő parancsot.

tar -zcf - CentOS-7-x86_64-DVD-1503.iso | pv | nc -l -p 5555 -q 5

Hadd magyarázzam el a fenti parancsban használt opciókat:

  1. tar -zcf=A tar egy szalagos archiválási segédprogram, amely az archív fájlok és argumentumok tömörítésére/kitömörítésére szolgál. -c új .tar archív fájlt hoz létre, -f . adja meg az archív fájl típusát, és -z szűrje ki az archívumot a gzip segítségével.
  2. CentOS-7-x86_64-DVD-1503.iso=Adja meg a hálózaton keresztül küldendő fájlnevet, amely lehet fájl vagy egy könyvtár elérési útja.
  3. pv=Pipe Viewer az adatok előrehaladásának figyeléséhez.
  4. nc -l -p 5555 -q 5=Hálózati eszköz az adatok tcp-n keresztüli küldésére és fogadására, valamint a -l argumentumok a bejövő kapcsolat figyelésére, - A p 555 megadja a használandó forrásportot, a -q 5 pedig kivárja a másodpercek számát, majd kilép.

Linux gépen B

Most jelentkezzen be a „B” gépre 192.168.0.7 IP-címmel, és futtassa a következő parancsot.

nc 192.168.1.4 5555 | pv | tar -zxf -

Ez az, a fájl átvitelre kerül a B számítógépre, és Ön meg tudja nézni, milyen gyorsan hajtja végre a műveletet. Az nc (még nem tárgyaljuk, de hamarosan írunk róla) és a pv (erről itt már írtunk egy részletet) parancsok sok egyéb nagyszerű felhasználási módja van. , ha tud rá példát, kérjük, jelezze kommentben!