Themenersteller #1
lftp ile Uzak Dosya Senkronizasyonu

[laptop]Bu konuya dair karşılaştığım günlük pratikler üzerine derinleşirken, lftp’nin sadece indirme/yükleme için değil, uzak dosya ağaçlarını tutarlı bir şekilde senkronize etmek için de sunduğu olanakları ele almak istiyorum. Özellikle sunucu tarafında periyodik yansıtma, yedekleme akışları ve hatalı aktarım sonrası yeniden deneme işlemleri açısından düşüncelerimi paylaşacağım. Aşağıda adım adım yaklaşımı, tipik kullanım senaryolarını ve dikkat edilmesi gereken noktaları toparlıyorum.

1) Temel fikir
lftp, birden çok protokolü destekleyen güçlü bir komut satırı FTP istemcisidir. Mirror komutu ile yerel ve uzak dizinler arasındaki farkları algılayıp eşitleyebilirsiniz. Async işleyiş sayesinde bağlantı sorunlarında yeniden bağlanma ve kaldığınız yerden devam etme mekanizması kurmak mümkündür. Örneğin bir yedek akışında uzak sunucudaki değişiklikleri yerelde tutarlı bir kopya olarak almak için mirror kullanımı idealdir.

2) Temel mirror kullanımı
  • Yerel dizin ile uzak dizin arasını eşitlemek:

CODE
1lftp -e "mirror -R /yerel/kalıcı-dizin /uzak/konum; quit" ftp://kullanici:parola@sunucu

  • Karşılaştırmalı senkronizasyon (yalnızca değişenler):

CODE
1lftp -e "mirror --only-new --reverse --delete /yerel/kalici/ /uzak/konum; quit" ftp://kullanici@sunucu

  • Uzaktaki değişiklikleri yerelde almak (non-reverse):

CODE
1lftp -e "mirror --only-new /yerel/konum /uzak/kalici; quit" ftp://kullanici@sunucu


3) Akıllı davranış ve güvenlik
  • Dosya yeniden aktarmalarda kesinti sonrası devam: mirror komutu otomatik olarak eksik kalan parçaları tamamlar; transfer güvenliğini artırmak için --use-pget-n ile çok parçalı indirme kullanımı, veya -c ile kaldığı yerden devam etme dağınıklığını minimalize eder.
  • Hız ve ağ tıkanıklığı için paralel bağlantılar ve rescans ayarları: --parallel N ve --only-new gibi bayraklar ile özelleştirebilirsiniz.
  • Gizli bağlantılar ve güvenlik: FTPS veya SFTP üzerinden bağlanmayı tercih edin; -e içindeki tarama ve komutları dikkatle yönetin.


4) Hata yönetimi ve günlükler
  • Otomatik yeniden bağlanma: open ile bağlantı kurmayı deneyen bir betik yazıp, bağlantı koparsa belirli aralıklarla yeniden bağlanmayı sağlayabilirsiniz.
  • Günlük kaydı: mirror komutunu -v veya --log ile çalıştırıp, ilerleme ve hataları dosyaya yazdırmak ilerideki hataları tespit etmeyi kolaylaştırır.


5) Pratik notlar
  • Büyük dosya yığınlarında —delete seçeneklerini dikkatli kullanın; yanlışlıkla uzak sunucuyu yerelde geri dönüştürmeden silebilirsiniz.
  • Dosya adlarındaki boşluklar veya özel karakterler için yerel ve uzak yol adlarını test etmek önemlidir; özellikle Windows tabanlı sistemlerle etkileşim söz konusuysa ad çözümlemelerine dikkat edin.
  • Zamanlanmış görevler için cron/at üzerinden scriptler kurarken, tam yol ve çevre değişkenlerini sabitleyin; ağ politikalarının zaman damgası ve MFA gereksinimleri etkileyebilir.


Bu konudaki deneyimlerinizi ve karşılaştığınız özel senaryoları paylaşabilirsiniz. Özellikle hangi durumlarda mirror’ın hangi bayraklarıyla temiz ve güvenilir bir akış elde ettiğinizi merak ediyorum.

Sie müssen angemeldet sein, um zu antworten.

0 Zitate ausgewählt