Utilizando unidade externa para armazenamento local de backup e mídia em instalação HASSIO

Este tutorial é fruto de pesquisas e discussões em conjunto com @Walber , que sempre contribui enormemente na busca de soluções neste fórum.

Quem utiliza a instalação HASSIO enfrenta as limitação de utilização do hardware, mas possui o benefício da facilidade de manutenção e gestão do Home Assistant.

A grande maioria de nós, usuários do HA, utiliza como ferramenta de backup o addon de integração com o Google Drive. Utilizamos a própria unidade de armazenamento principal para armazenar os arquivos de mídia de câmeras, Frigate e etc.

A partir da versão 2023.6, o HA passou a contar com a opção de utilizar armazenamento de dados na rede para backup, mídia e compartilhamento, tornando a tarefa de gravar esses dados de forma local mais simples e aliviando o armazenamendo próprio do HA. Porém, nem todos possuem um servidor adicional disponível 24x7. Como forma de mostrar que é possível utilizar uma ou mais unidades de armazenamento adicionais ao hardware do HA para realizar o papel de servidor local, vamos detalhar o passo a passo esse tutorial.

  1. Você precisará de uma unidade de armazenamento, pode ser um pen drive usb até um NVME. Pode ser utilizado um adaptador USB ou a entrada disponível na placa mãe do hardware. Esta unidade de armazenamento deve ser formata em EXT4. Se você utiliza Windows, utilize algum programa como o [Disk Genius] (Compare Different Editions of DiskGenius) . É primordial que você defina um nome (label) ao executar a formatação. Você utilizará este nome na etapa seguinte. Com o disco formatado, você já pode conectá-lo ao hardware do HA.

  2. Instale o addon Samba NAS. Para conseguir instalá-lo é necessário adicionar o repositório https://github.com/dianlight/hassio-addons na loja de addons. O Samba NAS será o responsável por criar o compartilhamento na sua rede. Não vou detalhar as possibilidades de configuração deste addon. Sua documentção está disponível para uma utilização mais abrangente. Para este tutorial, vamos ao básico da configuração necessária para criar a unidade de rede para o novo “disco” e demais pastas do sistema. Nos ajustes do Samba NAS, defina:
    2.1) Usurário (será usado para garantir a segurança da conexão na rede);
    2.2) Senha (será usado para garantir a segurança da conexão na rede);
    2.3) MOREDISKS com o nome (Label) que você atribuiu na formatação da unidade de armazenamento que acabou de conectar.
    2.4) Salve as alterações:
    2.5) Retorne ao menu Informação;
    2.6) Marque a opção Iniciar com o sistema;
    2.7) Desmarque a opção Modo de Proteção;
    2.8) Inicie o addon.
    Obs.: Se você já utiliza Samba Share, pare seu serviço e mantenha-o desligado. O uso simultâneo dos dois pode causar conflito e a unidade adicional pode não ser exibida na rede.

Neste momento, se você digitar no windows explorer \ip_do_ha, você deverá conseguir visualizar as pastas do HA e uma pasta com o nome do disco adicional.

  1. Com o armazenamento externo disponível, criaremos a configuração para o HA reconhecer a unidade. Para isso, organize seus diretórios como desejar. Como exemplo crie uma pasta dentro do armazenamento externo para backup, uma para mídia, etc. A organização é por sua conta.
    image

  2. Com as pastas criadas, adicione o armazenamento de rede no HA (Configurações/Sistema/Armazenamento/Adicionar Armazenamento de Rede). Defina:
    4.1) Nome para o armazenamento;
    4.2) Tipo de armazenamento;
    4.3) Servidor = (IP do HA)
    4.4) Protocolo = Samba/Windows
    4.5) Compartilhamento Remoto = Caminho da unidade ou pasta que deseja referenciar. Aqui um dica importante. Se deseja especificar uma pasta ou subpasta específica da unidade de armazenamento externa, preencha assim: “label/pasta/subpasta”
    4.6) Nome do usuário = nome do usuário definido no ajuste do Samba NAS
    4.7) Senha = senha do usuário definido no ajuste do Samba NAS
    4.8) Clique em conectar.

Neste momento, você já consegue visualizar o(s) armazenamento(s) de rede e já podem ser utilizados no HA. Para armazenamentos de mídia, eles serão exibidos dentro do navegador de mídia/minhas mídias. Para armazenamentos de backup, eles serão exibidos como opção na configuração do serviço de criação de backup.

