4 puan yazan GN⁺ 2024-10-02 | 1 yorum | WhatsApp'ta paylaş
  • 2.0.0b11 beta yalnızca yeni depo testleri içindir; üretimde kullanmayın
  • Borg 2.0, mevcut depolarla uyumlu olmayan bir breaking release sürümüdür; borg 1.2/1.4 depolarındaki arşivleri yeni bir borg 2.0 deposuna taşımak için borg transfer kullanmak gerekir
  • borg transfer kullanmadan önce borg >= 1.2.6 sürümüne veya CVE-2023-36811 düzeltmesi uygulanmış bir borg sürümüne yükseltin; ayrıca manifest ve archive TAM ile ilgili yükseltme talimatlarını uygulayın
  • Borg deposuna rclone:// URL desteği eklendi; Amazon S3, Backblaze B2, Ceph, Dropbox, Google Cloud Storage, Google Drive, Microsoft Azure, Microsoft OneDrive, OpenStack Swift, sftp, SMB/CIFS, WebDAV dahil 70'ten fazla bulut depolama ürünü kullanılabiliyor
  • Aynı istemcide aynı depo üzerinde paralel işlemler desteği
  • Archive series özelliği eklendi; NAME, aynı ada sahip arşivlerin serisini tanımlar ve belirli bir tekil arşiv aid:<archive hash> ile tanımlanır
  • Komut satırı sözdizimi değiştiği için betiklerin ve wrapper'ların güncellenmesi gerekir: depo genellikle BORG_REPO veya borg -r <MYREPO> <COMMAND> ile belirtilir, repo::archive biçimi artık kullanılmaz
  • scp tarzı depo sözdizimi kaldırıldı; ssh:// URL kullanılması gerekir
  • Bazı depo/arşiv ortak komutları ayrıldı veya yeniden adlandırıldı: borg init artık borg repo-create, depo işlemleri borg repo-*, arşiv işlemleri ise borg create NAME, borg list ID, borg extract ID vb. olarak kullanılır
  • --glob-archives, --match-archives olarak yeniden adlandırıldı; id:, sh:, re: desen stilleri destekleniyor ve varsayılan, tam aynı dizge eşleşmesi olan id:
  • platformdirs 3.x.x kullanımı nedeniyle macOS ve Windows'ta XDG_*_HOME artık uygulanmıyor; macOS varsayılan config/cache dizini ~/Library/Application Support/borg/ olarak değişti
  • --remote-ratelimit, --numeric-owner, --nobsdflags, --noatime, --save-space, --bypass-lock, borg config kaldırıldı
  • --list ile --progress birlikte kullanımı, --log-json istisnası dışında yasaklandı
  • Yüksek gecikmeli depolarda gereksiz repository.list() çağrılarının kaldırılmasıyla borg check ve compact performansı iyileştirildi; depo içindeki chunks index önbelleği sayesinde b10'a kıyasla çoğu komutta yüksek gecikmeli depo performansı arttı
  • Dosya önbelleğindeki nadir görülen veri kaybına yol açabilen race condition düzeltildi
  • Dosya önbelleği girdileri artık hem ctime hem mtime tutuyor ve aynı archive series içindeki önceki arşivden dosya önbelleği yeniden oluşturulabiliyor
  • Dosya önbelleği archive series bazında ayrılarak RAM kullanımı azaltıldı
  • Anlamsız bazı seçeneklerin yinelenen kullanımı artık yasak; bu nedenle daha önce çalışan betikler hata verebilir

