Physical Address

304 North Cardinal St.
Dorchester Center, MA 02124

Como Configurar um NAS Pessoal para Backup com OneDrive e Organizar Seus Arquivos Efetivamente

Às vezes vejo casos na internet sobre falhas em serviços de nuvem e, vivenciando isso no dia a dia, percebo que até gigantes como Microsoft e Google podem enfrentar problemas em seus datacenters. Imagine mover uma foto importante do passado para outra pasta e, de repente, por um bug, “puff”, ela some. Esse tipo de situação me gera uma grande preocupação, pois dou muito valor aos dados que possuo, especialmente às minhas fotos antigas, que guardo com carinho e adoro rever. Atualmente, conto apenas com o meu PC pessoal e o OneDrive como serviço de nuvem, que é a opção mais acessível para mim, principalmente porque consigo dividir a assinatura com um grupo fechado a cada ano.

Por Que Adotar uma Estratégia de Backup 3-2-1?

Pesquisando sobre como armazenar meus dados, documentos e fotos, encontrei um blog post que explicava a estratégia de backup 3-2-1. Ela consiste em:

  • Manter 3 cópias dos dados: a original e duas cópias de backup.
  • Usar 2 tipos diferentes de mídia: por exemplo, um HD interno e uma unidade externa, ou um servidor em nuvem e um NAS.
  • Guardar 1 cópia em um local externo: para proteção contra desastres locais, como incêndios ou inundações.

Referência: Estratégia de Backup 3-2-1 – Backblaze

Configuração do NAS com TrueNAS Scale

Dessa forma, decidi manter meu setup com o NAS que montei a partir de um PC antigo que já não estava em uso. Instalei o TrueNAS Scale (TrueNAS Scale), que é muito fácil de instalar e configurar, com dezenas de tutoriais no YouTube explicando o processo. Com ele, ganho a facilidade de snapshots, sincronização, verificação de integridade de HDs e SSDs, além da possibilidade de rodar apps Docker na minha rede local.

Embora eu tenha muito apego aos meus documentos e fotos, ainda não possuo um grande volume de dados, então optei por manter a configuração de armazenamento desta forma:

  • 1 SSD M.2 de 128 GB para o sistema do TrueNAS.
  • 1 SSD SATA de 250 GB para os aplicativos Docker e seus arquivos.
  • 2 HDs de 4 TB em pool espelhado para os dados importantes, como fotos e documentos.
  • 1 HD de 500 GB para mídias e dados temporários que não são tão importantes.

E dessa forma ficou minha organização incial do TrueNAS:

Setup Inicial TrueNas

Desafio: Organização dos Arquivos no NAS e OneDrive

Com o TrueNAS já configurado e os HDs instalados, agora vem a parte mais difícil: organizar os arquivos. Sempre tentei manter uma organização digital, mas meu setup de nuvem ainda é um caos, com pastas de backup separadas, fotos espalhadas em vários locais diferentes. Então, aproveitei para estudar a melhor forma de organizar os arquivos e manter a consistência em todos os locais – no NAS, no OneDrive e no meu PC pessoal, que são os três pontos onde os arquivos estarão armazenados.

Minha nuvem antes da organização:

Pastas desorganizadas

Benefícios de Usar Datasets Específicos

Antes de entrar no tópico de organização, é importante falar um pouco sobre os datasets do TrueNAS.

No TrueNAS, um dataset é uma unidade lógica de armazenamento criada dentro de um pool de dados. Ele permite organizar e gerenciar dados de forma eficiente no sistema de arquivos ZFS. Um dataset pode ser visto como um “subvolume” ou uma “partição” dentro do pool, com a vantagem de oferecer configurações individuais, como permissões, compressão, cotas de espaço e snapshots.

Essencialmente, ele facilita a organização e o gerenciamento de políticas de armazenamento para diferentes tipos de arquivos ou usuários dentro do mesmo pool, tornando a administração mais flexível e personalizada.

Foi aí que surgiu uma dúvida: seria melhor ter um único dataset com os dados na pasta raiz ou vários datasets com finalidades específicas? Após algumas pesquisas, decidi criar um dataset para cada tipo de dado que planejo armazenar, pois:

  • Snapshots e Backups Específicos: Com datasets separados, é possível criar snapshots e backups específicos para cada tipo de arquivo. Por exemplo, se quero manter snapshots frequentes apenas para o dataset de documentos e não para o de backups (que pode consumir muito espaço), consigo ajustar essa configuração facilmente.
  • Controle de Permissões: Datasets separados permitem definir permissões de acesso distintas para cada tipo de arquivo. Se eu quiser que apenas certos usuários acessem o dataset de backups, por exemplo, é fácil configurar isso.
  • Compressão e Desduplicação: Alguns tipos de arquivo se beneficiam mais de compressão e desduplicação do que outros. Com datasets separados, posso ativar ou desativar essas opções conforme o tipo de arquivo (por exemplo, desativar compressão para arquivos que já estão comprimidos).
  • Quota e Limites de Espaço: Definir uma quota para cada dataset ajuda a gerenciar o uso de espaço e evita que um único tipo de dado (como backups) ocupe todo o armazenamento disponível.

Técnicas para pastas desorganizadas