As aplicações deste recurso são variadas. Pode ser usada para compartilhar o disco em sua rede, para direcionar a gravação dos arquivos em rede do Frigate, para gravar dados via Addon FTP.

Mesmo a pasta de rede para mídia sendo exibida dentro da pasta padrão de mídia do HA, ela não é incluída no serviço de backup completo. O que auxilia para termos um tamanho de backup menor.

Por segurança não desabilitei o addon do google drive. Assim manterei um cópia do backup local em um disco diferente o HA e uma cópia no google drive. Para o addon google, desativei apenas a criação do backup por ele e passei a criá-lo por automação, indicando a nova pasta.

Boa diversão.

3 Likes

isso ainda funciona em 2024 ?l

Acredito que sim. Chegou a seguir o passo a passo?

Sim, mais não encontro o samba nas nós addons nativos

Atualizei o passo dois com o link do repositório.
https://github.com/dianlight/hassio-addons

É necessário adicionar na lista de repositórios da loja.

1 Like

eu consegui colocar armazenamento, obrigado!, estou apanhando para colocoar o frigate para armazenar em rede, poderia deixar mais claro para leigos como eu sobre o tipo de configuração para funcionar legal.
me parece que tem um bug para remontar o disco no caso de falha ou reiniciar.

Could not unmount frigate due to: Transaction for mnt-data-supervisor-mounts-frigate.mount/stop is destructive (mnt-data-supervisor-mounts-frigate.mount has ‘start’ job queued, but ‘stop’ is included in transaction).

Você precisa parar o Frigate e apagar a pasta /media/frigate para conseguir criar o armazenamento de rede com o mesmo nome.

Se quiser manter o histórico, renomei a pasta frigate atual, e após criar o mapeamento de rede novo você move os videos. Mas observe a orientação da documentação do frigate.

eu tentei dessa forma, mais sem sucesso. apaga a pasta do media/frigate e no nas1 eu criei o media/frigate, porem sem sucesso.

na hora de criar o amazenamento para frigate, é tipo mida ? e tipo samba/windows /?

isso, media e samba.

2 Likes

Atualizando !

Consegui fazer rodar no meu HA, pode ser o problema de muitos então vou deixar a maneira que funcionou para minha confihuração.

Proxmox -
Maquina VM HASS

disco USB externo

usei o DiskGenius mencionando acima para formatar o disco
a diferença é que em Label voce deve colocar o nome do disco como “frigate”
e formato ext4.
depois disso só seguir os passos

  1. Pare o addon Frigate

  2. Configure o Samba Nas Não inicie ele ainda!

  3. Adicione o label frigate conforme as indicações do amigo aqui no inicio do topico

  4. Conecte o Disco USB ou hd externo a sua máquina. Não esqueça de ir na ui do proxmox e dedicar a entrada USB para a vm do hassio

  5. Inicie o Samba Nas

  6. Navegue no HA, vá em Configurações> sistema > armazenamento e adicione o disco frigate no formato midia, samba nas/windows adicionado ip do HA e pronto.

  7. abra o CMD do windos e coloque \ \ ip e de enter, ira abrir as pastas do HA, navegue até media/frigate
    apague o conteudo, atenção, se deseja salvar os arquivos, apenas renomei a pasta frigate pata frigate_temp por exemplo.

abra com seu addon de edição de texto o arquivo friagte.yaml ou frigate.yml, verifique qual vc usa.
modifique

  database:
    #path: /media/frigate/frigate.db # usado para usar disco do Hassio
    path: /config/frigate.db   # usado no amarzenamento externo usb via usando samba nas

essa parte aqui explica bem como guarda os arquivos se desejar.

feito isso basta iniciar o addon frigate
ir em storage e verificar se o disco esta lá.

Saudaçoes ao meu Amigo @andregoncalvespires

1 Like

Eu segui o passo a passo. Instalei o Samba Nas. Consegui criar o compartilhamento de rede e alterei o arquivo .yml do frigate, mas continua gravando no disco principal e não no disco externo (rede).

Alguma dica?

O mapeamento de rede precisa ter no nome frigate. Você excluiu a pasta frigate da pasta media e criou o mapeamento com o nome correto?

1 Like

Oi, Andre.

Refiz aqui e deu certo. Obrigado.

2 Likes

