Proqramlaşdırma

rsync

rsync nədir?

rsync-i Andrew Tridgell və Paul Mackerras yazılıb. İlk açıq danışıq 1996-cı ildir. Əmr iki qovluğu tutuşdurur. Dəyişməyən faylı buraxır. Dəyişən faylın yalnız fərqli hissəsini göndərə bilər. Buna görə böyük ağacın ikinci köçürməsi birincidən qısa olur. Uzaq maşına gedəndə yolu çox vaxt SSH aparır. rsync SSH-nin özü deyil. Yalnız onun üstündən fayl daşıyır. Sətrin sonundakı çəp xətt mənanı dəyişir. Qovluğun adından sonra çəp xətt qoymaq içinəkiləri köçürür. Qoymamaq qovluğun özünü də aparır.

rsync nə üçün istifadə olunur?

rsync ehtiyat nüsxə və iki qovluğu eyni saxlamaq üçündür. Hər dəfə bütün diski köçürməmək üçündür.

  • Sayt faylını başqa serverə aparmaq
  • Hər gecə yalnız dəyişəni ehtiyata yazmaq
  • İki qovluğu tutuşdurmaq
  • Böyük faylın yarım köçürməsini davam etmək

rsync ilə nə etmək olar?

rsync ilə qovluğu başqa yerə yaxın saxlayırsan. O, faylın içindəki proqramı işlətmir. Yalnız baytları aparır. --delete uzaqdakı artıq faylı silir. Bunu səhv qovluqda işlətmək oradakı faylları aparır. Əvvəl sınaq bayrağı ilə baxmaq lazımdır. Şifrə əmrin içinə yazılırsa tarixçədə qala bilər.

rsync öyrənmək çətindirmi?

Bir qovluğu köçürmək asandır. Çətinlik çəp xətt və silmədədir. Sonda çəp xətt olub-olmaması başqa yerə yazır. --delete səhv hədəfdə işləyəndə geri qaytarmaq çətin olur. Uzaq maşının yolu və istifadəçisi səhvdirsə heç nə getmir. Saat fərqi bəzən təzə faylı köhnə sayır. Buna görə ilk dəfə silmədən və sınaqla baxılır.

Üstünlükləri və məhdudiyyətləri

Üstünlük: ikinci köçürmə qısa olur, dəyişməyən fayl təkrar getmir, uzaq serverə gedə bilir. Məhdudiyyət: səhv silmə geri çətin qayıdır. rsync cp deyil və SSH deyil.

Əsas anlayışlar

Mənbə faylın çıxdığı yerdir. Hədəf getdiyi yerdir. Fərq isə artıq eyni olmayan hissədir.

  • Dəyişməyən fayl buraxılır
  • Çəp xətt qovluğun mənasını dəyişir
  • --dry-run yalnız göstərir
  • --delete hədəfdə artıq faylı silir

Qısa nümunə

Bu əmr bir qovluğun içinəkiləri başqa qovluğa yaxın saxlayır. Silmir. Yalnız göstərilən yola yazır.

rsync -a source/ backup/

Tez-tez verilən suallar

  • rsync və cp eynidir? Xeyr. cp faylı olduğu kimi kopyalayır. rsync dəyişməyəni buraxmağa və fərqli hissəni göndərməyə çalışır.
  • rsync və SSH eynidir? Xeyr. SSH uzaq maşına girir. rsync fayl daşıyır və yolu SSH apara bilər.
  • Çəp xətt vacibdir? Bəli. source/ içinəkiləri aparır. source qovluğun özünü də aparır.