BorgBackup 2.0, Rclone सपोर्ट – SSH के अलावा 70+ cloud providers के लिए अतिरिक्त सपोर्ट
(borgbackup.readthedocs.io)- 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-36811fix लागू किए हुए 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::archiveformat अब उपयोग नहीं होता - scp-style repository syntax हटा दी गई है; अब
ssh://URL का उपयोग करना होगा - कुछ commands जो repository/archive दोनों के लिए थीं, उन्हें अलग या rename किया गया है:
borg initअबborg repo-createहै, repository operationsborg repo-*से, और archive operationsborg create NAME,borg list ID,borg extract IDआदि से किए जाते हैं --glob-archivesका नाम बदलकर--match-archivesकर दिया गया है, इसमेंid:,sh:,re:pattern styles का सपोर्ट है और defaultid:है, जो 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-jsonexception को छोड़कर, निषिद्ध है- 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 टिप्पणियां
Hacker News की टिप्पणियाँ
मैं BorgBackup इस्तेमाल कर रहा हूँ और काफी संतुष्ट हूँ
इसे एक बार सेट करके भूल जाने जैसा था, और 7 साल बाद भी deduplicated backup हर हफ्ते बिना दिक्कत चल रहा है
Borg backup की अंदरूनी जटिलता कम करने वाले borgmatic के साथ इसे इस्तेमाल करने की सलाह दूँगा: https://github.com/borgmatic-collective/borgmatic
https://vorta.borgbase.com/
इसलिए मैं धीरे-धीरे rsync या GUI frontend वाले tools की तरफ झुक रहा हूँ
अभी मैं सिर्फ 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 है जहाँ किसी भी हालत में ऐसा नहीं होना चाहिए, इसलिए यह बात समझना मुश्किल है
यह restic जैसी ही भूमिका निभाता है, लेकिन इसका configuration handling आपको ज्यादा पसंद आ सकता है
अतिरिक्त संदर्भ: https://news.ycombinator.com/item?id=34154052
duplicati को आजमाने की जरूरत नहीं है
मैंने कई बार इसे ठीक से इस्तेमाल करने की कोशिश की, लेकिन यह हमेशा bugs से भरा और नाकाम रहा; interface पसंद था, इसलिए और भी अफसोस हुआ
बाद में 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
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 अच्छा रहा है
Borg 2 अभी beta है और Kopia भी लगभग उसी स्थिति में है
Kopia नया tool है, इसलिए उसी machine पर अलग redundant backup में test कर रहा हूँ; जगह है तो न करने की कोई वजह नहीं
कभी-कभी data सहित integrity check चलाता हूँ, ताकि metadata और data दोनों ठीक हैं इस पर भरोसा हो सके
“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 कर रहा हूँ
तभी backups सच में होते हैं
यह लगातार बदलता हुआ भी कम लगता है, और backup solution में मैंने कभी लगातार नए features की धारा नहीं चाही
अगर सस्ता online backup storage ढूँढ रहे हैं, तो यह जान लेना अच्छा है कि Microsoft 365 Single subscription में OneDrive 1TB शामिल होता है
Family subscription में प्रति व्यक्ति 1TB मिलता है
कई सालों से restic + rclone combination के साथ सफलतापूर्वक इस्तेमाल कर रहा हूँ
तेज़ नहीं है, लेकिन काम करता है
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 है, बहुत ज़्यादा नहीं
mail backup में पिछले 6 महीनों के 17 backups मूल रूप से 837GB थे, compression के बाद 312GB और deduplication के बाद 19GB हो गए
Postgres भी 25GB से 7GB और फिर 900MB तक घट गया
mail backup में rsync के hard links से भी space बच सकती है, लेकिन अलग से tweaking किए बिना यह इतना छोटा होगा या नहीं, पता नहीं
कई snapshots रखना बहुत ज़रूरी है
http://www.taobackup.com/ जैसी सामग्री भी देखने लायक है
files बहुत हों तो rsync बहुत slow हो जाता है, और renamed files को भी handle नहीं कर पाता, इसलिए उन्हें फिर से transfer करता है
Borg इस्तेमाल करने पर बनाए गए सभी backups देख सकते हैं, और पुराने snapshot में से अपनी पसंद के समय पर वापस जा सकते हैं
यह फायदा कई backup solutions में भी मिलता है
खास तौर पर, अगर गलती से file delete हो गई और वही state rsync हो गई, तो उस backup से file recover नहीं कर सकते
Borg में यह संभव है
सोच रहा/रही हूँ कि Borg encryption को rclone crypt के बजाय इस्तेमाल करने की कोई वजह है या उल्टा
यह एक मशीन से दूसरी मशीन पर 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 लिया जा सकता है
efficiency और encryption के लिहाज से ये कैसे अलग हैं, यह जानना है
rsync.net देखा था, लेकिन यह अफसोसजनक लगा कि वह reasonable तरीके की encryption support नहीं करता
कई सालों से rsync.net पर Borg backup इस्तेमाल कर रहा/रही हूँ और संतुष्ट हूँ
यह force-command के जरिए ssh session में Borg को enforce करने की सुविधा support करता है, और Borg में ऐसा option है जिससे backup ssh key चोरी हो जाने पर भी deletion रोका जा सकता है
कुल मिलाकर यह setup में बहुत ज्यादा तकलीफदेह नहीं है और एक मजबूत solution है
जैसा आपने कहा, command force करने पर rsync.net में यह संभव है, और rsync.net के snapshots भी गलती से गलत deletion हो जाने की स्थिति में एक protection layer बन जाते हैं