Cum să transferați fișiere în Linux (local și la distanță)

Transferul de fișiere în Linux este o sarcină obișnuită pe care fiecare administrator de sistem ar trebui să o cunoască, în special atunci când transferă fișiere între sistemele locale sau la distanță prin intermediul rețelelor.

Linux oferă două instrumente foarte populare pentru acest scop: SCP (Secure Copy) și Rsync. Cele două asigură o modalitate sigură și simplă de a transfera fișiere între mașini locale sau la distanță.

În acest articol, vom explora modul de utilizare a comenzilor SCP și Rsync pentru a transfera fișiere, acoperind atât transferurile de fișiere locale, cât și cele la distanță.

Noțiuni despre scp (Secure Copy Protocol)

Comanda scp este un program în linia de comandă utilizat pentru a copia în siguranță fișiere și directoare între două gazde utilizând SSH (Secure Shell), ceea ce înseamnă că datele sunt transferate într-un mod criptat în timpul transferului prin internet.

Sintaxa de bază pentru utilizarea scp este următoarea:

scp [options] source_file destination

Explicația comenzii este:

  • source_file: fișierul sau directorul pe care doriți să îl copiați.
  • destination: locația în care doriți să copiați fișierul sau directorul.

Copierea locală a fișierelor

Dacă doriți să copiați un fișier dintr-un director în altul pe aceeași unitate, puteți utiliza:

scp ~/document.txt /tmp

Copierea fișierelor pe un server la distanță

Pentru a copia fișiere de pe un calculator local pe un server la distanță, va trebui să menționati adresa IP a serverului și calea de destinație.

scp ~/document.txt username@192.168.1.100:/home/username

Copierea fișierelor de pe un server de la distanță

Pentru a copia un fișier de pe un server de la distanță pe un calculator local, este suficient să inversați sursa și destinația:

scp username@192.168.1.100:/home/username/document.txt /tmp

Pentru a copia un întreg director, utilizați opțiunea -r (care înseamnă recursiv):

scp -r ~/tecmint /tmp

Noțiuni despre rsync

Comanda rsync este un alt instrument pentru linia de comandă utilizat pe scară largă pentru transferul de fișiere, având rolul de a transfera fișiere și directoare între sursă și destinație, fiind de obicei utilizat pentru sincronizarea directoarelor.

Sintax de bază pentru utilizarea rsync este:

rsync [options] source destination

Transfer local de fișiere

Pentru a transfera fișiere sau directoare la nivel local, puteți utiliza rsync cu opțiunea -a pentru a activa modul arhivă, care păstrează permisiunile, proprietatea și marcajele temporale.

Opțiunea -v reprezintă verbose, care arată progresul transferului de fișiere.

rsync -av ~/myfolder /backup

Transfer de fișiere către un server la distanță

Pentru a transfera fișiere către un server la distanță, rsync utilizează SSH în mod implicit, aici trebuie să specificați adresa IP și locația serverului.

rsync -av ~/myfolder username@192.168.1.100:/home/username

Comanda de mai sus va transfera directorul myfolder pe un server de la distanță, iar dacă executați comanda din nou, rsync va copia numai fișierele care au fost modificate sau fișierele noi.

Transfer de fișiere de pe un server

Pentru a transfera fișiere de pe un server de la distanță pe un calculator local, utilizați:

rsync -av username@192.168.1.100:/home/username/myfolder /backup

Sincronizarea directoarelor cu rsync

Unul dintre punctele forte ale rsync este capacitatea sa de a sincroniza directoare, ceea ce înseamnă că puteți menține două directoare sincronizate, indiferent dacă se află pe aceeași mașină sau pe mașini diferite.

De exemplu, pentru a sincroniza un directoar local cu un director la distanță trebuie să folosiți:

rsync -av /local/directory/ username@remote_host:/remote/directory/

Pentru a sincroniza un director de la distanță cu un director local, ar trebui să inversați sursa și destinația:

rsync -av username@remote_host:/remote/directory/ /local/directory/

Dacă transferul este întrerupt din cauza unei probleme a rețelei sau din alte motive, îl puteți relua folosind opțiunea –partial, care permite reluarea transferului de fișiere de unde a fost întrerupt.

rsync -av --partial /path/to/source username@remote_host:/path/to/destination

Concluzie

Transferul de fișiere în Linux este o sarcină simplă cu instrumente precum scp și rsync. În timp ce scp este simplu și sigur, rsync oferă caracteristici mai avansate precum sincronizarea și eficiența.

Înțelegerea modului de utilizare eficientă a acestor instrumente vă va ajuta să vă gestionați fișierele și datele în sistemele locale și la distanță.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *