%50 indirim tüm planlarda, sınırlı süre. Başlangıç fiyatı $2.48/mo
10 dakika kaldı
Güvenlik ve Ağ

Rsync Linux'de Nasıl Kullanılır? Uzak Sunucuya Rsync 💻📥

Lily Carnell By Lily Carnell 10 dk okuma 16 Nisan 2023 tarihinde güncellendi
rsync'i uzak sunucuya gönder

İster yönetici ister sıradan bir kullanıcı olun, büyük olasılıkla dosyalarınızı düzenli olarak yedeklemeniz ya da birden fazla sistem arasında senkronize etmeniz gerekiyordur. Bu işlem her seferinde tüm dosyaların üzerine yazmayı gerektiriyorsa hem zaman alıcı hem de yorucu olabilir. İşte tam burada Linux Rsync uzak sunucu aracı devreye giriyor. Bu kılavuz, Rsync'in en kullanışlı komutlarını tanıtarak bu aracın hızlı ve güvenli özelliklerinden yararlanmanızı sağlayacak.

Rsync Yardımcı Programı Nedir?

Uzak Senkronizasyon (Rsync) iyi bilinen bir Linux/Unix komutudur. Bu komutla uzaktan erişim veya yerel bağlantı üzerinden dosya ve dizinleri kopyalayabilir, senkronize edebilirsiniz. Rsync komutu; senkronizasyon, kopyalama ve yedekleme alma gibi çeşitli veri işlemleri yapmanıza olanak tanır. Bunun yanı sıra Linux sisteminizi başka bir sisteme yansıtabilirsiniz.

Rsync'i uzak sunucuyla kullanmanın temel mantığı, hızlı dosya transferinden yararlanmaktır. İki kaynak arasında veri aktarırken yalnızca aralarındaki farklılıkları dikkate alır. Başka bir deyişle Rsync komutu, iki Linux sistemi arasındaki değişiklikleri baz aldığından gereksiz veri transferine zaman harcamanızı önler.

Neden Rsync Kullanmalısınız?

Bildiğiniz üzere kullanabileceğiniz çeşitli yedekleme araçları mevcuttur. Peki Rsync'i diğer araç ve komutlardan ayıran nedir?

Örneğin, Dosya Aktarım Protokolü (FTP) ile web sitenizin yerel bir kopyasını oluşturabilir ya da bu iş için SCP (Güvenli Kopyalama Protokolü) kullanabilirsiniz. Ancak her ikisinin de dezavantajları vardır. FTP, veri şifrelemesi sunmaz; bu da beklediğimiz bir özellik değildir. SCP ise FTP gibi şifresiz transfer sorunu yaşatmasa da tünel oluşturma yöntemi nedeniyle aktarım süresi daha uzundur.

Bu sorunlara alternatif bir çözüm olarak anahtar tabanlı şifrelemeyle Rsync uzak sunucu kullanımına başvurabilirsiniz (kısaca Rsync SSH veya Rsync over SSH olarak bilinir). Bu yöntem yinelenen veri gönderimini engeller ve bir SSH anahtarı kullanır. Ayrıca Rsync'in veri gönderip alırken sıkıştırma ve açma işlemleri uyguladığını, bu sayede bant genişliği kullanımını azalttığını da belirtmek gerekir.

Rsync Nasıl Kurulur?

Rsync büyük olasılıkla sisteminizde zaten yüklüdür; yine de ayrıntılara girelim. Başlamadan önce şunu belirtmek gerekir: Rsync over SSH kullanacağımız için SSH'nin hem kaynak hem de hedef sistemde önceden kurulu olması gerekir.

Adım 1: SSH Sürümünü Kontrol Etme

SSH sürümünü aşağıdaki komutu kullanarak kontrol edebilirsiniz:

ssh -V

Rsync ile uzak bir sunucuya veri aktarmak için yerel bir sunucuya (kaynak) ve uzak sunucuya ihtiyacınız vardır. Yerel sunucuda yönetici ayrıcalıklarının (sudo) etkin olduğundan da emin olun.

Adım 2: Rsync Kurulumu Linux

Aşağıdaki komut, Ubuntu, Linux Mint ve Debian üzerine Rsync kurmanızı sağlar:

sudo apt install rsync -y

Fedora, CentOS, AlmaLinux ve Red Hat gibi farklı Linux dağıtımları kullanıyorsanız, sisteminize Rsync kurmak için şu komutu girin:

sudo dnf install rsync

Not: apt, Debian tabanlı dağıtımlarda kullanılan pratik bir paket yönetim aracıdır.

Adım 3: Rsync'i Başlatma

Rsync'i kullanmaya başlamak için önce başlatmanız, ardından etkinleştirmeniz gerekir. Bunun için aşağıdaki komutları kullanın:

sudo systemctl start rsync 
sudo systemctl enable rsync

Adım 4: Rsync Kurulumunu Doğrulama

Linux sisteminizde Rsync'in doğru kurulup kurulmadığını kontrol etmek ve hangi sürümü kullandığınızı görmek için şu komutu girin:

rsync --version

Aşağıdaki bölümde, anahtar tabanlı kimlik doğrulama yöntemiyle yedekleme almak için bu aracın nasıl kullanılacağını ele alacağız.

SSH Üzerinden Rsync ile Yedek Nasıl Alınır?

Artımlı yedek almak, Rsync'in SSH üzerindeki kullanım alanlarından biridir. Nasıl çalıştığını anlamak için aşağıdaki komutu inceleyin:

rsync -av -e ssh /sourceDir/ user@remote:/path/to/destinationDir

Yukarıdaki komutu çalıştırmak, şunu senkronize etmenizi sağlar: sourceDir ve destinationDir. Bu komut, bilmeniz gereken başka seçenekler de içerir; örneğin -a (archive) ve -v (verbose)Not ("Note that" is incomplete — it needs context to translate properly) Could you provide the complete phrase or sentence you'd like translated to Turkish? -e ssh seçeneği, Rsync bağlantısının SSH protokolü üzerinden kurulmasını zorunlu kılar.

Eğer SSH bağlantısı varsayılan port yerine (port 22) farklı bir port üzerinden kabul edilmesini istiyorsanız, port numarasını şunun ardından belirtmeniz gerekir: -e ssh. Nasıl çalıştığını anlamak için aşağıdaki komuta bakın.

rsync -av -e ssh 1998 sourceDir/ user@remote:/path/to/destinationDir

Yukarıdaki komutta, 22 yerine 1998'i SSH portu olarak kullandığımızı varsayıyoruz.

SSH üzerinden uzak sunucuya Rsync'in işe yarar başka seçenekleri de vardır. Örneğin, –partial seçeneği, Rsync'in kesintiye uğraması gibi sorunlarda önceki yarım kalan aktarımı kaldığı yerden devam ettirmenizi sağlar. Ayrıca –progress seçeneği ile anlık dosya aktarım ilerlemenizi takip edebilirsiniz. Üstelik Linux Rsync, bu iki özelliği aynı anda kullanmanıza da olanak tanır. Bunun için komut satırında -p bayrağını kullanabilirsiniz.

rsync -avP  -e ssh /sourceDir/ user@remote:/path/to/destinationDir

Uzak sunucuya Rsync aktarımında anahtar komutu, verileri hedefe göndermeden önce sıkıştırmanıza imkan verir. Sıkıştırma işlemi CPU kullanımını artırsa da dosya aktarımını hızlandırdığı ve bant genişliği tüketimini azalttığı için oldukça kullanışlıdır.

Rsync komutunu kullanarak yerel veya uzak dosya ve dizinleri kopyalayabilirsiniz. Rsync'in temel avantajı şu ilkeye dayanmasıdır: delta transfer algoritması, kaynak ile hedef arasında yinelenen verilerin kopyalanmasını engeller. Daha önce de belirtildiği gibi, Rsync'in bu özelliği günlük yedeklemeler ve sistem yansıtma işlemleri için oldukça işe yarar. Şimdi Rsync komutunu yerel kullanım senaryoları için nasıl kullanacağımıza bakalım.

Rsync Yerel Senkronizasyon İçin Nasıl Kullanılır?

Yerel senkronizasyona ve Rsync komutunun bu amaçla nasıl kullanıldığına geçmeden önce, aşağıda gösterilen genel yerel Rsync yapısını tanımanız gerekir:

rsync [options] [Source] [Destination]

Dosyaları Yerel Olarak Kopyalama

Masaüstü dizininden (adı Cloudzy) için /home/Public klasörüne bir dosyayı senkronize etmek ya da kopyalamak istediğimizi varsayalım; girmeniz gereken komut şudur:

rsync -zvh /desktop/Cloudzy/myfile.pdf /home/Public

Yukarıdaki Rsync komutu üç seçenek içerir: -zvh; kullanarak -z, aktarım sırasında dosyanızın sıkıştırılmasını sağlar. v seçeneği ayrıntılı çıktı için kullanılır; h seçeneği ise çıktıların insan tarafından okunabilir biçimde, yani anlaşılır bir formatta görüntülenmesini sağlar.

Dizinleri Yerel Olarak Kopyalama

Masaüstü dizinini (adı Cloudzy) için /home/Public klasörüne kopyalamak istiyorsak şu komutu yazmanız gerekir:

rsync -zavh /desktop/Cloudzy/myfile.pdf /home/Public

Bu -a Bu komuttaki seçenek, senkronizasyon sırasında dizinleri ve dosyaları arşivler.