Depois de explorar diferentes vídeos e técnicas na internet, decidi seguir o método apresentado pelo Jeff Su neste vídeo do YouTube (link para o vídeo). Nele, ele explica que a hierarquia de pastas deve ter, no máximo, 5 subníveis. Ou seja, o nível 6 deve conter apenas arquivos, e não pastas. Cada nível pode ter de 0 a 99 pastas, organizadas por assuntos específicos.

Hierarquia de pastas
Fonte: Jeff Su em This Simple File Management System Changed My Life!

Para começar, é ideal criar uma pasta chamada “Arquivado” e mover todos os arquivos para lá. Assim, inicia-se uma “vida nova” organizacional, realocando os arquivos da pasta Arquivado para as novas pastas conforme a estrutura planejada. Para garantir a segurança, criei uma cópia compactada das áreas que pretendia organizar e a deixei armazenada no meu PC pessoal, evitando qualquer perda de dados.

Raiz do onedrive após reestruturação

Inicialmente, configurei três datasets:

  1. Backups: para armazenar backups gerais, incluindo os das aplicações Docker, snapshots dos volumes e do Home Assistant.
  2. Documentos: dedicado a documentos em geral.
  3. Mídias: para imagens e vídeos, sendo também a pasta compartilhada com o aplicativo Immich no futuro.
Raiz dos datasets do truenas

Além da técnica de subníveis, a organização das subpastas também é adaptável ao gosto pessoal. Penso em incluir pastas para itens compartilhados e uma chamada junk, para arquivos que não tenho certeza se quero descartar, mas que não podem ficar soltos pelo sistema de arquivos.

Abaixo, um pouco da minha organização no OneDrive:

Pasta principal do onedrive
Subpasta do onedrive
Subpasta espec[ifica do onedrive

Minhas pastas principais seguem essas categorias macro, e as subpastas seguem a estrutura demonstrada pelo Jeff Su.

Quanto ao padrão de nomenclatura dos arquivos, prefiro colocar a data no início, seguida do tipo e do item específico. Esse método facilita a busca e a categorização. Salvo todo tipo de documento, desde exames e consultas médicas até comprovantes de pagamento e notas fiscais, que guardo para consultar informações como data de compra, valor pago e até o prazo de garantia.

O template seria: yyyyMMdd_TIPO_ITEM

Estrutura de pastas nomeando arquivo por data

NAS como fonte de verdade e backups para o OneDrive

Agora, inverti a ordem dos locais onde salvo meus itens e fotos. Meu NAS será sempre o ponto principal de armazenamento, a “fonte da verdade”, e a partir dele farei transferências tanto para meu PC pessoal (via compartilhamento Samba SMB) quanto para o OneDrive.

O TrueNAS oferece uma ampla gama de conectores para a nuvem, como Google Drive, Dropbox, Amazon S3, Azure Blob Storage e outros. No entanto, o único conector que eu gostaria de usar foi descontinuado, pois a biblioteca Python que fazia essa sincronização não é mais mantida. Para minha sorte, existe uma excelente ferramenta chamada RClone. O RClone é uma ferramenta de linha de comando que facilita a sincronização, cópia e gerenciamento de arquivos entre sistemas locais e múltiplos serviços de armazenamento em nuvem, com uma documentação completa e detalhada, o que torna o processo bem tranquilo! Para o OneDrive, segui a documentação disponível em: RClone para OneDrive.

Como o RClone já vem instalado no TrueNAS, basta acessar o shell e fazer a configuração em System → Shell.

Depois de configurar, é fácil testar a sincronização. Execute o comando:

  • rclone copy: copia os arquivos locais para o OneDrive.
  • /mnt/storage: a pasta local do meu pool que contém as pastas principais (documents, images e backups, mostradas anteriormente).
  • onedrive:/: onedrive é o nome da configuração do RClone, e / indica que quero enviar para a raiz do meu OneDrive.
  • –checksum: verifica a integridade dos arquivos para confirmar a transferência correta.
  • -P: exibe o progresso, útil para testes e execução manual; ao configurar o cronjob, esse parâmetro pode ser omitido.
rclone copy /mnt/storage onedrive:/ --checksum -P
Terminal do truenas executando o comando rclone copy

Após confirmar que tudo está funcionando, vá até System → Advanced Settings → Cron Jobs para configurar a sincronização automática. Programei a sincronização para acontecer diariamente, em dois horários distintos: às 13h e às 20h, para evitar conflito com outros jobs de madrugada, como snapshots e verificações de integridade dos HDs e SSDs.

Minha configuração ficou assim:

Configuração de cronjob para rclone sync

A maneira mais fácil de testar se funcionou é adicionando um novo arquivo em alguma das pastas e verificando se ele aparece no OneDrive. Após configurar o job, ele aparecerá na lista com um botão de execução (run) para testes.

Cron job configurado para o rclonesync

Com isso, mantenho o NAS na rede local como a fonte principal dos dados, com backups periódicos sincronizados com o OneDrive.

Conclusão

Os próximos passos agora são reorganizar toda a minha pasta “Arquivado”, movendo os arquivos para as pastas e subpastas adequadas conforme suas categorias. Além disso, pretendo configurar o Immich, um aplicativo open source que substitui o Google Fotos e o OneDrive para categorizar, pesquisar e visualizar fotos armazenadas. Com o Immich, também poderei sincronizar automaticamente as fotos com o NAS, que será minha fonte principal. A partir dele, farei sincronizações para outros locais usando tarefas recorrentes, como no exemplo do RClone.

Um comentário

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *