Kā kopēt direktorijas un failus ar rsync komandu uz Linux

Izmantojiet komandu Linux rsync, lai kopētu mapes / failus no komandrindas

rsync ir failu pārsūtīšanas programma Linux, kas ļauj kopēt direktorijus un failus ar vienkāršu komandu , kas ietver papildu opcijas, kas pārsniedz tradicionālo kopēšanas funkciju.

Viena no rsync noderīgām funkcijām ir tā, ka, lietojot kopiju direktorijus, jūs varat sistemātiski izslēgt failus. Tādā veidā, ja jūs izmantojat rsync, lai izveidotu failu dublējumkopijas, varat tos dublēt tikai tad, ja vēlaties to arhivēt, vienlaikus izvairoties no visa pārējā.

rsync piemēri

Pareizi lietojot rsync komandu, ir jāievēro pareizais sintakse :

rsync [OPTION] ... [SRC] ... [DEST] rsync [OPTION] ... [SRC] ... [USER @] HOST: DEST rsync [OPTION] ... [SRC] ... [ USER @] HOST :: DEST rsync [OPTION] ... [SRC] ... rsync: // [USER @] HOST [: PORT] / DEST rsync [OPTION] ... [USER @] HOST: SRC [ DEST] rsync [OPTION] ... [USER @] HOST :: SRC [DEST] rsync [OPTION] ... rsync: // [USER @] HOST [: PORT] / SRC [DEST]

Iepriekš norādīto opciju atstarpi var aizpildīt ar vairākām lietām. Pilns saraksts atrodams rsync dokumentācijas lapas sadaļā "IZVĒLEKĻU KOPSAVILKUMS ".

Šeit ir daži piemēri, kā izmantot rsync ar dažām no šīm iespējām:

Padoms . Visos šajos piemēros treknraksta tekstu nevar mainīt, jo tā ir daļa no komandas. Kā jūs varat pastāstīt, mapju ceļi un citas opcijas ir pielāgotas mūsu konkrētajiem piemēriem, tāpēc, ka tos izmantosiet citādi.

rsync / home / June / Desktop / data / *. jpg / home / jon / Desktop / backupdata /

Šajā piemērā visi JPG faili no / data / folder tiek kopēti mapē lietotāja / Jon's Desktop mapē / backupdata /.

rsync --max-size = 2k / home / jon / Desktop / data / / home / jon / Desktop / backupdata /

Šis rsync piemērs ir nedaudz sarežģītāks, jo tas ir iestatīts, lai netiktu kopēti faili, ja tie ir lielāki par 2 048 KB. Tas ir, tikai kopēt failus, kas ir mazāki par norādīto lielumu. Varat izmantot k, m vai g, lai norādītu kilobaitus, megabaiti un gigabaitus 1,024 reizinātājā vai kb , mb vai gb, lai izmantotu 1000.

rsync --min-size = 30mb / home / jon / Desktop / data / / home / jon / Desktop / backupdata /

To pašu var izdarīt --min-size , kā jūs redzat iepriekš. Šajā piemērā rsync kopē tikai 30 MB vai lielākus failus.

rsync --min-size = 30mb --progress / home / jon / Desktop / data / / home / jon / Desktop / backupdata /

Ja kopējat failus, kas ir diezgan lieli, piemēram, 30 MB un lielāki, un jo īpaši, ja ir vairāki no tiem, iespējams, vēlēsities redzēt kopēšanas funkcijas progresu, nevis pieņemot, ka komanda ir iesaldēta. Šādos gadījumos izmantojiet opciju -progress, lai skatītos procesu, kas sasniedz 100%.

rsync --recursive / home / jon / Desktop / data / home / jon / Desktop / data2

Izmantojot -recursive, ir vienkāršs veids, kā kopēt visu mapi citā vietā, piemēram, mūsu piemērā esošajā / data2 / mapē.

rsync -r --exclude = "* .deb " / home / jon / Desktop / data / home / jon / Desktop / backupdata

Varat arī kopēt visu mapi, bet izslēgt noteiktā faila paplašinājuma failus, piemēram, DEB failus, kas atrodas šajā piemērā. Šajā laikā viss / data / mape tiek kopēts / backupdata / līdzīgi iepriekšējā piemērā, bet visi DEB faili tiek izslēgti no kopijas.