Dizinin kopyalanıp kopyalanmadığını doğrulamak için hedef klasördeki dizin listesini hızlıca kontrol edebilirsiniz. Bunun için şu komutu kullanın:

ls -ld /home/Public

Dosya ve Dizinleri Yinelemeli ve Yerel Olarak Senkronize Etme (Recursive Rsync)

Peki ya /desktop/Cloudzyiçinde birden fazla dizin ve dosya olsaydı ve bunları Linux Rsync komutuyla yinelemeli olarak kopyalamak isteseydik?

Bu durumda, -r seçeneği seçeneğini kullanarak yerel dosya ve dizinlerinizi yinelemeli biçimde senkronize edebilirsiniz. Yinelemeli kopyalama gibi farklı kullanım senaryoları için arşiv seçeneği (-a) seçeneğini de kullanabilirsiniz. Rsync yinelemeli komutlarını tanımak için aşağıdaki komuta göz atın.

rsync -zrvh /desktop/Cloudzy /home/Public

Or

rsync -zrvh /desktop/Cloudzy /home/Public

Dizin ve Dosyaları Yerel Sistemden Uzak Sisteme Kopyalama

Daha önceki bölümlerde bahsettiğimiz Linux Rsync uzak sunucu özelliklerinin yanı sıra, bu iyi bilinen komut yerel makineden uzak sisteme dosya ve dizin senkronizasyonuna da olanak tanır.

Bir klasörü kopyalamak istediğimizi varsayalım (/desktop/Cloudzy/yeniklasör) yerel makineden uzak sisteme (192.168.1.79 ile) altında /mycpt; işleyişini gösteren bir örnek:

rsync -zarvh /desktop/Cloudzy/newfolder [email protected]:/mycpt

Rsync ile Dizinleri Dosyalar Olmadan Nasıl Kopyalanır?

Bazı durumlarda, dosyaları dahil etmeden yalnızca dizinleri kopyalamak için Linux Rsync'in uzak sunucuya aktarım özelliğini kullanmak isteyebiliriz. Bu senkronizasyon uzak makineden yerel sisteme ya da tam tersi yönde olabilir.

Bu makalede uzak sistemi şu adreste kullandık: 192.168.1.79. Bunun şurada bulunduğunu varsayalım: /mycpt klasörünün altında ve /desktop/Cloudzy dizinini dosyaları dahil etmeden yerel sistemden kopyalamak istiyorsunuz. Bunu yapmak için aşağıdaki komutu girin:

rsync -av -f"+ */" -f"- *" /desktop/Cloudzy [email protected]:/mycpt/

Diğer Kullanışlı Rsync Komutları

Bu bölümde, işinize yarayabilecek ek Linux Rsync komutlarını ele alacağız.

Rsync'te Dosya Transferi İçin Maksimum Boyut Belirleme

Rsync komutunu kullanarak dosya transferi için bir boyut sınırı belirleyebilirsiniz. Bu özellik, bant genişliği ve sürenin önemli olduğu ortamlarda Rsync'i düzenli olarak uzak sunucuya ve yerel makineye karşı çalıştırırken oldukça işe yarar. Rsync dosya transferinde boyut sınırı ayarlamayı öğrenmek için aşağıdaki komutu inceleyin:

rsync -avzhe ssh --max-size='100k' /desktop/Cloudzy [email protected]:/home/Public

Rsync'te Dosya Transferi İçin Minimum Boyut Belirleme

Maksimum boyut belirlemeye benzer şekilde, Rsync ile uzak sunucuya aktarmak istediğiniz dosyanın minimum boyutunu da ayarlayabilirsiniz. Aşağıdaki komutta minimum dosya boyutunu 10k olarak belirleyeceğiz:

rsync -avzhe ssh --min-size='10k' /desktop/Cloudzy [email protected]:/home/Public

Senkronizasyon Tamamlandıktan Sonra Kaynaktaki Dosyaları Silme

Rsync komutunu kullandıktan sonra dosyaların kaynak sistemde kalmasına gerek kalmayabilir. Bu durumda, kaynaktaki dosyaları silmek için aşağıdaki gibi Linux Rsync komutunu kullanabilirsiniz:

rsync --remove-source-files -zvh /desktop/Cloudzy [email protected]:/home/Public

Kuru Çalıştırma (Dry Run) Senkronizasyonu

Linux Rsync aracına yeni başlıyorsanız ve seçeneklerine henüz aşina değilseniz, pilot çalışma iyi bir başlangıç noktasıdır. Rsync ile dry run kullandığınızda hiçbir dosya değiştirilmez; yalnızca komutun çıktısı görüntülenir. Komutu çalıştırmak istediğinizden emin olduktan sonra –dry-run seçeneğini kaldırıp terminalde çalıştırabilirsiniz. Dry run işlevselliği hakkında daha fazla bilgi için aşağıdaki komutu inceleyin.

