MeoHost Logo
Menü
BilgiMerkezi
Bilgi Merkezi/İzleme ve Yedekleme/rsync ile Sunucu Veri Senkronizasyonu ve Yedekleme

rsync ile Sunucu Veri Senkronizasyonu ve Yedekleme

İzleme ve Yedekleme03.02.2026Ahmet Yılmaz9 dk okuma

Rsync, uzak veya yerel sistemler arasında dosyaları ve dizinleri verimli bir şekilde senkronize etmek ve yedeklemek için kullanılan güçlü bir komut satırı aracıdır. Temel amacı, yalnızca değişen veri bloklarını aktararak bant genişliği kullanımını en aza indirmektir. Bu özellik, onu büyük veri kümelerinin düzenli olarak güncellenmesi veya yedeklenmesi gereken kurumsal ortamlar için ideal kılar.

rsync ile Sunucu Veri Senkronizasyonu ve Yedekleme

Rsync ile Sunucu Veri Senkronizasyonu ve Yedekleme Nedir?

Rsync, ilk transferde tüm veriyi kopyalar, ancak sonraki transferlerde kaynak ve hedef arasındaki farkları akıllıca tespit ederek yalnızca değiştirilmiş veya eklenmiş kısımları gönderir. Bu delta transfer (fark transferi) mekanizması, ağ trafiğini önemli ölçüde azaltır ve yedekleme/senkronizasyon sürelerini kısaltır. Unix benzeri sistemlerde yaygın olarak kullanılır ancak Windows için de portları mevcuttur. Kurumsal BİLGİ MERKEZİ'nde, sunucu verilerinin bütünlüğünü korumak, felaket kurtarma senaryolarına hazırlıklı olmak ve operasyonel sürekliliği sağlamak için rsync'in sunduğu yetenekler kritik öneme sahiptir. Otomatikleştirilmiş yedekleme süreçlerinin bir parçası olarak veya ikincil veri merkezlerine veri replikasyonu için kullanılabilir. Bu, hem veri kaybı riskini azaltır hem de sistem erişilebilirliğini artırır.

Rsync Nasıl Çalışır?

Rsync, verimli veri senkronizasyonu ve yedekleme için iki ana aşamadan oluşan bir algoritmaya dayanır: dosya listesi oluşturma ve veri transferi.

  1. Dosya Listesi Oluşturma ve Karşılaştırma: Rsync, kaynak ve hedef dizinlerdeki dosyaların meta verilerini (boyut, değiştirilme zamanı, izinler vb.) karşılaştırır. Bu meta veriler kullanılarak, hangi dosyaların değiştirildiğini, eklendiğini veya silindiğini belirler. Bu aşamada, rsync'in en önemli özelliği olan delta transfer algoritması devreye girer.
  2. Delta Transfer Algoritması: Bir dosyanın yeni bir versiyonu tespit edildiğinde, rsync bu dosyayı bloklara ayırır. Ardından, hedefteki karşılık gelen dosyanın da bloklarını analiz eder. Kaynak dosyadaki blokların, hedefteki dosyanın hangi bloklarıyla eşleştiğini belirlemek için karma (hash) değerlerini kullanır. Eşleşen bloklar aktarılmaz. Yalnızca kaynakta bulunan ancak hedefte bulunmayan veya farklı olan bloklar (veya blokların değişen kısımları) belirlenir ve bu değişen parçalar sıkıştırılarak hedefe gönderilir.
  3. Veri Transferi: Belirlenen değişen bloklar, rsync'in tercih ettiği protokol üzerinden (genellikle SSH veya kendi rsync protokolü) hedefe aktarılır. Hedefte, alınan yeni bloklar mevcut dosyaya eklenerek veya değiştirilerek dosyanın güncel versiyonu oluşturulur. Bu işlem, yalnızca ihtiyaç duyulan verinin aktarılmasını sağlayarak ağ bant genişliğini önemli ölçüde korur.
  4. Meta Veri Senkronizasyonu: Veri transferi tamamlandıktan sonra, rsync dosya izinleri, sahiplik bilgileri, değiştirilme zamanları gibi meta verileri de senkronize edebilir. Bu, yedeklenen verinin orijinal yapısını ve özelliklerini korumasına yardımcı olur.