1 yorum

 
GN⁺ 2024-10-02
Hacker News yorumları
  • BorgBackup kullanıyorum ve oldukça memnunum
    Bir kez ayarlayıp unutulacak düzeydeydi; aradan 7 yıl geçmişken bile tekilleştirmeli yedekleme her hafta sorunsuz çalışıyor
    Alttaki Borg yedeklemesinin karmaşıklığını azaltan borgmatic ile birlikte kullanmanızı öneririm: https://github.com/borgmatic-collective/borgmatic

    • Masaüstü ortamı kullanıyorsanız ve GUI tercih ediyorsanız Vorta da iyi uydu
      https://vorta.borgbase.com/
    • Bu tür araçları öğrenip ayarladıktan sonra gerçekten unutuyorsunuz; sonrasında tekrar hatırlamak zahmetli geldiği için yedek doğrulamadan kaçınır hale geliyorsunuz
      Bu yüzden giderek rsync’e ya da GUI ön ucu olan araçlara yöneliyorum
    • “Ayarlayıp unuttum” 7 yıl demekse, umarım ara sıra yedekten geri yükleme doğrulaması yapıyorsunuzdur
    • İyi bir Android istemcisi olup olmadığını merak ediyorum
  • Şu anda uzak makineme yedeklemeyi yalnızca rclone ile yapıyorum ama bunun profesyonel bir çözüm olmadığı açık
    Uzak konum olarak Backblaze B2 eklemeyi düşündüm, fakat yalnızca rclone kullanmak modern bir yedekleme yöntemi sayılmaz gibi
    rclone teknik olarak bir yedekleme aracı değil; şifreleme özelliği olsa da biraz kaba
    Düzgün bir yedekleme aracının veriyi uygun boyutlu bloklara bölmesi, S3/B2 API’ye uysun diye dosyaları birebir dosya olarak oluşturmak yerine gerektiğinde dizinleri tar ile paketleyip linkleri koruması ve tekilleştirme gibi uzun süredir yerleşmiş en iyi uygulamaları ele alması gerektiğini düşünüyorum
    Önerebileceğiniz bir araç var mı merak ediyorum
    restic ve duplicati’ye kısaca baktım ama özel bir yedekleme aracından bekleyeceğim kadar basit değillerdi
    GUI’ye ihtiyacım yok, hatta istemem; tüm ayarların tek bir yapılandırma dosyasında durması, bunun da diğer veriler gibi ayrı bir konuma yedeklenip yeni bir makinede yeniden üretilebilmesi iyi olurdu
    Daha büyük sorun ise bu araçların dizini bozup verinin kurtarılamaz hale geldiğine dair korkutucu örnekler görmüş olmam; yedekleme aracı için her koşulda asla olmaması gereken temel alan bu olduğundan bunu kabullenmek zor

    • Yapılandırmayı tek bir dosya gibi ele almak istiyorsanız kopiaya bakmaya değer
      restic ile aynı işi yapıyor ama yapılandırmayı ele alış biçimi daha çok hoşunuza gidebilir
      Ek referans: https://news.ycombinator.com/item?id=34154052
      duplicati’yi denememek daha iyi olur
      Birkaç kez düzgün kullanmaya çalıştım ama her seferinde bug dolu olduğu için başarısız oldum; arayüzünü sevdiğim için bu daha da üzücü
    • rpi üzerinde yedekleme yapmayı denerken Borg’un kullanılamayacak kadar yavaş olduğunu düşündüğümden beri bupstash kullanıyorum
      Sonrasında ev sunucumu düzgün bir donanıma yükselttim ama genel olarak daha iyi çalıştığı için bupstash’i kullanmaya devam ediyorum
      Yalnız son sürümünün 2 yıl önce çıktığını ve yazarının hâlâ beta olarak işaretlediğini hesaba katmak gerek
      Yine de yazarın kalite standardı, “beta olmayan” diğer projelerinkinden daha yüksek gibi görünüyor
      Faydalı bir yedekleme aracı karşılaştırması: https://github.com/deajan/backup-bench
    • Basit olup olmaması kullanım senaryosuna bağlı ama borg harikaydı
      Dokümantasyondaki hızlı başlangıç kılavuzunu takip etmenizi öneririm
      Tekilleştirme ve şifreleme destekliyor, çok daha fazla özelliği var; ama gerekmiyorsa kullanmak zorunda değilsiniz
      Veri kaybı riskini azaltan yedekleme ve felaket kurtarma prosedürleri oluşturmak için borgmatic ile birlikte kullanıyorum
      borgbase de iyi bir hizmet, ancak borgbase’in ek özelliklerine ihtiyacınız yoksa rclone desteğini kullanarak B2 gibi yerlere gitmek daha ucuz olabilir
      Hem kişisel projelerde hem ücretli işlerde epey uzun süredir kullanıyorum ve deneyimim iyi oldu
    • restic + autorestic/resticprofile kombinasyonunu kullanıyorum
      Borg 2 hâlâ beta ve Kopia da benzer bir konumda
      Kopia daha yeni bir araç olduğu için aynı makinede ayrı bir yedek yedekte test ediyorum; yer varken yapmamak için de bir neden yok
      Ara sıra veriyi de kapsayan bütünlük denetimi çalıştırıp metaveri ve verinin sağlam olduğuna güvenebiliyorum
    • BackBlaze B2’ye Restic ile yedeklemekten çok memnunum
      “Yapılandırma dosyası” aslında depo konumu gibi ortamı ayarlayan, istediğim yedeklemeyi çalıştıran ve saklama politikasına uygun prune komutunu yürüten bir kabuk betiği
      Bu düzeni birkaç yıldır başarıyla kullanıyorum
      Tam geri yükleme hiç yapmadım ama tekil dosya ve dizin geri yüklemelerinde sorun yaşamadım
      Dizin bozulması sorunuyla ilgili bir bağlantı var mı merak ediyorum
      Ben hiç yaşamadım ama tek bir örnekle bunun çok anlamlı olmadığı açık
  • Uzun zamandır Borg için rclone arka ucu yapmak istiyordum
    Fakat v1’de arka uç soyutlaması yeterince iyi olmadığı için bunu kolayca yapmak zordu
    v2’de Thomas Waldmann düzgün bir soyut arayüz hazırlamış; rclone kodu da 300 satırdan az Python ile bitti, bu yüzden bir iki öğleden sonra içinde yapılabildi
    https://github.com/borgbackup/borgstore/blob/master/src/borg...

  • Çok ilginç
    Özellikle nesne depolamanın popülerliği artıp maliyetler düştükçe uzun süredir talep edilen bir özellikti
    Borg’un nesne depolama ile çalışması resmi olarak desteklenmiyordu ama bazıları yine de böyle kullanıyordu
    Anladığım kadarıyla çoğunlukla Borg’un doğrudan kullanmasına ya da üzerinde işlem yapmasına izin vermek yerine depoyu kopyalayıp sonra yüklüyorlardı; ancak kaynak depo bozuksa bu bozulma da kopyalanabildiği için sorun oluyordu
    Bu destekle çok daha kolaylaşacak ve iş akışı da sadeleşecek gibi
    Belirli bir hizmet yerine rclone desteğini seçmek daha akıllı ve geleceğe dönük bir tercih gibi görünüyor

  • İlgili yazılar
    Borg 2.0 beta (deduplicating backup program with compression and encryption) - https://news.ycombinator.com/item?id=40990425 - Temmuz 2024
    Borgctl – borgbackup without bash scripts - https://news.ycombinator.com/item?id=39289656 - Şubat 2024
    BorgBackup: Deduplicating archiver with compression and encryption - https://news.ycombinator.com/item?id=34152369 - Aralık 2022
    Emborg – Front-End to Borg Backup - https://news.ycombinator.com/item?id=30035308 - Ocak 2022
    Deduplicating Archiver with Compression and Encryption - https://news.ycombinator.com/item?id=27939412 - Temmuz 2021
    BorgBackup: Deduplicating Archiver - https://news.ycombinator.com/item?id=21642364 - Kasım 2019
    Borg – Deduplicated backup with compression and authenticated encryption - https://news.ycombinator.com/item?id=13149759 - Aralık 2016
    BorgBackup (short: Borg) is a deduplicating backup program - https://news.ycombinator.com/item?id=11192209 - Şubat 2016

  • Borg ve Restic için güncel bir karşılaştırma var mı, ya da Restic’ten Borg’a geçmeye değecek ikna edici bir sebep var mı merak ediyorum
    Eskiden Borg kullanıyordum ama yerel dosyalar veya ssh dışındaki backend’leri kullanamamak sorun olmuştu
    Restic sıkıştırmayı desteklemeye başladığı sıralarda Restic’e geçtim
    Birden çok sunucuyu S3 uyumlu bir depolama sağlayıcısına yedeklediğim kullanım senaryomda artık Restic ve Borg neredeyse eşdeğer görünüyor
    Bozuk olmayan şeyi tamir etmek istemem ama Restic kullanırken Borg’a kıyasla neleri kaçırdığımı da bilmek isterim

    • restic’i anlaması ve kullanması daha kolay olduğu için tercih ediyorum
      Böyle olunca yedekleme gerçekten yapılıyor
      Sürekli değişiyormuş hissi de daha az; zaten bir yedekleme çözümünde hiç bitmeyen yeni özellik akışı istemedim
  • Ucuz çevrimiçi yedekleme depolaması arıyorsanız, Microsoft 365 Single aboneliğine OneDrive 1TB’nin dahil olduğunu bilmekte fayda var
    Family aboneliğinde kişi başı 1TB var
    Birkaç yıldır restic + rclone kombinasyonuyla başarıyla kullanıyorum
    Hızlı değil ama çalışıyor

    • Hetzner’in storage box ürününe de bakmaya değer
      SSH ile erişilebilen 1TB depolama ayda 4 euro; bunu geçmek zor
  • Kişisel kullanımda sıradan rsync yerine Borg’u ne zaman önermek gerektiğini merak ediyorum
    Şu anda sürücüdeki dizin gruplarını başka bir sürücüye ve uzak bir servise (rsync.net) rsync ile yedekliyorum
    İyi çalışıyor ama kullanım senaryom basit olduğu için bu çözüm yeterli mi, yoksa Borg’un büyük avantajlarını mı kaçırıyorum emin değilim
    Borg’un şifrelemesine özeniyorum ama yeni bir aracın karmaşıklığı ve verilerimi bozabileceğim endişesi yüzünden kolayca geçemiyorum
    Yedeklenecek veri şu an yaklaşık 5TB; çok fazla sayılmaz

    • Benim durumumda tekilleştirme ve sıkıştırma depolama alanından büyük ölçüde tasarruf sağlıyor
      Posta yedeklerinde son 6 aya ait 17 yedek normalde 837GB; sıkıştırmadan sonra 312GB’a, tekilleştirmeden sonra 19GB’a düşüyor
      Postgres de 25GB’tan 7GB’a, sonra tekrar 900MB’a iniyor
      Posta yedekleri için rsync’in hard link’leriyle de alan tasarrufu sağlanabilir ama ek bir işlem yapmadan bu kadar küçülür mü bilmiyorum
    • Yaygın sorun şu: Bir dosyayı silip ya da bozup bunu ancak iki gün sonra fark ederseniz, tek bir günlük yedek işe yaramaz
      Birden fazla snapshot’a sahip olmak çok önemli
      http://www.taobackup.com/ gibi kaynaklara da bakmaya değer
      rsync, dosya sayısı çoksa çok yavaştır; adı değişen dosyaları da işleyemez ve yeniden aktarır
    • rsync ile yalnızca son durumu kopyalarsınız
      Borg kullanırsanız oluşturulmuş tüm yedekleri görebilir ve önceki snapshot’lardan istediğiniz ana geri dönebilirsiniz
      Bu, birçok yedekleme çözümü için de geçerli bir avantaj
      Somut olarak, yanlışlıkla bir dosyayı sildiyseniz ve o durum rsync edildiyse, o yedekle dosyayı geri getiremezsiniz
      Borg ile getirebilirsiniz
  • Borg şifrelemesini rclone crypt yerine kullanmak için bir neden var mı, yoksa tersi mi merak ediyorum

    1. https://borgbackup.readthedocs.io/en/2.0.0b11/quickstart.htm...
    2. https://rclone.org/crypt/
    • rclone crypt’in Borg ile pek ilgisi yok
      Bir makineden başka bir makineye dosya kopyalama aracıdır; bu durumda kopyalamadan önce şifreleme yapar
      Bulutla birlikte kullanılan rsync’e daha yakındır
      Borg ise yedekleme için farklı türde bir araçtır
      Kaynak dizini tek bir depo hâline getirerek tekilleştirir, şifreler, anlık görüntülerini alır, checksum uygular ve sıkıştırır
      Dosya düzeyinde değil, veri bloğu düzeyinde çalışır
      Depo yönetim komutları da içerdiği için veri arama, anlık görüntüleri temizleme veya birleştirme gibi işlemler yapılabilir
      Daha sonra depoyu istediğiniz yere aktarmak veya eşitlemek için rsync/SSH ya da rclone gibi araçlar kullanabilirsiniz
      Artık rclone yerel olarak desteklendiğinden, depoyu hem yerelde hem uzakta tutmaya gerek kalmadan doğrudan uzak konuma yedekleme yapılabilir
    • Bu paket ile Restic arasındaki farkı da merak ediyorum
      Verimlilik ve şifreleme açısından nasıl farklı olduklarını bilmek istiyorum
    • Şifreleme açıkken tekilleştirmenin ne kadar iyi çalıştığını merak ediyorum
      rsync.net’e bakmıştım, ancak makul bir şifreleme yöntemini desteklememesi hayal kırıklığıydı
  • Birkaç yıldır rsync.net üzerinde Borg yedekleri kullanıyorum ve memnunum
    force-command ile ssh oturumunda Borg’u zorunlu kılma özelliğini destekliyor; ayrıca Borg’da yedekleme ssh anahtarı ele geçirilse bile silmeyi engelleyebilen bir seçenek var
    Genel olarak kurulumu çok sancılı olmayan, sağlam bir çözüm

    • Ele geçirilmiş bir ana makinenin kendi yedeğini silememesi için bir çözüm arıyordum
      Söylediğiniz gibi komutu zorunlu kılınca rsync.net’te bu mümkün oluyor; rsync.net’in anlık görüntüleri de yanlışlıkla hatalı silme durumlarına karşı bir koruma katmanı sağlıyor