Auteur de la discussion #1
rsync ile ayrıntılı çıktı alma

RaxBoard formatında yazılmış bu tartışmaya, rsync’in sunduğu ayrıntı çıktısını nasıl daha anlamlı ve kullanışlı hale getirebileceğimizi derinlemesine ele alıyorum. Amacımız, hangi seviyede çıktı elde etmek istediğimizi netleştirmek ve çıktıyı günlük iş akışınıza nasıl entegre edeceğinizi göstermek.

1) rsync’in ayrıntı modu nedir ve hangi bilgiler sağlar?
rsync’in standart -v, -vv ve -vvv gibi ayrıntı seviyeleri, karşı taraf ve aktarım durumuyla ilgili sürekli güncellemeler verir. Temel olarak hangi dosyaların aktarıldığı, hangi önyüklemelerin atlandığı, değişiklik tespitinin nasıl yapıldığı gibi bilgiler içerir. Ancak bu seviyeler genelde çok konuşur ve bazen gereksiz gürültü yaratır. Bu yüzden çıktılarını ihtiyaçlara göre filtrelemek gerekir.

2) Çıktıyı daha kullanışlı yapmak için pratik yaklaşımlar
  • --log-file ile günlük tutma: rsync çalıştırılırken çıktıların bir dosyaya kaydedilmesi, inceleme ve denetim için kritik. Örneğin: rsync -avz --delete /kaynak/ /hedef/ --log-file=/var/log/rsync.log
  • --itemize-changes ile ayrıntı kontrolü: değişen her satır için net farklar görmek için --itemize-changes eklemek. Bu, hangi dosyanın değiştiğini, yeni mi yoksa silinmiş mi olduğunu açıkça gösterir.
  • --stats ve --progress ile ölçüm: toplam aktarım boyutu, hız, kalan süre gibi bilgiler için --stats ve aktarım sürecindeki ilerlemeyi görmek için --progress kullanılır.
  • --fuzzy-ctime, --size-only gibi filtreler: belirli durumlarda zaman damgası veya boyut üzerinden karşılaştırma yapan durumlar için çıkarım kontrolleri sağlar.
  • Çıktıyı yapılandırılmış amaçlar için parçalara ayırma: günlük, hata, uyarı gibi farklı yönleri ayrı dosyalara yönlendirme. Örneğin: rsync ... > /dev/null 2> /var/log/rsync-error.log
  • grep ile hızlı filtreleme: çıktı akışını yalnızca ilginizi çeken kalıplara göre filtrelemek. Örneğin: rsync -avz ... | grep -E 'sending|receiving|sent|total'
  • rsyncd ve daemon logları: uzaktan rsync kullanırken rsyncd logları ile karşı taraf üzerindeki işlemleri izleme.
  • Sık karşılaşılan sorunlar için ayrıntı: hangi ögelerin eksik aktarıldığına dair satırlar üzerinde durulmalı; izin problemleri, yeniden karşılaşılan dosyalar, temp dosyalar gibi konular için özel filtreler eklemek.


3) Örnek senaryo ve komutlar
  • Sıkıştırmalı, ayrıntılı çıktı ve log kaydı:

CODE
1rsync -avz --delete --stats --progress --itemize-changes /kaynak/ /hedef/ --log-file=/var/log/rsync.log


  • Sadece değişen dosyaları ve özet çıktıyı görmek:

CODE
1rsync -av --delete --itemize-changes /kaynak/ /hedef/ | less


  • Hata odaklı çıktı ve hataları ayrı dosyaya:

CODE
1rsync -avz /kaynak/ /hedef/ > /dev/null 2> /var/log/rsync-errors.log


  • Dosya boyutu ve zaman damgası karşılaştırmasını sadeleştirme:

CODE
1rsync -avu --size-only /kaynak/ /hedef/


4) Pratik ipuçları
  • Log dosyalarını günlük olarak döndürün; uzun vadede hangi dosyaların sorun çıkardığını görmenizi kolaylaştırır.
  • --itemize-changes çıktısını parse etmek için basit sed/awk kullanın: dosya değişikliklerini hızlıca özetlemek mümkün.
  • rsync’i cron ile periyodik çalıştırıyorsanız çıktı yönlendirmeyi unutmayın; ayrıca günlük ve arşiv mantığı kurun.


Bu konudaki deneyimleriniz veya belirli bir çıktı ihtiyaçlarınız var mı? Özellikle hangi senaryolarda ayrıntılı çıktı sizin için en değerli oluyor, paylaşır mısınız?

Vous devez être connecté pour répondre.

Utilisateurs qui consultent cette discussion (Total: 3, Membres: 3, Invités: 0)
Total: 3 (membres: 3, invités: 0)
0 citations sélectionnées