Bu akıllı mekanizma sayesinde rsync, büyük veri kümelerinde bile saatler sürebilecek bir tam yedekleme yerine, sadece birkaç dakika içinde tamamlanabilen inkremental (artımlı) yedeklemeler gerçekleştirebilir. Bu, özellikle sürekli güncellenen veritabanları, web sunucuları veya kritik iş uygulamaları için büyük bir avantajdır.

Rsync Uygulama Senaryoları ve Modları

Rsync, esnek yapısı sayesinde çeşitli senaryolarda ve farklı modlarda kullanılabilir. Bu modlar, yedekleme ve senkronizasyon işlemlerinin hassasiyetini ve kapsamını belirler.

  • Yerel Senkronizasyon: İki yerel dizin arasında veri senkronizasyonu için kullanılır. Örneğin, bir sunucunun belirli bir dizinini başka bir depolama birimine kopyalamak veya yedeklemek için kullanılabilir.
  • Uzak Senkronizasyon (SSH ile): En yaygın kullanım senaryolarından biridir. Rsync, SSH (Secure Shell) protokolü üzerinden uzak bir sunucuya veya uzak sunucudan veri aktarımı ve senkronizasyonu için kullanılır. Bu, güvenli ve şifreli bir veri transferi sağlar.
  • Uzak Senkronizasyon (rsync Daemon ile): Rsync, kendi özel protokolünü kullanarak bir rsync sunucusu (daemon) üzerinden de veri transferi yapabilir. Bu mod, genellikle SSH'ye göre daha yüksek performans sunabilir ancak yapılandırması biraz daha karmaşıktır ve ağ güvenliği ek önlemler gerektirebilir.
  • Ayna (Mirror) Modu: Rsync'in en güçlü modlarından biridir. Bu modda, kaynak dizin hedef dizinin birebir kopyası haline getirilir. Kaynakta silinen dosyalar hedefte de silinir, böylece hedef her zaman kaynağın tam bir yansıması olur. Bu, veri kaybını önlemek için çok etkilidir.
  • İnkremental (Artımlı) Yedekleme: Rsync, yalnızca değişen dosya bloklarını aktardığı için, her çalıştırıldığında bir önceki yedeklemeden sonra değişen verileri kopyalayarak inkremental yedeklemeler oluşturur. Bu, bant genişliği ve depolama alanından tasarruf sağlar.
  • Eski Dosyaları Koruma: Rsync, belirli seçeneklerle eski versiyonları veya silinen dosyaları saklama yeteneğine sahip olabilir, bu da daha detaylı bir felaket kurtarma planı oluşturmaya olanak tanır.

Bu senaryolar ve modlar, rsync'in sadece bir dosya kopyalama aracı olmadığını, aynı zamanda karmaşık veri yönetimi ve felaket kurtarma stratejilerinin temel bir bileşeni olabileceğini göstermektedir.

Rsync Uygulama Rehberi

Rsync'i etkili bir şekilde kullanmak için temel komut yapısı ve sık kullanılan seçenekler hakkında bilgi sahibi olmak önemlidir. Aşağıda, yaygın senaryolar için adım adım bir rehber sunulmaktadır.

Temel Komut Yapısı:

rsync [SEÇENEKLER] KAYNAK HEDEF

