4 पॉइंट द्वारा GN⁺ 2024-10-02 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • 2.0.0b11 beta केवल नए repository testing के लिए है; production उपयोग निषिद्ध है
  • Borg 2.0 एक breaking release है जो मौजूदा repositories के साथ compatible नहीं है, और borg 1.2/1.4 repositories के archives को नए borg 2.0 repository में ले जाने के लिए borg transfer का उपयोग करना होगा
  • borg transfer इस्तेमाल करने से पहले borg >= 1.2.6 या CVE-2023-36811 fix लागू किए हुए borg में upgrade करना होगा, और manifest तथा archive TAM से संबंधित upgrade निर्देशों का पालन करना होगा
  • Borg repository में rclone:// URL सपोर्ट जोड़ा गया, जिससे Amazon S3, Backblaze B2, Ceph, Dropbox, Google Cloud Storage, Google Drive, Microsoft Azure, Microsoft OneDrive, OpenStack Swift, sftp, SMB/CIFS, WebDAV आदि 70+ cloud storage products का उपयोग संभव है
  • उसी client के उसी repository पर parallel operations का सपोर्ट
  • Archive series फीचर जोड़ा गया; NAME समान नाम वाले archives की series की पहचान करता है और किसी specific single archive की पहचान aid:<archive hash> से होती है
  • command-line syntax बदल गई है, इसलिए scripts और wrappers में संशोधन आवश्यक है: repository आमतौर पर BORG_REPO या borg -r <MYREPO> <COMMAND> से निर्दिष्ट किया जाता है, repo::archive format अब उपयोग नहीं होता
  • scp-style repository syntax हटा दी गई है; अब ssh:// URL का उपयोग करना होगा
  • कुछ commands जो repository/archive दोनों के लिए थीं, उन्हें अलग या rename किया गया है: borg init अब borg repo-create है, repository operations borg repo-* से, और archive operations borg create NAME, borg list ID, borg extract ID आदि से किए जाते हैं
  • --glob-archives का नाम बदलकर --match-archives कर दिया गया है, इसमें id:, sh:, re: pattern styles का सपोर्ट है और default id: है, जो exact string match करता है
  • platformdirs 3.x.x के उपयोग के कारण macOS और Windows में XDG_*_HOME लागू नहीं होगा; macOS का default config/cache directory बदलकर ~/Library/Application Support/borg/ हो गया है
  • --remote-ratelimit, --numeric-owner, --nobsdflags, --noatime, --save-space, --bypass-lock, borg config हटा दिए गए हैं
  • --list और --progress का एक साथ उपयोग, --log-json exception को छोड़कर, निषिद्ध है
  • high-latency repositories में अनावश्यक repository.list() calls हटाने से borg check और compact की performance बेहतर हुई है, और repository के अंदर chunks index cache के कारण b10 की तुलना में अधिकांश commands की high-latency repository performance सुधरी है
  • file cache में मौजूद दुर्लभ data loss possible race condition को ठीक किया गया है
  • file cache entries अब ctime और mtime दोनों रखती हैं, और उसी archive series के पिछले archive से file cache को rebuild किया जा सकता है
  • RAM उपयोग कम करने के लिए file cache को archive series के अनुसार अलग किया गया है
  • कुछ अर्थहीन duplicate option specifications अब निषिद्ध हैं, इसलिए पहले काम करने वाली scripts अब fail हो सकती हैं

