RSYNC basit olarak iki sunucu arasinda dosya aktarimina olanak saglayan, baglantinin yada sunucunun kapanmasi isleminden sonrada kaldigi yerden devam edebilen (tekrar baslatmaniz gerekli) bir yedekleme yada diger adiyla dosya alma gonderme islemidir. Bu yontem daha cok yedekleme icin kullaniliyor, cunku bu islem ile yedeklediginiz yerdeki dosyalar arasina yenileri eklendiginde tekrar hepsini almak yerine sadece o degisen dosyalari aliyor, buda zamandan ve trafikten tasarruf sagliyor bize. Anlamayanlar icin kucuk bir ornek vermek istiyorum: A sunucunuzda 500 gb lik bir klasor var. Bu klasor devamli olarak yeni resimler, yeni dosyalar yada yedekler ile artiyor, buyuyor. Siz RSYNC yontemi ile bu klasoru B sunucusuna yedeklediginizde dosyalarinizi guvenle yedeklemis olursunuz. Ancak soz konusu klasor hergun yenileriyle buyuyor. Boylece tekrar RSYNC yontemi ile dosya cekmeye calistiginizda onceki yedekledigi dosyalari kontrol ederek almiyor ve sadece yeni eklenen, yani daha once yedeklediginiz dosyalar arasinda olmayanlari yedekliyor.. Ilk islem 2 saat surerse, ikinci islem 2 dakika surecektir, cunku olmayanlari hesaplayip aliyor.

Yeni baslayanlar ve sunucu isi ile ilgilenenlerin hezaman ihtiyac duyabilecegi bu ozelligi kullanmayi anlatacagim, boylece elimizde bir altin bilezik olsun :)

RSYNC islemi ile bir cok isi yapabilrisiniz: Ayni sunucuda icinde dosya transferi, yedekleme islemi, iki sunucu arasinda yedekleme, birden fazla sunucu arasinda dosya transferi gibi bir cok alanda size hizmet edebilir. Ayni zamanda bulundugunuz sunucudan bir baska sunucuya da dosya gonderebilirsiniz..

RSYNC Parametreleri:

Uygulama icin bunlar cok onemlidir, cunku elimiz, gozumuz, ayagimiz olacak bu parametreler. RSYNC komutunu kullanirken herzaman bu 3 parametreyi kullanmanizi oneririm:
-avz
a: Arsivleyerek indir anlamnia gelir
v: yedekleme islemlerini gormemizi saglar ssh ekranindan
z: Dosyalari sikistirirarak ceker, buda hiz acisindan iyi olabilecek bir secenek.

Bunlarin yaninda ek olarak kullanabilecegimiz parametreler:
-p: Dosya izinlerini (chmod) bozmadan, degistirmeden ayni sekilde aktarir.
-t: Dosya tarihlerini degistirmeden ayni sekilde aktarir.
-l: Kisayol dosyalarinida aktarir.
n: bu islemden emin degilim ama sanirim dosya aktarim sirasinda test yapiyor :)
-e: Dosyalarin ssh uzerinden gonderildigini belirtir.
–delete-after: Yedeklediginiz dosyalari, islem bittikten sonra silmenizi saglar. Bu yontemi dikkatli kullanin, hatda hic kullanmayin :) Profesyonel degilseniz tavsiye edilmez..

RSYNC ile Ayni sunucu icinde dosya Transferi:

Ornek kullanim:

burda kuaza klasorunu www klasorunun icine klasor olarak aktardik, eger sonuna / isareti koysaydik kuaza klasorunun, o zamanda klasor yerine sadece icindekileri aktarmamizi saglayacaktir. Ornek sadece kuaza klasoru icindekileri aktarmak istersek:

Kod icerisinde parametreleri istediginiz gibi kullanabilirsiniz.

RSYNC ile sunucudan sunucuya dosya gondermek:

Yukardaki kullanim gibidir, tek yapmaniz gereken gonderilecek sunucu bilgilerinide girmek.

Bu islemden sonra size soru sorayaca, yes diye yazip enter yapin sonrasinda da karsi sunucunun, yani dosyalari gondermek istediginiz sunucunun sifresini soracak size, sifreyi yazin enter yapin, dogru ise islem baslayacak ve aktarimi goreceksiniz. Burda onemli olan nokta ilk islem sorasinda sunucuya erisimi olan kullanici ismini ve sunucunun IP adresini dogru kullanmaniz.

Ornegin: [email protected] : Burda root sunucuya baglanirken kullandigimiz kullanici adidir. Bazi sunucularda kullanici adi farkli olabilir. Ornegin Bluehost.com yada hostgator.com dan dosya cekmek istedigimizde giris sirasinda kullandigimiz kullanici adini yazmaniz gerekecek. Tabi ssh erisimi gerekebilir, bunuda zaten actirabiliyorsunuz kolaylikla..

RSYNC ile Baska sunucudan dosya cekmek:

Yukaridaki islemin tersini uygulayarak baska bir sunucudan o anda kullandiginiz sunucuya dosya aktarabilirsiniz.

Burda da IPsini yazdigimiz bilmem kac ipli sunucudan kuaza klasorunu kendi sunucumuzda bulunan www klasorune cekiyoruz. Tekrar ediyorum parametreler kismini istediginiz gibi kullanabilirsiniz. Ornegin chmod ayarlarinin da degismesini istemiyorsaniz -p parametresinide ekleyebilirsiniz..

Basitce bu islemi size anlatmaya calistim, benimde devamli kullandigim bir ozellik oldugu icin devamli bir yerde not olarak tutmam gerekiyor, bazen aradigimi kolay kolay bulamiyorum, ozellikle kullanimini unuttuklarimin.

Bu dokumanda yararlandigim kaynaklar:
http://ni.net.tr/blog/rsync-baslangic.html
http://www.manpagez.com/man/1/rsync/

Yardimci olabilecek kaynaklar:
http://www.linuxuzmani.com/rsync-ile-yedekleme-incremental-backup.html

6 YORUMLAR

  1. Teşekkürler, arayıpta bulamadığım bir bilgi.. ssh da dosya taşımak artık daha kolaylaşacak.. scp komutunun getirdiği hatalar için çözüm olabilir.

Bir Cevap Yazın