Yaygın Seçenekler:

  • -a (archive): Arşiv modunda çalıştırır. Bu, -rlptgoD seçeneklerinin birleşimidir:
    • -r (recursive): Alt dizinleri de dahil eder.
    • -l (links): Sembolik linkleri sembolik olarak kopyalar.
    • -p (perms): İzinleri korur.
    • -t (times): Değiştirilme zamanlarını korur.
    • -g (group): Grup bilgisini korur.
    • -o (owner): Sahip bilgisini korur (root gerektirebilir).
    • -D (devices, specials): Cihaz ve özel dosyaları korur.
  • -v (verbose): İşlem detaylarını gösterir.
  • -z (compress): Veriyi transfer sırasında sıkıştırır.
  • --delete: Kaynakta bulunmayan dosyaları hedefte siler (dikkatli kullanılmalıdır).
  • -e ssh: SSH protokolünü kullanarak uzak transfer yapar.
  • --progress: Transferin ilerlemesini gösterir.
  • --exclude='DESEN': Belirli desenlere uyan dosyaları hariç tutar.
  • --include='DESEN': Belirli desenlere uyan dosyaları dahil eder (exclude'dan önce gelmeli).

Senaryo 1: Yerel Dizin Yedekleme

Mevcut dizinini /home/kullanici/veriler başka bir diske /mnt/yedek/veriler_yedek olarak yedeklemek:

rsync -avz --progress /home/kullanici/veriler/ /mnt/yedek/veriler_yedek/

Not: Kaynak dizinin sonundaki eğik çizgi (/), dizinin içeriğini kopyalar. Olmasaydı, dizinin kendisi hedef dizin içine kopyalanırdı.

Senaryo 2: Uzak Sunucuya Güvenli Yedekleme (SSH ile)

Yerel /var/www/html dizinini uzak sunucu yedek-sunucu.alanadi.com üzerindeki /home/yedek/web_yedek dizinine yedeklemek:

rsync -avz -e ssh --progress /var/www/html/ kullanici@yedek-sunucu.alanadi.com:/home/yedek/web_yedek/

Bu komut, SSH üzerinden bağlanacak ve gerekli izinler sağlandığında yedekleme işlemini başlatacaktır.

Senaryo 3: Uzak Sunucudan Yerel Yedekleme

Uzak sunucu ana-sunucu.alanadi.com'daki /etc/nginx yapılandırma dosyasını yerel /home/kullanici/yapilandirma_yedekleri/nginx dizinine yedeklemek:

rsync -avz -e ssh --progress kullanici@ana-sunucu.alanadi.com:/etc/nginx/ /home/kullanici/yapilandirma_yedekleri/nginx/

Senaryo 4: Belirli Dosyaları Hariç Tutma

/var/log dizinini yedeklerken *.gz uzantılı log dosyalarını hariç tutmak:

rsync -avz --progress --exclude='*.gz' /var/log/ /mnt/yedek/log_yedek/

Otomatikleştirme:

Bu komutlar, cron görevleri aracılığıyla düzenli aralıklarla çalıştırılarak otomatik yedekleme süreçleri oluşturulabilir.

Sık Yapılan Hatalar ve Çözümleri

Rsync kullanımı sırasında karşılaşılabilecek bazı yaygın hatalar ve bunların çözüm önerileri aşağıda listelenmiştir:

  • Yanlış Dizin İçeriği/Yapısı:

    Kaynak veya hedef dizinin sonundaki eğik çizgi (/) kullanımı, işlemin sonucunu önemli ölçüde değiştirebilir. Sonundaki /, dizinin içeriğini kopyalar; sonundaki / yoksa, dizinin kendisini hedef dizinin içine kopyalar. Bu hatayı önlemek için, kopyalamak istediğiniz şeyin (içerik mi, dizin mi) tam olarak farkında olmalı ve eğik çizgi kullanımına dikkat etmelisiniz.

  • SSH Bağlantı Hataları:

    Uzak sunuculara bağlanırken "Permission denied" veya "Connection refused" gibi hatalar alabilirsiniz. Bu durumlar genellikle SSH anahtar eşleşmemesi, yanlış kullanıcı adı/parola, SSH portunun kapalı olması veya hedef sunucuda SSH servisinin çalışmıyor olmasından kaynaklanır. Çözüm olarak, SSH anahtarlarınızı kontrol edin, doğru kullanıcı adı ve portu kullandığınızdan emin olun ve hedef sunucudaki SSH servisinin çalıştığını doğrulayın.

  • Yetersiz Disk Alanı:

    Yedekleme veya senkronizasyon sırasında hedefte yeterli disk alanı olmaması, işlemin başarısız olmasına neden olur. Bu hatayı önlemek için, hedef depolama alanının yeterli olduğundan emin olun ve düzenli olarak boş alan kontrolü yapın.

  • Dosya İzinleri ve Sahiplik Sorunları:

    -a (archive) seçeneği kullanılırken bile, bazı dosya izinleri veya sahiplik bilgileri, çalıştıran kullanıcının yetkisi dışında olabilir. Özellikle kök (root) dizinleri yedeklerken bu durumla karşılaşılabilir. Çözüm olarak, rsync komutunu root yetkisiyle çalıştırmak veya hedef sistemde dosya/dizin izinlerini uygun şekilde ayarlamak gerekebilir.

  • `--delete` Seçeneğinin Yanlış Kullanımı:

    --delete seçeneği, kaynakta olmayan dosyaları hedefte siler. Bu, bir ayna (mirror) senaryosunda faydalı olsa da, yanlışlıkla kullanıldığında istemeden veri kaybına yol açabilir. Bu seçeneği kullanmadan önce, --dry-run (veya -n) seçeneği ile komutun ne yapacağını simüle ederek test edin.

  • Performans Düşüklüğü:

    Büyük veri kümelerinde veya yavaş ağlarda rsync yavaş çalışabilir. Bu durumda -z (compress) seçeneği bant genişliğini iyileştirebilir. Ayrıca, ağ hızını ve sunucu kaynaklarını optimize etmek de performansı artırabilir.

Teknik Özellikler ve Standartlar

Rsync, temel olarak TCP/IP protokol yığını üzerinde çalışır. Veri transferi için iki ana yöntem sunar:

  • Rsync Protokolü: Rsync'in kendi özel iletişim protokolünü kullanır. Genellikle TCP port 873'ü dinler. Bu protokol, delta algoritmalarının verimli çalışması için optimize edilmiştir.
  • SSH (Secure Shell): Uzak sunucularla güvenli bir şekilde iletişim kurmak için endüstri standardı olan SSH protokolünü kullanır. Bu, veri transferinin şifrelenmesini sağlar ve kimlik doğrulama mekanizmalarını kullanır. SSH genellikle TCP port 22 üzerinden çalışır.

Rsync'in delta transfer algoritması, standart diff (fark) algoritmalarından farklılaşır. Bu algoritma, dosyaları sabit boyutlu bloklara ayırmak yerine, kaynak dosyanın içeriğine dayalı olarak dinamik olarak bloklar oluşturur. Bu dinamik bloklama, dosyalar yeniden sıralansa veya aralarına veri eklense bile, rsync'in hala büyük ölçüde eşleşen blokları bulmasını sağlar. Bu, rsync'i diğer veri senkronizasyon araçlarından ayıran temel bir özelliktir.

Dosya sistemleri açısından, rsync Unix benzeri dosya sistemleri (Linux ext4, XFS, Btrfs vb.) ve ağ dosya sistemleri (NFS, Samba/CIFS) ile sorunsuz çalışır. Windows üzerinde ise NTFS dosya sistemiyle uyumlu versiyonları mevcuttur.

Rsync, operasyonel süreklilik ve veri bütünlüğü açısından kritik öneme sahip olduğu için, birçok kurumsal yedekleme ve felaket kurtarma planının temel taşıdır. Veri kaybını önleme ve sistem erişilebilirliğini sağlama standartlarına uyumda önemli bir rol oynar.

2026 Sektör Verileri ve İstatistikler

Sunucu verilerinin senkronizasyonu ve yedeklenmesi, modern BT altyapılarının temel taşıdır. Bu kritik operasyonların önemi, sektördeki çeşitli istatistiklerle de doğrulanmaktadır.

Cloudflare Radar 2026 verilerine göre, küresel internet trafiğinin önemli bir kısmı artık mobil cihazlardan gelmektedir ve bu durum, veri senkronizasyonunun her zaman ve her yerden erişilebilir olması gerekliliğini vurgulamaktadır. Aynı raporda, web uygulamalarının ve API'lerin artan kullanımı, veri bütünlüğünün ve güvenliğinin ne kadar hayati olduğunu göstermektedir.

Statista 2026 raporuna göre, küresel bulut depolama pazarının büyüklüğünün artmaya devam etmesi beklenmektedir. Bu büyüme, hem şirketlerin verilerini bulutta yedekleme eğilimini hem de farklı bulut ortamları arasında veri senkronizasyonunun önemini ortaya koymaktadır. Rsync gibi araçlar, bu çoklu bulut ortamlarında tutarlılığı sağlamak için kullanılmaktadır.

Netcraft 2026 araştırmasına göre, aktif web sitesi sayısının milyarları aşması, her bir web sitesinin verilerinin düzenli olarak yedeklenmesi ve senkronize edilmesi gerektiği anlamına gelmektedir. Veri kaybı, bu web siteleri için ciddi gelir ve itibar kaybına yol açabilir. Bu nedenle, rsync gibi verimli yedekleme çözümleri, web altyapılarının sürdürülebilirliği için vazgeçilmezdir.

W3Techs 2026 verilerine göre, sunucu yönetimi ve yedekleme çözümlerinin pazar payı, artan siber tehditler ve veri regülasyonları nedeniyle sürekli bir yükseliş trendindedir. Bu veriler, rsync gibi güçlü ve esnek araçların kurumsal ortamlarda neden bu kadar yaygın olarak tercih edildiğini açıklamaktadır.

İlgili Konular

Sunucu verilerinin güvenliğini ve erişilebilirliğini sağlamak için rsync gibi araçların yanı sıra, kapsamlı bir izleme sistemi de kritik öneme sahiptir. Sunucu performansını sürekli olarak izlemek, olası sorunları erkenden tespit etmek ve önleyici tedbirler almak, veri bütünlüğünü korumaya yardımcı olur. Bu bağlamda, sunucu performansını izleme rehberleri, sistem sağlığını anlamak için değerli bilgiler sunar.

Özellikle Zabbix ile Sunucu Performansını İzleme Rehberi, sunucu kaynak kullanımını (CPU, RAM, disk) ve ağ trafiğini nasıl takip edebileceğinizi detaylandırır. Bu tür izleme araçları, rsync yedekleme görevlerinin zamanlamasını optimize etmek veya yedekleme sırasında kaynak tüketimini yönetmek için de kullanılabilir.

Sık Sorulan Sorular

rsync ile Sunucu Veri Senkronizasyonu ve Yedekleme hakkında merak edilenler

Rsync, canlı, çalışan bir veritabanı dosyasını doğrudan yedeklemek için genellikle önerilmez. Çünkü rsync dosya içeriğini bloklar halinde kopyalarken, veritabanı dosyası o anda yazılıyor olabilir. Bu durum, tutarsız veya bozuk bir yedeklemeye yol açabilir. Veritabanı yedeklemesi için, veritabanı sisteminin kendi yedekleme araçları (örneğin, MySQL için `mysqldump`, PostgreSQL için `pg_dump`) kullanılmalı ve bu yedekleme dosyaları daha sonra rsync ile başka bir konuma aktarılmalıdır.
Evet, rsync'in en güçlü yanlarından biri büyük dosya listelerini ve çok sayıda dosyayı verimli bir şekilde işleyebilmesidir. Delta transfer algoritması, yalnızca değişen verileri aktardığı için, dosyaların boyutu ne olursa olsun veya kaç tane dosya olursa olsun, sonraki yedeklemeler çok daha hızlı tamamlanır. Bu, onu gigabaytlarca veya terabaytlarca veri içeren dizinler için ideal kılar.

Sorunuz burada yok mu?

Canlı destek ekibimiz size yardımcı olmaya hazır.

İletişime Geç
A

Ahmet Yılmaz

İçerik Uzmanı

Web teknolojileri ve hosting çözümleri konusunda uzmanlaşmış içerik yazarı.

Web HostingTeknik Dokümantasyon
Yayın: 3 Şubat 2026
Güncelleme: 3 Şubat 2026
Uzman İçerik
Doğrulanmış Bilgi
Güncel Bilgi