BorgBackup 2.0 adiciona suporte ao Rclone e a mais de 70 provedores de nuvem além de SSH
(borgbackup.readthedocs.io)- 2.0.0b11 beta é apenas para testar novos repositórios e não deve ser usado em produção
- O Borg 2.0 é uma breaking release incompatível com repositórios existentes; para mover arquivos de repositórios borg 1.2/1.4 para um novo repositório borg 2.0, é necessário usar
borg transfer - Antes de usar
borg transfer, faça upgrade paraborg >= 1.2.6ou para uma versão do borg com a correção deCVE-2023-36811, e siga as instruções de upgrade relacionadas ao manifest e ao archive TAM - Adicionado suporte a URL
rclone://no repositório Borg, permitindo usar Amazon S3, Backblaze B2, Ceph, Dropbox, Google Cloud Storage, Google Drive, Microsoft Azure, Microsoft OneDrive, OpenStack Swift, sftp, SMB/CIFS, WebDAV e mais de 70 produtos de armazenamento em nuvem - Suporte a operações paralelas no mesmo repositório do mesmo cliente
- Adicionado o recurso Archive series;
NAMEidentifica a série de arquivos com o mesmo nome, e um arquivo individual específico é identificado poraid:<archive hash> - Mudanças na sintaxe da linha de comando exigem ajustes em scripts e wrappers: o repositório normalmente é especificado com
BORG_REPOouborg -r <MYREPO> <COMMAND>, e o formatorepo::archivenão é mais usado - Removida a sintaxe de repositório no estilo scp; agora é necessário usar URL
ssh:// - Alguns comandos que serviam tanto para repositório quanto para arquivo foram separados ou renomeados:
borg initvirouborg repo-create, operações de repositório usamborg repo-*, e operações de arquivo usamborg create NAME,borg list ID,borg extract IDetc. --glob-archivesfoi renomeado para--match-archives, com suporte aos estilos de padrãoid:,sh:,re:, e o padrão agora é correspondência literal comid:- Com o uso de
platformdirs 3.x.x,XDG_*_HOMEnão se aplica no macOS e no Windows; no macOS, os diretórios padrão de config/cache mudaram para~/Library/Application Support/borg/ - Removidos
--remote-ratelimit,--numeric-owner,--nobsdflags,--noatime,--save-space,--bypass-lock,borg config - O uso simultâneo de
--liste--progressé proibido, exceto no caso de--log-json - Melhorias de desempenho em
borg checkecompactao remover chamadas desnecessárias derepository.list()em repositórios com alta latência, e melhoria de desempenho da maioria dos comandos nesses repositórios em relação ao b10 com cache do índice de chunks no repositório - Corrigida uma rara race condition no cache de arquivos que podia causar perda de dados
- As entradas do cache de arquivos agora mantêm
ctimeemtime, e o cache pode ser reconstruído a partir do arquivo anterior da mesma archive series - O cache de arquivos foi separado por archive series para reduzir o uso de RAM
- Agora é proibido repetir algumas opções redundantes e sem sentido, o que pode fazer scripts antigos que antes funcionavam falharem
1 comentários
Comentários do Hacker News
Uso o BorgBackup e estou bastante satisfeito
Foi daqueles casos de configurar uma vez e esquecer, e mesmo depois de 7 anos o backup com deduplicação continua rodando toda semana sem problemas
Recomendo usar junto com o borgmatic, que reduz a complexidade dos backups internos do Borg: https://github.com/borgmatic-collective/borgmatic
https://vorta.borgbase.com/
Por isso estou cada vez mais inclinado a usar rsync ou ferramentas com frontend GUI
No momento estou só usando rclone para fazer backup na minha máquina remota, mas claramente não é uma solução profissional
Pensei em adicionar Backblaze B2 como destino remoto, mas usar só rclone não parece exatamente um método moderno de backup
Tecnicamente o rclone não é uma ferramenta de backup, e embora tenha criptografia, ela é meio bruta
Na minha visão, uma ferramenta de backup de verdade deveria dividir os dados em blocos de tamanho adequado e, em vez de simplesmente criar tudo no formato de arquivo puro para a API S3/B2, agrupar diretórios em tar quando necessário para preservar links, além de lidar com práticas consolidadas há muito tempo, como deduplicação
Gostaria de saber se alguém tem alguma ferramenta para recomendar
Dei uma olhada rápida em restic e duplicati, mas para ferramentas dedicadas de backup elas não pareceram tão simples quanto eu esperaria
Não preciso de GUI, e na verdade prefiro não ter; seria bom se toda a configuração ficasse em um único arquivo de configuração, que pudesse ser salvo em backup em outro lugar junto com meus outros dados e reproduzido em uma máquina nova
Um problema maior é que já vi casos assustadores em que essas ferramentas corromperam o índice e tornaram impossível recuperar os dados, e para uma ferramenta de backup isso parece uma falha inaceitável justamente na área em que ela nunca deveria errar
Ele cumpre um papel parecido com o do restic, mas o jeito como lida com configuração pode te agradar mais
Referência extra: https://news.ycombinator.com/item?id=34154052
Já o duplicati é melhor nem tentar
Tentei usar direito várias vezes, mas sempre esbarrei num monte de bugs, o que é uma pena porque eu gosto da interface
Depois atualizei meu servidor doméstico para um hardware decente, mas continuei com o bupstash porque no geral ele funciona melhor
Só é bom ter em mente que o último release foi há 2 anos, e o autor ainda o marca como beta
Mesmo assim, parece que o padrão de qualidade do autor é mais alto que o de muitos projetos “não beta”
Comparação útil de ferramentas de backup: https://github.com/deajan/backup-bench
Recomendo seguir o guia de início rápido da documentação
Ele oferece deduplicação e criptografia e tem muito mais recursos, mas você não precisa usar o que não quiser
Uso junto com o borgmatic para montar um procedimento de backup e recuperação de desastres que reduz o risco de perda de dados
O borgbase também é um bom serviço, mas se você não precisa dos recursos extras do borgbase, pode sair mais barato usar algo como B2 aproveitando o suporte a rclone
Já usei por bastante tempo tanto em projetos pessoais quanto em trabalho pago, e minha experiência foi boa
O Borg 2 ainda está em beta, e o Kopia está numa situação parecida
O Kopia é uma ferramenta mais nova, então estou testando em um backup duplicado separado na mesma máquina, e como tenho espaço, não há muito motivo para não fazer isso
De vez em quando também executo uma verificação de integridade incluindo os dados, para poder confiar que tanto os metadados quanto os dados estão corretos
O “arquivo de configuração” na prática é um script de shell que define o ambiente, como a localização do repositório, executa o backup desejado e roda o comando de prune de acordo com a política de retenção
Uso essa configuração com sucesso há anos
Nunca fiz uma restauração completa, mas restaurar arquivos e diretórios individuais sempre funcionou bem
Fiquei curioso se você tem algum link sobre esses problemas de corrupção de índice
Nunca aconteceu comigo, mas claro que uma única amostra não quer dizer muita coisa
Faz tempo que eu queria criar um backend rclone para o Borg
Mas na v1 a abstração de backend não era boa o suficiente, então não era fácil fazer isso
Na v2, Thomas Waldmann criou uma interface de abstração decente, e o código do rclone ficou com menos de 300 linhas de Python, então deu para fazer em uma ou duas tardes
https://github.com/borgbackup/borgstore/blob/master/src/borg...
Muito interessante
Principalmente porque a popularidade do armazenamento de objetos vem aumentando e o custo vem caindo, então esse era um recurso pedido há muito tempo
O uso do Borg com armazenamento de objetos não era oficialmente suportado, mas algumas pessoas faziam isso mesmo assim
Pelo que entendo, na maioria dos casos, em vez de deixar o Borg gravar e manipular diretamente, as pessoas duplicavam o repositório e depois faziam o upload, o que era problemático porque, se o repositório original estivesse corrompido, essa corrupção também podia ser copiada
Com esse suporte, tudo deve ficar bem mais fácil e o fluxo de trabalho também mais simples
Escolher suporte a rclone em vez de um serviço específico parece uma decisão mais inteligente e mais preparada para o futuro
Posts relacionados
Borg 2.0 beta (deduplicating backup program with compression and encryption) - https://news.ycombinator.com/item?id=40990425 - julho de 2024
Borgctl – borgbackup without bash scripts - https://news.ycombinator.com/item?id=39289656 - fevereiro de 2024
BorgBackup: Deduplicating archiver with compression and encryption - https://news.ycombinator.com/item?id=34152369 - dezembro de 2022
Emborg – Front-End to Borg Backup - https://news.ycombinator.com/item?id=30035308 - janeiro de 2022
Deduplicating Archiver with Compression and Encryption - https://news.ycombinator.com/item?id=27939412 - julho de 2021
BorgBackup: Deduplicating Archiver - https://news.ycombinator.com/item?id=21642364 - novembro de 2019
Borg – Deduplicated backup with compression and authenticated encryption - https://news.ycombinator.com/item?id=13149759 - dezembro de 2016
BorgBackup (short: Borg) is a deduplicating backup program - https://news.ycombinator.com/item?id=11192209 - fevereiro de 2016
Gostaria de saber se existe alguma comparação recente entre Borg e Restic, ou algum motivo realmente convincente para migrar do Restic para o Borg
Usei Borg no passado, mas o fato de ele não poder usar backends além de arquivo local ou ssh era um problema
Migrei para o Restic quando ele começou a oferecer suporte a compressão
No meu caso de uso, fazendo backup de vários servidores para um provedor de armazenamento compatível com S3, agora Borg e Restic parecem quase equivalentes
Não quero consertar o que não está quebrado, mas também quero saber o que estou deixando de ter no Restic em comparação com o Borg
Assim o backup realmente acontece
Também passa menos a sensação de estar sempre mudando, e eu nunca quis um fluxo constante de novos recursos em uma solução de backup
Se você procura um armazenamento online de backup barato, vale saber que a assinatura Microsoft 365 Single inclui 1 TB de OneDrive
A assinatura Family dá 1 TB por pessoa
Já uso com sucesso a combinação restic + rclone há vários anos
Não é rápido, mas funciona
É difícil bater 1 TB de armazenamento com acesso por SSH por 4 euros por mês
Tenho curiosidade sobre em que momento se recomenda Borg em vez de um rsync comum para uso pessoal
Hoje faço backup de conjuntos de diretórios do meu drive para outro drive e para um serviço remoto (rsync.net) com rsync
Funciona bem, mas meu caso de uso é simples, então não tenho certeza se essa solução já é suficiente ou se estou perdendo alguma grande vantagem do Borg
Invejo a criptografia do Borg, mas a complexidade de uma nova ferramenta e o receio de talvez corromper meus dados me impedem de migrar com facilidade
Os dados a serem salvos atualmente são cerca de 5 TB, então não é um volume tão grande
No backup de e-mails, 17 backups dos últimos 6 meses ocupavam originalmente 837 GB, viram 312 GB após compressão e 19 GB após desduplicação
No Postgres, cai de 25 GB para 7 GB e depois para 900 MB
No backup de e-mails, talvez os hard links do rsync também economizassem espaço, mas não sei se chegariam a esse nível sem nenhum ajuste adicional
Ter vários snapshots é muito importante
Também vale consultar materiais como http://www.taobackup.com/
O rsync fica muito lento quando há muitos arquivos e também não lida com arquivos renomeados, então os transfere de novo
Com Borg, você pode ver todos os backups criados e voltar ao ponto desejado em qualquer snapshot anterior
Essa é uma vantagem que também vale para muitas outras soluções de backup
Em termos concretos, se você apagar um arquivo por engano e esse estado for sincronizado via rsync, não será possível recuperá-lo com esse backup
Com Borg, será possível
Gostaria de saber se existe algum motivo para usar a criptografia do Borg em vez do rclone crypt, ou o contrário
É uma ferramenta para copiar arquivos de uma máquina para outra, e nesse caso a criptografia é feita antes da cópia
É mais próximo de um rsync usado com nuvem
O Borg é outro tipo de ferramenta, voltada para backup
Ele transforma um diretório de origem em um repositório único com deduplicação, criptografia, snapshots, checksums e compressão
Ele funciona no nível de blocos de dados, não de arquivos
Também inclui comandos de gerenciamento do repositório, permitindo buscar dados, limpar ou mesclar snapshots etc.
Depois, para transferir ou sincronizar o repositório para onde você quiser, basta usar ferramentas como rsync/SSH ou rclone
Agora que o rclone é suportado nativamente, dá para fazer backup direto para o destino remoto sem precisar manter o repositório tanto localmente quanto remotamente
Gostaria de entender como eles diferem em eficiência e criptografia
Dei uma olhada no rsync.net, mas achei uma pena ele não oferecer suporte a uma forma razoável de criptografia
Uso backups do Borg no rsync.net há anos e estou satisfeito
Ele oferece suporte a forçar o Borg na sessão ssh com force-command, e o Borg tem uma opção que impede exclusões mesmo que a chave ssh de backup seja comprometida
No geral, é uma solução robusta sem que a configuração seja especialmente dolorosa
Como foi dito, isso é possível no rsync.net ao forçar comandos, e os snapshots do rsync.net também servem como uma camada extra de proteção contra exclusões acidentais