rsync --dry-run --remove-source-files -zvh /desktop/Cloudzy [email protected]:/home/Public

Özet: Linux Rsync Komutlarının Kullanımı

Bu makalede, Linux Rsync'in uzak sunucuya (ve yerel sunucuya) aktarım özelliklerini çeşitli kullanım senaryoları için nasıl kullanacağınızı açıkladık: sistem yansıtma, dosya yedekleme ve SSH ile veri sıkıştırmadan yararlanarak dosya ve dizinleri yerel ya da uzaktan verimli bir şekilde kopyalama. Bu yaygın kullanılan Linux komutu, hızlı dosya transferinin yanı sıra SSH ve veri sıkıştırma desteği sunar.

Linux VPS Barındırma

Web sitenizi veya uzak masaüstünüzü barındırmak için ekonomik ya da premium bir Linux VPS edinin; piyasadaki en uygun fiyatlarla. VPS, daha yüksek verimlilik için Linux KVM üzerinde çalışır ve hız odaklı NVMe SSD depolama ile güçlü donanım altyapısından yararlanır.

Devamını Oku

Bu işletim sisteminden en iyi şekilde yararlanmak için bir Linux VPS Cloudzy tarafından sunulan ve KVM tabanlı hosting planlarından yararlanmanızı sağlayan bir çözüm. %99,95 uptime, kararlı çalışma, düşük gecikme, dünya genelinde 12 konumda veri merkezi, ultra hızlı SSD depolama ve 7/24 teknik destek ile yüksek performanslı VPS hizmetleri sunuyoruz. Linux VPS'nizi $4,95'ten başlayan fiyatlarla kullanmaya başlayabilir, daha gelişmiş bir çözüme ihtiyaç duyduğunuzda ölçeklendirebilirsiniz.

SSS

Rsync hangi TCP portunu kullanır?

SSH varsayılan olarak port 22'yi kullanır. Bu nedenle rsync, SSH üzerinden çalıştırıldığında bu port üzerinden iletişim kurar. Rsync daemon kullanıldığında ise port 873 devreye girer.

Rsync nedir?

Rsync, dosya ve dizinleri hem yerel hem de uzak sistemler arasında senkronize edebilen bir Linux aracıdır. Rsync komutuyla senkronizasyon, kopyalama ve yedekleme alma gibi çeşitli veri işlemlerini gerçekleştirebilirsiniz.

Paylaş

Blogdan daha fazlası

Okumaya devam et.

MikroTik L2TP VPN kurulum kılavuzu için Cloudzy başlık görseli; kalkan simgeleriyle süslenmiş parlak mavi ve altın renkli dijital bir tünel aracılığıyla bir dizüstü bilgisayarın sunucu rafına bağlandığını gösteriyor.
Güvenlik ve Ağ

MikroTik L2TP VPN Kurulumu (IPsec ile): RouterOS Kılavuzu (2026)

Bu MikroTik L2TP VPN kurulumunda L2TP tünellemeyi, IPsec ise şifreleme ve bütünlüğü sağlar. İkisini birlikte kullanmak, üçüncü taraf yazılıma gerek kalmadan yerel istemci uyumluluğu sunar.

Reksa SirusReksa Sirus 9 dk okuma
Karanlık teal arka planda Cloudzy markasıyla, uzak ana bilgisayar kimliği değişikliği hakkında SSH uyarı mesajı ve Düzeltme Kılavuzu başlığını gösteren terminal penceresi.
Güvenlik ve Ağ

Uyarı: Uzak Ana Bilgisayar Kimliği Değişti ve Nasıl Düzeltilir

SSH, sistemler arasında şifreli bir tünel oluşturan güvenli bir ağ protokolüdür. Grafik arayüz gerektirmeksizin bilgisayarlara uzaktan erişmesi gereken geliştiriciler arasında popülerliğini korumaktadır.

Reksa SirusReksa Sirus 10 dk okuma
Karanlık arka planda uyarı sembolleri ve mavi sunucu içeren DNS sunucu sorun giderme kılavuzu görseli, Linux ad çözümleme hataları için.
Güvenlik ve Ağ

Ad Çözümlemede Geçici Hata: Ne Anlama Gelir ve Nasıl Düzeltilir?

Linux kullanırken web sitelerine erişmeye, paket güncellemeye ya da internet bağlantısı gerektiren görevleri çalıştırmaya çalışırken ad çözümlemede geçici hata ile karşılaşabilirsiniz.

Reksa SirusReksa Sirus 12 dk okuma

Dağıtmaya hazır mısınız? Aylık 2,48 dan başlayan fiyatlarla.

2008'den bu yana bağımsız bulut. AMD EPYC, NVMe, 40 Gbps. 14 gün para iade garantisi.