1 टिप्पणियां

 
GN⁺ 2024-10-02
Hacker News की टिप्पणियाँ
  • मैं BorgBackup इस्तेमाल कर रहा हूँ और काफी संतुष्ट हूँ
    इसे एक बार सेट करके भूल जाने जैसा था, और 7 साल बाद भी deduplicated backup हर हफ्ते बिना दिक्कत चल रहा है
    Borg backup की अंदरूनी जटिलता कम करने वाले borgmatic के साथ इसे इस्तेमाल करने की सलाह दूँगा: https://github.com/borgmatic-collective/borgmatic

    • अगर आप desktop environment इस्तेमाल करते हैं और GUI पसंद करते हैं, तो Vorta भी अच्छा बैठा
      https://vorta.borgbase.com/
    • ऐसे tools को सीखकर सेट कर देने के बाद सचमुच भूल जाते हैं, और बाद में उन्हें फिर याद करना झंझट लगता है, इसलिए backup verification से बचने लगते हैं
      इसलिए मैं धीरे-धीरे rsync या GUI frontend वाले tools की तरफ झुक रहा हूँ
    • अगर “सेट करके भूल गया” को 7 साल हो गए हैं, तो उम्मीद है आप कभी-कभार backup restore verification कर रहे होंगे
    • जानना चाहूँगा कि कोई ठीक-ठाक Android client है या नहीं
  • अभी मैं सिर्फ rclone से अपनी remote machine पर backup कर रहा हूँ, लेकिन यह साफ है कि यह कोई professional solution नहीं है
    Backblaze B2 को remote destination के तौर पर जोड़ने का सोचा था, पर सिर्फ rclone इस्तेमाल करना modern backup approach कहना मुश्किल है
    rclone सख्ती से कहें तो backup tool नहीं है, और encryption feature तो है, लेकिन थोड़ा कच्चा-सा है
    मेरे हिसाब से एक सही backup tool को data को उचित आकार के blocks में बाँटना चाहिए, S3/B2 API के हिसाब से files को जस-का-तस बनाने के बजाय जरूरत पड़ने पर directories को tar में बांधकर links सुरक्षित रखने चाहिए, और deduplication जैसी लंबे समय से established best practices संभालनी चाहिए
    जानना चाहूँगा कि कोई recommend करने लायक tool है या नहीं
    restic और duplicati को थोड़ा देखा, लेकिन dedicated backup tool से जितनी simplicity की उम्मीद थी, वे उतने simple नहीं लगे
    GUI की जरूरत नहीं है, बल्कि नहीं ही चाहिए; अच्छा होगा अगर सारी settings एक single config file में हों, ताकि उसे बाकी data की तरह अलग जगह backup करके नई machine पर reproduce किया जा सके
    इससे भी बड़ी समस्या यह है कि मैंने ऐसे डरावने cases देखे हैं जहाँ इन tools ने index खराब कर दिया और data recover नहीं हो पाया; backup tool के लिए यह core area है जहाँ किसी भी हालत में ऐसा नहीं होना चाहिए, इसलिए यह बात समझना मुश्किल है

    • अगर आप settings को single file जैसा treat करना चाहते हैं, तो kopia देखने लायक है
      यह restic जैसी ही भूमिका निभाता है, लेकिन इसका configuration handling आपको ज्यादा पसंद आ सकता है
      अतिरिक्त संदर्भ: https://news.ycombinator.com/item?id=34154052
      duplicati को आजमाने की जरूरत नहीं है
      मैंने कई बार इसे ठीक से इस्तेमाल करने की कोशिश की, लेकिन यह हमेशा bugs से भरा और नाकाम रहा; interface पसंद था, इसलिए और भी अफसोस हुआ
    • rpi पर backup करने की कोशिश में Borg इतना धीमा लगा कि इस्तेमाल करने लायक नहीं लगा, तब से मैं bupstash इस्तेमाल कर रहा हूँ
      बाद में home server को बेहतर hardware में upgrade किया, लेकिन कुल मिलाकर bupstash बेहतर चलता रहा, इसलिए उसी पर बना रहा
      हालांकि ध्यान रहे कि आखिरी release 2 साल पहले आया था, और author ने इसे अभी भी beta marked रखा है
      फिर भी author के quality standards कई “non-beta” projects से ऊँचे लगते हैं
      उपयोगी backup tool comparison: https://github.com/deajan/backup-bench
    • यह simple है या नहीं, use case पर निर्भर करता है, लेकिन borg शानदार रहा है
      documentation में quick start guide follow करने की सलाह दूँगा
      यह deduplication और encryption support करता है और इसमें बहुत ज्यादा features हैं, लेकिन जरूरत न हो तो उन्हें इस्तेमाल नहीं करना पड़ता
      मैं borgmatic के साथ मिलाकर ऐसी backup और disaster recovery procedures बना रहा हूँ जो data loss risk कम करें
      borgbase भी अच्छी service है, लेकिन अगर borgbase के extra features की जरूरत नहीं है, तो rclone support का उपयोग करके B2 जैसी जगह इस्तेमाल करना सस्ता पड़ सकता है
      personal projects और paid work दोनों में इसे काफी समय से इस्तेमाल कर रहा हूँ और experience अच्छा रहा है
    • मैं restic + autorestic/resticprofile combination इस्तेमाल करता हूँ
      Borg 2 अभी beta है और Kopia भी लगभग उसी स्थिति में है
      Kopia नया tool है, इसलिए उसी machine पर अलग redundant backup में test कर रहा हूँ; जगह है तो न करने की कोई वजह नहीं
      कभी-कभी data सहित integrity check चलाता हूँ, ताकि metadata और data दोनों ठीक हैं इस पर भरोसा हो सके
    • Restic से BackBlaze B2 पर backup करके मैं बहुत संतुष्ट हूँ
      “config file” असल में एक shell script है जो repository location जैसी environment settings सेट करती है, मनचाहा backup चलाती है, और retention policy के हिसाब से prune command execute करती है
      मैं यह setup कई सालों से सफलतापूर्वक इस्तेमाल कर रहा हूँ
      पूरा restore कभी नहीं किया, लेकिन individual files और directories restore करने में कोई दिक्कत नहीं हुई
      index corruption वाली समस्या से जुड़ा कोई link है या नहीं, जानना चाहूँगा
      मैंने खुद ऐसा कभी नहीं झेला, लेकिन एक sample से obviously बहुत निष्कर्ष नहीं निकाला जा सकता
  • मैं काफी समय से Borg के लिए rclone backend बनाना चाहता था
    लेकिन v1 में backend abstraction इतना अच्छा नहीं था कि इसे आसानी से बनाया जा सके
    v2 में Thomas Waldmann ने अच्छा abstract interface बना दिया है, और rclone code Python की 300 lines से कम में खत्म हो गया, इसलिए एक-दो दोपहरों में बनाया जा सका
    https://github.com/borgbackup/borgstore/blob/master/src/borg...

  • बहुत रोचक है
    खासकर object storage की popularity बढ़ने और लागत घटने के साथ यह लंबे समय से माँगा जा रहा feature था
    Borg का object storage के साथ काम करना official support नहीं था, लेकिन कुछ लोग उसे वैसे इस्तेमाल कर रहे थे
    मेरी समझ से ज्यादातर लोग Borg को सीधे इस्तेमाल या modify करवाने के बजाय repository को replicate करके upload करते थे, लेकिन अगर original repository corrupt हो तो वह corruption भी replicate हो सकती है, जिससे समस्या होती है
    इस support से यह काफी आसान हो जाएगा और workflow भी simple हो जाएगा
    किसी specific service के बजाय rclone support चुनना ज्यादा समझदार और future-oriented विकल्प लगता है

  • संबंधित पोस्ट
    Borg 2.0 beta (deduplicating backup program with compression and encryption) - https://news.ycombinator.com/item?id=40990425 - जुलाई 2024
    Borgctl – borgbackup without bash scripts - https://news.ycombinator.com/item?id=39289656 - फ़रवरी 2024
    BorgBackup: Deduplicating archiver with compression and encryption - https://news.ycombinator.com/item?id=34152369 - दिसंबर 2022
    Emborg – Front-End to Borg Backup - https://news.ycombinator.com/item?id=30035308 - जनवरी 2022
    Deduplicating Archiver with Compression and Encryption - https://news.ycombinator.com/item?id=27939412 - जुलाई 2021
    BorgBackup: Deduplicating Archiver - https://news.ycombinator.com/item?id=21642364 - नवंबर 2019
    Borg – Deduplicated backup with compression and authenticated encryption - https://news.ycombinator.com/item?id=13149759 - दिसंबर 2016
    BorgBackup (short: Borg) is a deduplicating backup program - https://news.ycombinator.com/item?id=11192209 - फ़रवरी 2016

  • जानना चाहता हूँ कि Borg और Restic की कोई ताज़ा तुलना है या नहीं, या Restic से Borg पर जाने की कोई ठोस वजह है या नहीं
    पहले Borg इस्तेमाल करता था, लेकिन local files या ssh के अलावा दूसरे backends इस्तेमाल न कर पाना समस्या था
    जब Restic ने compression सपोर्ट करना शुरू किया, उसी समय Restic पर चला गया
    मेरे use case में, जहाँ कई servers को S3-compatible storage provider पर backup करना होता है, अब Restic और Borg लगभग बराबर लगते हैं
    जो चीज़ टूटी नहीं है उसे ठीक नहीं करना चाहता, लेकिन यह भी जानना चाहता हूँ कि Restic इस्तेमाल करते हुए Borg की तुलना में क्या miss कर रहा हूँ

    • restic समझने और इस्तेमाल करने में आसान है, इसलिए मुझे पसंद है
      तभी backups सच में होते हैं
      यह लगातार बदलता हुआ भी कम लगता है, और backup solution में मैंने कभी लगातार नए features की धारा नहीं चाही
  • अगर सस्ता online backup storage ढूँढ रहे हैं, तो यह जान लेना अच्छा है कि Microsoft 365 Single subscription में OneDrive 1TB शामिल होता है
    Family subscription में प्रति व्यक्ति 1TB मिलता है
    कई सालों से restic + rclone combination के साथ सफलतापूर्वक इस्तेमाल कर रहा हूँ
    तेज़ नहीं है, लेकिन काम करता है

    • Hetzner का storage box product भी देखने लायक है
      SSH से accessible 1TB storage 4 euro प्रति माह में मिलना काफ़ी मुश्किल मुकाबला है
  • निजी उपयोग में साधारण rsync के बजाय Borg की सिफारिश कब करनी चाहिए, यह जानना चाहता हूँ
    अभी drives की directories के bundles को दूसरी drive और remote service (rsync.net) पर rsync से backup कर रहा हूँ
    यह ठीक चल रहा है, लेकिन मेरा use case simple है इसलिए यह solution पर्याप्त है या मैं Borg के बड़े फायदे miss कर रहा हूँ, इस पर यकीन नहीं है
    Borg की encryption आकर्षक लगती है, लेकिन नए tool की complexity और कहीं मैं अपना data खराब न कर दूँ, इस चिंता के कारण आसानी से switch नहीं कर पा रहा हूँ
    backup करने वाला data अभी लगभग 5TB है, बहुत ज़्यादा नहीं

    • मेरे मामले में deduplication और compression storage space काफ़ी बचाते हैं
      mail backup में पिछले 6 महीनों के 17 backups मूल रूप से 837GB थे, compression के बाद 312GB और deduplication के बाद 19GB हो गए
      Postgres भी 25GB से 7GB और फिर 900MB तक घट गया
      mail backup में rsync के hard links से भी space बच सकती है, लेकिन अलग से tweaking किए बिना यह इतना छोटा होगा या नहीं, पता नहीं
    • आम समस्या यह है कि अगर कोई file delete या corrupt हो जाए और दो दिन बाद पता चले, तो एक daily backup मददगार नहीं होता
      कई snapshots रखना बहुत ज़रूरी है
      http://www.taobackup.com/ जैसी सामग्री भी देखने लायक है
      files बहुत हों तो rsync बहुत slow हो जाता है, और renamed files को भी handle नहीं कर पाता, इसलिए उन्हें फिर से transfer करता है
    • rsync से केवल last state की नकल बनती है
      Borg इस्तेमाल करने पर बनाए गए सभी backups देख सकते हैं, और पुराने snapshot में से अपनी पसंद के समय पर वापस जा सकते हैं
      यह फायदा कई backup solutions में भी मिलता है
      खास तौर पर, अगर गलती से file delete हो गई और वही state rsync हो गई, तो उस backup से file recover नहीं कर सकते
      Borg में यह संभव है
  • सोच रहा/रही हूँ कि Borg encryption को rclone crypt के बजाय इस्तेमाल करने की कोई वजह है या उल्टा

    1. https://borgbackup.readthedocs.io/en/2.0.0b11/quickstart.htm...
    2. https://rclone.org/crypt/
    • rclone crypt का Borg से ज्यादा लेना-देना नहीं है
      यह एक मशीन से दूसरी मशीन पर files copy करने का tool है, और इस case में copy करने से पहले encrypt करता है
      यह cloud के साथ इस्तेमाल होने वाले rsync के ज्यादा करीब है
      Borg backup के लिए अलग तरह का tool है
      यह source directory को एक repository में deduplicate, encrypt, snapshot, checksum और compress करता है
      यह file level पर नहीं, बल्कि data block level पर काम करता है
      इसमें repository management commands भी शामिल हैं, जिससे data search, snapshots clean up या merge आदि किए जा सकते हैं
      उसके बाद repository को जहाँ चाहें transfer या sync करने के लिए rsync/SSH या rclone जैसे tools इस्तेमाल किए जा सकते हैं
      अब rclone native रूप से supported है, इसलिए repository को local और remote दोनों जगह रखने की जरूरत नहीं, सीधे remote destination पर backup लिया जा सकता है
    • इस package और Restic में अंतर भी जानना चाहता/चाहती हूँ
      efficiency और encryption के लिहाज से ये कैसे अलग हैं, यह जानना है
    • encryption on करने पर deduplication कितनी अच्छी तरह काम करता है, यह जानना चाहता/चाहती हूँ
      rsync.net देखा था, लेकिन यह अफसोसजनक लगा कि वह reasonable तरीके की encryption support नहीं करता
  • कई सालों से rsync.net पर Borg backup इस्तेमाल कर रहा/रही हूँ और संतुष्ट हूँ
    यह force-command के जरिए ssh session में Borg को enforce करने की सुविधा support करता है, और Borg में ऐसा option है जिससे backup ssh key चोरी हो जाने पर भी deletion रोका जा सकता है
    कुल मिलाकर यह setup में बहुत ज्यादा तकलीफदेह नहीं है और एक मजबूत solution है

    • मैं ऐसा solution ढूँढ रहा/रही था/थी जिससे compromised host अपना backup delete न कर सके
      जैसा आपने कहा, command force करने पर rsync.net में यह संभव है, और rsync.net के snapshots भी गलती से गलत deletion हो जाने की स्थिति में एक protection layer बन जाते हैं