@andregoncalvespires sabe me dizer se tem algum comando shell para poder apagar os arquivos do armazenamente ou forma de gerenciar o disco externo pelo HA, não estou em casa e preciso limpar o disco

Tem sim.

delete_old_recorder: 'find /media/SUA_PASTA* -mtime +7 -exec rm {} \;'

delete_empty_folders_share: 'find /media/SUA_PASTA -type d -empty -print0 -exec rmdir -v "{}" \;'

Ajuste o número de dias que quer manter. Ai está 7.

O primeiro comando apaga os arquivos, o segundo apaga as pastas vazias. Portando precisa executar nessa sequência, com intervalo de alguns minutos.

Mas se você está usando frigate, utilize ele para guardar apenas o número de dias suficientes no parâmetro retain.

record:
  enabled: True
  retain:
    days: 5
    mode: all
  events: 
    retain:
      default: 5
      mode: motion
  sync_recordings: True

snapshots:
  enabled: True
  timestamp: False
  bounding_box: True
  retain:
    default: 5
1 Like

Andre,

Bom dia.

Estou enfrentando um problema com reinício do servidor (já identifiquei a causa - elétrica - mas ainda não consegui resolver).

A pergunta é, quando o servidor reinicia depois de perder energia, ocorre uma falha no dispositivo de armazenamento externo e o HD precisa ser “recarregado” manualmente. Você saberia dizer se tem como fazer isso (recarregar o HD) via automação (depois do reinicio do servidor)?

Obrigado.

Daniel

Fala amigo. Desconheço automação para isso. Mas como estamos falando de inicialização de hardware, teoricamente, alguém está acompanhando e pode verificar a situação

Só acontece quando desliga por falta de energia?
Como vc carrega manualmente o hd?
Como esse método não é oficial pode ser difícil achar uma solução.
Caso um reinicio do home assistant ou do host resolva o problema, vc pode fazer uma automação para detectar o desligamento incorreto e reiniciar o ha ou host novamente.

Surgiu uma outra opção ontem no forum gringo:

Não testado rsrsrs

Fala Welber.

Acontece quando o servidor desliga por falha de energia ou quando reiniciamos o sistema usando a opção “reiniciar sistema” nas opções avançadas abaixo. Nesses dois casos o HD externo do SAMBA NAS não carrega corretamente.

Não acontece quando apenas reiniciamos o HA.

Meu HD Externo está configurado conforme o tutorial que vc e Andre fizeram. Por sinal obrigado aos dois. Foi de grande ajuda.

Quando o HD cai (ou não carrega), o Frigate cai (ou não entra) logo na sequencia. Quando eu percebo, eu “recarrego manualmente” o HD pela opção abaixo e depois ligo o Frigate.

Pra você entender o contexto. Meu sistema estava ligado somente a um inversor solar off grid com bateria LIFEPO4, ocorre que eu resolvi aproveitar um gerador diesel que existe no local para alimentar a entrada de rede do inversor e carregar a bateria logo cedo da manha (qdo o gerador liga). Até aí tudo bem… o problema é que quando o gerador desliga no final do dia o inversor nao esta passando a carga pra bateria com tempo rápido o suficiente pro servidor não desligar (embora o tempo de resposta do inversor seja 10ms). Engraçado que esse mesmo esquema com inversor conectado a gerador roda normal sem nenhum problema em outros dois locais iguaizinhos. Ainda vou investigar se é alguma parâmetro mal configurado nesse inversor.

Como eu passei a perceber que o Frigate ficava fora do ar de vez em quando, eu criei uma automação pra notificar o status do Frigate e outra pra notificar sempre que o percentual de uso da CPU ficar abaixo de 20%).

Veja o historico abaixo. A tensao da rede (é do gerador). Compare com o status do Frigate e com o status de Ultima inicialização. Foi assim que descobri que o servidor estava era desligando qdo o gerador desligava…

Nesse dia mostrado no histórico qdo o gerador desligou o servidor caiu (bateria não assumiu carga em até 10ms como deveria). Eu estava de olho e reiniciei tudo, recarreguei o HD Externo e ficou ok. Mas ligaram o gerador novamente depois de uma hora e qdo desligaram o sistema caiu novamente… só percebi horas depois…

Quando recarrego o HD aparece essa mensagem:

Valeu

O segundo desligamento eu não percebi… servidor voltou sozinho, mas o frigate nao (pq HD estava fora).