// // Chicletes para o Cérebro: Open Media Vault
Mostrando postagens com marcador Open Media Vault. Mostrar todas as postagens
Mostrando postagens com marcador Open Media Vault. Mostrar todas as postagens

quarta-feira, 22 de junho de 2022

Erro no "OMV6 / CCC / Sei lá onde" ao copiar uma pasta / arquivo

Pessoal,


Algo estranho aconteceu agora.

Fiz o download de um arquivo e mandei-o da pasta de downloads para uma pasta específica no primeiro disco de back-ups. Entao fui ao CCC e mandei copiar essa pasta para o segundo disco de back-up.

Não sei o porquê, mas o CCC apenas criou a pasta, não copiou os arquivos de dentro da pasta e adicionou restrições de acesso a esta pasta específica. Tentei rodar o backup de novo e começou a dar erro especificamente nesta pasta. Tentei apagar a pasta no segundo disco e a permissão foi negada. E no primeiro disco, tudo normal.

Atualizei as VMs, o Proxmox, reiniciei tudo (inclusive o Mac) e nada. Mesmo erro.

Então apelei e parti pra força bruta.

Fui no shell da VM do OMV, fui em "/srv" que é onde estão montados os discos do OMV. Lá fui no disco, na pasta e excluí a pasta defeituosa com "rmdir <pasta>". Como root, é claro.

Pronto. Resolvido.

domingo, 23 de janeiro de 2022

OMV5 - Métricas de funcionamento do servidor com Pode Exporter, Prometheus e Grafana

 Pessoal,

O OpenMediaVault, pelo menos a versão 5, contem uma apresentação das métricas de funcionamento bem simples e feias, pelo menos para o meu gosto.

Para acessá-las, vá em Diagnostics -> System Information -> Performance statistics e escolha a métrica desejada: uso da CPU, dos discos, médias de trabalho, uso da memória e da rede e tempo de funcionamento.

Vejam alguns exemplos:


Não que sejam imprestáveis as métricas, mas eu acho que poderiam ser mais completas e com uma apresentação melhor. O OMV6 parece que terá uma melhora significativa (e necessária) na parte visual. Os betas mostram que será algo como a figura abaixo:


Bem melhor, né? Mas ainda vai demorar um tempo pra versão estável do OMV6 sair. Então, até lá, vamos ter que melhorar isso no OMV5.

Bom, dando uma pesquisada, encontrei uma solução interessante: são 3 conteineres do Docker que juntos coletam dados e produzem uma apresentação das métricas bem configurável e bem apresentável. A sequência é essa aqui:

1 - Instalar o Prometheus Node Exporter, responsável por coletar as métricas;

2 - Instalar o Prometheus. Ele coleta as métricas de alvos configurados (no caso, pelo Node Exporter) em determinados intervalos e exibe os resultados;

3 - Instalar o Grafana, que utilizará os dados do Prometheus e produzirá apresentações mais completas e bonitas.

Para realizar estas instalações, segui algumas dicas desse vídeo aqui. Caso precise dele no futuro, vou deixar ele disponibilizado aqui no blog, logo abaixo:


O autor do vídeo também tem um blog onde coloca algumas instruções para a instalação (veja aqui). Tentei fazer como ele orientou, mas tive que dar algumas adaptadas. Diga-se de passagem, os conteúdos dele no YT são muito bons! Vale a pena assistir e seguir o canal dele (aqui).

A primeira coisa a se fazer é criar um arquivo de configuração para o Prometheus (prometheus.yml). Primeira coisa a ser dita: esse arquivo deve estar no disco onde está armazenado o OMV (ou seja, no meu caso, o /sda). Assim, criei o arquivo dentro desta pasta:

# /srv/Configs/Prometheus/prometheus.yml

Para criar o arquivo, criei todo o caminho até o arquivo (/srv/Config/Prometheus) e lá dentro criei um arquivo vazio chamado "prometheus.yml" com o nano:

# /srv/Configs/Prometheus# nano prometheus.yml

Dentro do arquivo coloquei o seguinte texto:

global:

  scrape_interval: 5s

  external_labels:

    monitor: 'node'

scrape_configs:

  - job_name: 'prometheus'

    static_configs:

      - targets: ['192.168.1.3:9090'] ## IP Address do localhost. Direcione a porta para o seu contêiner

  - job_name: 'node-exporter'

    static_configs:

      - targets: ['192.168.1.3:9100'] ## IP Address do localhost

Interessante observar que os alvos (targets) devem ser o IP do seu servidor e você deve certificar-se que as portas escolhidas não estão sendo utilizadas por nenhum contêiner do Docker.

Agora vamos instalar o Prometheus Node Exporter.

Eu até tentei criar um arquivo para o Docker Compose, mas só foi funcionar mesmo com a boa e velha linha de comando:

# docker run -d  --net="host"  --pid="host"  -v "/:/host:ro,rslave"  quay.io/prometheus/node-exporter:latest  --path.rootfs=/host


Esta linha é, de um modo mais apresentável, isso aqui embaixo:
docker run -d \
  --net="host" \
  --pid="host" \
  -v "/:/host:ro,rslave" \
  quay.io/prometheus/node-exporter:latest \
  --path.rootfs=/host
Enfim, em poucos segundos ele instala e tudo está pronto. Um detalhe: se você for ao Portainer, verá que surgiu um contêiner com um nome estranho (o meu apareceu "unruffled_boyd", mas logo na frente do nome já aparece o nome da imagem (quay.io/prometheus/node-exporter:latest). Como tenho TOC, parei o contêiner e acrescentei o nome "node_exporter" e mandei funcionar novamente.

Para certificar-se que tudo está certo,  ao você ir na página que configurou para o Node Exporter lá no prometheus.yml, você deve encontrar isso aqui:


Ao clicar ali no Metrics, deve aparecer isso aqui:


Se apareceu uma extensa lista de coisas, então você está no caminho certo.

Agora vamos instalar o Prometheus. Pra isso, criei esse arquivo aqui no Docker Compose:


---

version: "2.1"

services:

   prometheus:

         image: prom/prometheus:latest

         container_name: prometheus

         ports:

             - '9090:9090' #modifique as portas caso necessário

         volumes:

             -'/srv/Configs/Prometheus/prometheus.yml:/etc/prometheus/prometheus.yml' #coloque o caminho da sua instalação

         restart: unless-stopped



Bom, se tudo deu certo aí, você conseguirá ver isso aqui acessando o endereço do seu servidor pela porta que configuramos aqui neste contêiner (no meu caso, 9090):


Pronto, essa é a página para configuração do Prometheus. Outra verificação importante é ir em Status -> Service Discovery:


E agora deveremos ver isso aqui:


Ou seja, nossos dois serviços instalados (o Node Exporter e o Prometheus) estão ativos e foram detectados.

Caso você seja masoquista e goste de usar a linha de comandos ao invés do Docker Compose, o comando para instalar o Prometheus é esse aqui (não tem que saltar linha, ok? é apenas a quebra automática do texto):

# docker run -d --name prometheus -p 9090:9090 -v /srv/Configs/Prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus:latest


O Prometheus, até onde percebi, não é nada simples para configurar. Para isso, usaremos o Grafana!

O Grafana é bem fácil também de instalar. O você usa a linha de comando com:

# docker run -d --name=grafana -p 3000:3000 grafana/grafana

Ou usa o Docker Compose com:


---

version: "2.1"

services:

   grafana:

     image: grafana/grafana:latest

     container_name: grafana

     ports:

       - 3000:3000 #modifique o 'primeiro' 3000 de acordo com sua necessidade

     restart: unless-stopped



Vá no endereço do seu servidor e digite a porta que você configurou (no meu caso: 192.168.1.3:3000) e você deverá encontrar isso:


Parabéns! Deu tudo certo!

Para configurar o Grafana, use admin como username e senha (e troque por uma senha forte depois). Na tela principal, clique em "Data Sources" e escolha "Prometheus". Em URL, digite o endereço do Prometheus com a porta escolhida (no meu caso: http://192.168.1.3:9090) e, no final da página, clique em "Save and Test".

Agora vá para aqui e escolha o dashboard que você quer usar. São milhares de opções, mas lembre-se de usar o filtro: Prometheus em Data Sources e Node Exporter em Collector Types. Após escolher o layout, anote o número que aparece à direita da tela ("Get This Dashboard"), volte ao Grafana, clique no "+" que está à esquerda da tela ("Create") e depois em "Import" e digite o número do dashboard que você escolheu.

Pronto, agora você tem um dashboard apresentável!




Mais um detalhe. Eu tenho 4 servidores rodando: um com Proxmox, um com um Ubuntu Server para diversas coisas (rodando em VM), um com o OMV (rodando também em VM) e o Raspberry Pi. Neste Dashboard, consigo ver as métricas dos 4 ao mesmo tempo. Para isso, faça o seguinte:
 
1 - instale o Node Exporter em cada um dos servidores usando o mesmo comando já comentado acima:

# docker run -d  --net="host"  --pid="host"  -v "/:/host:ro,rslave"  quay.io/prometheus/node-exporter:latest  --path.rootfs=/host

2 - no servidor onde ficará o Prometheus (no meu caso, o 192.168.1.3), naquele arquivo que criamos (prometheus.yml), vamos acrescentar os endereços dos servidores com Node Exporter instalado. Ficará assim:

global:

  scrape_interval: 5s

  external_labels:

    monitor: 'node'

scrape_configs:

  - job_name: 'prometheus'

    static_configs:

      - targets: ['192.168.1.3:9090'] ## IP Address do localhost. Direcione a porta para o seu contêiner

  - job_name: 'node-exporter'

    static_configs:

      - targets: ['192.168.1.3:9100','192.168.1.44:9100','192.18.1.2:9100','192.168.1.22:9100'] ## IP Address do localhost

3 - Reinicie todos os conteineres (Prometheus e Grafana). Talvez seja necessário apagar o Dashboard anterior e refazê-lo (ao refazer, citaremos apenas o ip de onde está instalado o Prometheus, ou seja, 192.168.1.3:9090). Pronto!

Talvez seja necessário instalar o Docker em algum dos seus servidores. Para instalar, siga as instruções do site do Docker.

Depois de tudo pronto, ficou assim:


Pronto!

terça-feira, 18 de janeiro de 2022

Erro total no OMV - Perdi todos os meus backups?

 Pessoal,

O caos se instalou aqui no meu NAS.


Os HDs, TODOS ELES! estão dando pau!!


Os discos sumiram do OMV, apesar de fisicamente conectados.

Num momento de desespero, eu já estava começando a pensar se valia a pena retornar para o TrueNAS, arriscar o XPEnology ou tentar o UnRaid. Dando uma procurada (veja aqui um resumo dos principais sistemas para NAS), até fiquei conhecendo o XigmaNAS (antigo NAS4Free, um fork do FreeNAS).

Até cheguei a começar esse post falando que iria apagar o OMV para nunca mais usar e por aí vai.

Antes de surtar completamente fui dar uma olhada mais cuidadosa nos discos e notei que o disco defeituoso que havia comentado anteriormente neste post estava conectado ao computador... Acho que fui tentar ver se realmente tinha dado pau e esqueci de desconectar. 😒

Ou seja, a porcaria ficou conectada e começou a travar todo o acesso do Proxmox, OMV e cópias. Foi só desconectar o maldito HD, desligar as VMs, reiniciar o PVE e as VMs e pronto, tudo voltou ao normal!

quinta-feira, 13 de janeiro de 2022

Disco com erro no OMV5 / Proxmox

 Pessoal,

Há alguns dias comecei a ter problemas com os backups pelo CCC. Comecei a receber a seguinte mensagem de erro:


Fui dar uma procurada no Google e encontrei que pode ser que o CCC não conseguiu certificar-se que o disco utilizado para destino (JBC-NAS) é o mesmo disco que eu já estava usando para fazer backup. Mas pode ser, na pior das hipóteses, erro no disco de destino (o JBC-NAS, no caso).

Fiz as alterações sugeridas pelo criador do CCC (veja aqui) e... nada.

Outro erro que também aparece é esse aqui:


Agora erro com permissões. Todos esses erros relacionados no mesmo disco, esse JBC-NAS.

Às vezes acontece do nó inteiro cair:


Enfim, algo de ruim está acontecendo. E a impressão que eu tenho é que esse disco está zebrado.

Esse é um WD My Passport de 04TB. Ele estava em RAID 1 com um Samsung de 04TB quando eu usava o TrueNAS. O TrueNAS falava que um dos discos do array estava com problema e eu, não me lembro porque, achei que era o Samsung (que é bem mais velho que esse WD).

Enfim, esse problema está acontecendo há alguns dias. Aí fui tentar alterar as permissões no OMV e começou a aparecer esse erro aqui:


A causa? Erro no JBC-NAS. Repare nesse erro aí: "A estrutura necessita de limpeza chown".

E agora, com a última travada, liguei o server no monitor e apareceu isso aqui para justificar o travamento do Proxmox:


Confirmado: erro no dev/sde. Esse sede é o JBC-NAS.

Vou ter que substituir esse disco pelo Samsung 04TB e refazer os backups que vão para ele (e o CCC provavelmente vai substituir os backups que saem dele) :-/

Pelo Shell do PVE, tentei rebootar o sistema, mas travou bonito nessa tela aí de cima. Tirei o disco do Server e aí ele conseguiu reiniciar. Engasgou um pouco no começo mas foi em frente. E aí apareceu isso:


Repare que o WD-Pass-04TB (o nosso dev/sde ou JBC-NAS) está interrogado e o S-04TB (o Samsung) também está. O primeiro porque o PVE não encontrou (claro, está desconectado). O segundo porque o PVC não sabe que disco é esse. Vamos formatar e iniciar esse disco e ver o que fazer.

* Aprender a fazer a limonada com os limões que a vida dá pra gente: se realmente der pau nesse disco, vou aproveitar que irei refazer os backups e vou separar as pastas dos arquivos de mídia (filmes, séries, programas de TV, etc) para organizar o Bazarr, o Sonarr e o Radarr, além do Plex.

Bom, tentei reiniciar o OMV e deu esse erro aqui:


Então fiz o seguinte: recoloquei o disco e reiniciei o OMV. Aí vou tirar esse disco. Outra coisa interessante que reparei: esse disco nunca é montado automaticamente no OMV...


Os outros são todos montados automaticamente. Não sei o porque, mas deve ser consequência de algum erro que ele já descobriu e ainda não tinha me contado 😂😂

Bom, antes de apelar para apagar o disco, vou tentar uma última coisa: repara o disco com o fsck usando esses comandos aqui:

Sudo umount /dev/sdd1

Sudo fsck.ext4 /dev/sdd1

Eu sei que é /dev/sdd1 porque o OMV mostrou isso pra mim, veja a figura acima. O fsck vai sugerir algumas correções. Aceitei todas até porque a outra opção é persistir com o erro e o erro não tá deixando o negócio funcionar.



Após vários minutos e centenas de erros, remontei o disco no OMV e fui direto para tentar o backup no CCC, uma vez que o principal objetivo do meu NAS é esse. Ao final do backup do CCC, os erros continuaram :(

Esses erros começaram após uma tentativa de apagar uns arquivos nesse disco que deu um monte de erro. Estava considerando um erro "lógico" e não "físico", só que o histórico desse HD não é dos melhores (lembram dos erros no TrueNAS?). Vou ter que trocar o disco mesmo :(

Colocar o disco no OMV já foi falado aqui e aqui. Nada de novo nessa parte.

Agora é refazer os backups para esse disco novo. 😫😫😫

terça-feira, 21 de dezembro de 2021

Atualização do NAS - de novo pro OMV5

 Pessoal,

Acabei voltando meu NAS pro Open Media Vault.

A principal razão foi a paranóia que eu tive de dar um pau e eu não conseguir ler os arquivos dos discos, uma vez que o formato do TrueNAS é o ZFS e ele não é nativo nem no Mac, nem no Linux e nem no Windows.

O OMV, por outro lado, permite que eu escolha o formato de gravação. No caso, escolhi o EXT4, nativo no Linux e que pode ser acessível no Mac e Windows com pouco esforço.

Claro que o ZFS tem uma série de vantagens, só que a minha rede é só aqui pra casa, só pra mim e já com bastante redundância.

Outra coisa é a complexidade das configurações do TrueNAS. Eu, que não tenho formação em redes nem servers, tenho dificuldades para algumas configurações. O OMV, por outro lado, tem tudo simplificado. 

Óbvio que o OMV é mais "limitado" que o TrueNAS, mas a impressão que eu fiquei é a seguinte: quer algo amador, pra ficar em casa? Vá de OMV. Quer algo profissional, para pequenas e médias empresas? Vá de TrueNAS.

Outra questão importante é para crescer o tamanho do meu array. No OMV é só acrescentar os discos e pronto. No TrueNAS, pelo que entendi, depois que você criou um array, para aumentá-lo é um parto.

Enfim, troquei. Estou até pensando em reinstalar o TrueNAS e rodar plugins nele. Ou talvez usar as coisas que quero usar no TrueNAS rodando pelo Docker. Tenho que pensar sobre isso.

Bom, vou só falar de um problema que tive aqui na instalação do OMV e que não tinha tido antes, fica aqui para lembrete meu também.

Quando instalei, ele recebeu um IP aleatório. Obviamente que não iria deixar, então reservei o IP no roteador (já falei disso aqui). Só que só isso não foi suficiente, ele continuou recebendo endereços aleatórios pelo DHCP. Assim, fui em System -> Network -> Interfaces e editei a conexão que tinha. Porém, não me lembro de ter feito isso antes, só editei os campos do IPV4 (estático, o endereço que tinha reservado no roteador, a submáscara de rede e o endereço do roteador no Gateway). Só que eu esqueci que deveria, também, preencher os campos em Advanced Options (DNS servers - o meu roteador e Search domais - coloquei o do Google - 8.8.8.8). Aí os erros de atualização acabaram.

Outra coisa que fiz diferente foi a forma de inserir os discos na VM. Após pluga-los ao computador, o que se liga diretamente ao USB do computador aparece como Hard Disk e os que se ligam no USB-Hub aparecem com USB. O que muda, basicamente, é que a função S.M.A.R.T. só fica ativa para o primeiro caso. Vi um tutorial (aqui) para fazer o bypass dos discos usando o ID físico ou o serial do HDD, mas achei confuso e desnecessário, então preferi fazer do jeito que sempre funcionou pra mim. Em Datacenter -> PVE -> Discos, aparece a lista de todos os discos ligados ao computador.


Aqui eles estão identificados pela lógica Unix (sda, sdb, sdc, etc). Repare na coluna "Uso" que, exato pelo sda (HDD do computador onde está instalado o Proxmox e as VMs), todos estão como "Não". Isso quer dizer que não estão formatados e não podem ser utilizados ainda. Assim, é necessário formatá-los. Depois de identificar cada disco, vá ao Shell do PVE e use os comandos, conforme já explicados aqui:

    # fdisk /dev/sdb (para escolher o disco)

    # d (para deletar a partição; dentro desta opção, você poderá escolher a partição que será deletada)

    # w (para escrever a ordem, ou seja, deletar a partição)

Após fazer isso com todas as partições / discos escolhidos, os discos ainda não estarão disponíveis. Para isso, ainda no Shell, faça o seguinte (para cada disco):

    # mkfs.ext4 /dev/sdb (para criar a partição em formato ext4)

Veja que agora os discos estão formatados:


O próximo passo é criar as partições lógicas. Repare que os discos estão sem partição. Para resolver isso, volte ao Shell e entre no fdisk novamente, agora escolhendo "g" para criar uma tabela de partição GPT (veja mais aqui), depois "n" para criar uma partição e por fim "w" para gravar e sair do fdisk.

Agora fica assim:


Esse processo serve para qualquer VM, seja NAS ou algum SO.

Agora vá em Datacenter -> pve -> Discos -> LVM e clique em "Criar: Volume Group". Escolha o disco e o nome que deseja utilizar para o disco.
Enquanto você vai acrescentado os discos (na coluna da direita), eles já vão aparecendo com unidades lógicas no PVE (na coluna da esquerda):


Agora o trabalho é dentro da VM, no meu caso é no OMV. Inicialmente precisamos disponibilizar essas partições lógicas para a VM. Assim, dentro da sua VM, vá em Hardware -> Adicionar -> Disco Rígido.


O Proxmox tem uma coisa que eu acho estranha: ele pede para você, ao acrescentar o disco na VM, digitar o tamanho do disco em GB. Não adianta colocar o tamanho inteiro (3TB = 3x1024GB = 3072GB por exemplo). Ele aceita apenas o espaço disponível. Assim, para os meus discos (03TB, 04TB e 08TB), fiz essa tabelinha abaixo com o espaço que o Proxmox permite:

03 TB = 2794 GB
04 TB = 3726 GB
08 TB = 7452GB

Fica assim:


E após adicionar todos os discos, fica assim:


Dentro do OMV, vá em Disks e agora aparecerão os discos:


Para minha surpresa, consegui fazer um RAID 1 (espelhado) com os dois discos de 08TB. Essa já era a ideia inicial ao escolher esses dois discos.

Agora é hora de adicionar os usuários (Gestão de Direitos de Acesso -> Utilizador), criar os discos para compartilhamento (Armazenamento -> Sistema de Ficheiros) e criar as pastas compartilhadas (Gestão de Direitos de Acesso -> Pastas Partilhadas). Depois ative o SMB/CIFS e, se quiser usar algum disco (ou pasta compartilhada) como Time Machine, é só ativar no disco/pasta que você quiser.

Tudo isso aí em cima está explicado aqui e aqui.

Outra coisa: pensei em usar o OMV6, mas ele ainda está como instável, alguns plugins estão sendo portados ainda e, portanto, preferi esperar ele ser liberado como estável para utilizar. Afinal, como eu li em algum lugar, NAS é para fazer, configurar tudo e deixar quieto.

Acho que é tudo por hoje!

domingo, 12 de setembro de 2021

Proxmox - instalando o TrueNAS e configurando os discos!

Pessoal,

Como disse no post anterior, o próximo passo seria instalar o TrueNAS.

Vamos criar uma VM onde ele será instalado e faremos o resto por lá (veja aqui como criar uma VM no Proxmox).

Tentei fazer o boot via UEFI na VM. Não deu, ficou travado. Apaguei a VM e reinstalei, agora dando boot via BIOS. deu certo. Aloquei 8GB de RAM, 128GB para o disco do TrueNAS (sendo 16GB de swap, seguindo o programa de instalação) e dois núcleos para o TrueNAS:


Pronto.

Para acessar a interface web do TrueNAS, é só digitar o endereço 192.168.1.30.


Até aqui nenhum mistério. Coloque "root" no usuário e a senha que você escolheu na instalação em "Password".



Depois de gastar algumas horas para e tentar várias formas para fazer o disco ficar disponível para o TrueNAS, entendi que deveria, primeiro, parar a VM com o TrueNAS para conseguir acrescentar o disco.

Acrescentei fazendo um bypass no Proxmox através das configurações da VM do TrueNAS: fui em hardware e acrescentei um disco via USB na VM do TrueNAS. Só depois disso liguei a VM e aí o disco apareceu. Talvez exista outro modo (e acredito que realmente deva existir), mas apenas esse funcionou para mim.

Gastei algumas horas pra descobrir isso. E confesso que a reinicialização da VM demora bastante, pelos menos uns 10 minutos.


Repare que um disco aqui deu erro na inicialização. Na verdade, 3 dos 4 discos deram erro. E como disse, o boot demora demais devido a essa tentativa de ficar tentando achar e montar os discos. Os quatro discos aparecem disponíveis e montados na VM:


Mas apenas um dele está de fato funcionando na VM. Os outros três dão erro ao tentar criar um pool utilizando-os. Esse disco que está funcionando coloquei pra TimeMachine e funcionou ok. Já os outros três não aparecem de jeito nenhum. Quando eu tento criar o pool, parece que vai:


Mas aí dá erro:



Bom, desse jeito não dá pra ficar. Num momento de desespero pensei até em usar o OMV (na verdade cheguei a instalar começar a configurar, mas ele ficou excluindo automaticamente os discos USB).

Obviamente estava fazendo alguma coisa errada. Obviamente esse bypass do USB está errado. Se deu errado no TrueNAS e deu errado no OMV, o erro na verdade é com o jeito que estou fazendo.

Então resolvi imaginar e fazer a coisa mais simples. Ora, vou criar um "disco virtual", ou seja, vou deixar o Proxmox administrar esse disco, sem fazer bypass.

Assim fui em "pve -> Disks". Lá tem algumas opções, entre elas ZFS e Diretório.

Primeiro usei o ZFS (veja aqui o que é ZFS) para criar no HD 03TB uma partição. Isso feito, fui no na VM do TrueNAS, em hardware, e adicionei um "Disco Rígido". O chato aqui é apenas definir o tamanho do disco, que o Proxmox mostra em GB. Fui acrescentando e acrescentado tamanho até chegar ao limite do disco. Depois disso, no TrueNAS, fui em Storage -> Pool e criei um pool com esse disco para fazer o TimeMachine. Deu certo!

Depois repeti o processo com os discos de 04TB. Esses dois disco são de marcas diferentes (um WD e o outro Samsung) e, da primeira vez que tentei usar, o TrueNAS não criar um pool alegando que eram discos de tamanhos diferentes.

Para esses, o processo foi um pouco diferente: em pve -> Disks, criei um "diretório" para cada disco, formatando em ext4. Depois adicionei como "Disco Rígido" todo o conteúdo de cada disco ao TrueNAS. E eis que eles apareceram lá.

O interessante deste último caso é que agora eles não são mais identificados pelo fabricante nem aparece o serial do disco no TrueNAS. Eles estão como discos "do emulador".

Criei o pool com esses dois discos em mirror, por segurança. Dentro deste pool criei um "dataset", ou seja, uma pasta inicial onde tudo será guardado, e coloquei para o Carbon Copy Cloner fazer o backup. O pool funciona como o nome do dispositivo e o dataset como partição primária. Pronto!

Agora preciso ver como vou fazer com o HD de 08TB.

E preciso refazer o Plex e outros dockers que eu estava usando.

terça-feira, 6 de abril de 2021

Instalando o Plex via Docker no Open Media Vault 5

Pessoal,

Aqui vai como fiz para subir o Plex no OMV5.

Procurei vários tutoriais e achei um bom vídeo no Youtube, Canal DB Tech.

A primeira coisa é determinar qual a divisão das suas mídias. Aqui eu fiz pastas para Clipes, Desenhos, Documentários, Filmes, Séries e Shows.

Além dessas, precisa de uma pasta para configurações. Para essa pasta, eu utilizei a mesma que já tinha feito para o Transmission (veja aqui). Na pasta Config, quando montei no tutorial para subir o Transmission, determinei que a pasta Config do Transmission ficaria em Config/Transmission. Assim, para cada Docker que precisar de uma pasta Config, é só colocar o "/novo Docker", ou seja, Config/Transmission para o Transmission, Config/Plex para o Plex, por aí vai. Fica mais organizado.

Agora, como fizemos com Transmission, você vai precisar saber o número UID do admin e o GID do user. Para conseguir esses números, vá no Shell do OMV (aqui uso o Terminal, via SSH) e digite, em modo SU, "id admin". Esse número é único para cada sistema. Anote o seu porque você vai precisar para muitos Dockers.


Para criar as pastas, vá em "Gestão de Direitos de Acessos", "Pastas Compartilhadas" e crie a pasta que você vai utilizar para armazenar os dados do Plex (Config, se ainda não tiver feito) e os arquivos de Midia.

O macete é criar PRIMEIRO as pastas compartilhadas (em Gestão de Direitos de Acessos). DEPOIS você vai em Serviços -> SMB/CIFS -> Compartilhamentos e adiciona a pasta que você já criou e compartilhou. Faça isso para todas as pastas que desejar criar (uma para configuração e outra para download). Só depois clique na barra amarela para aplicar as atualizações. As autorizações devem "Todos leem e escrevem" nas pastas compatilhadas e "Apenas Convidados" no compartilhamento de SMB.

A lógica aqui é: primeiro você cria a pasta e compartilha, depois você "publica" ela na rede via SMB, depois você aplica essas mudanças. Se fizer fora dessa ordem , não vai conseguir.

Agora você vai ter que conseguir o caminho absoluto de cada uma das pastas que criou. Para isso, dentro de Gestão de Direitos de Acessos -> Pastas Compartilhadas, clique em "Caminho relativo", colunas e selecione "Caminho absoluto".


O caminho absoluto é esse endereço grandão aí, "/srv/dev-disk-by-uuid(...)". O chato é que não tem como copiar esse endereço na página do OMV. Eu fiz o seguinte. Entrei no Firefox (eu normalmente uso o Safari), fui nesse lugar e salvei a página como TXT. Abri o arquivo TXT e copiei de lá o endereço. Lembre-se que ele começa no símbolo "/" e, no caso da pasta Config, termina no "Config/Plex" (para os outros não precisa colocar "/Plex" no final.

Copie tudo isso para um arquivo de texto para ajudar na hora de montar as informações do PlexServer.

Agora você precisará de uma imagem do Plex para o Docker. Eu estou achando as do LinuxServer muito boas. Usei esse aqui: https://hub.docker.com/r/linuxserver/plex/.


Aqui você tem duas opções. Ou fazer como no Transmission (cole o texto no Stacks e editar os campos que nós anotamos) ou fazer no braço.

Se fizer no Stacks, coloque o número do seu UID e GID em PUID e PGID, apague a linha da opção  PLEX-CLAIM e coloque o endereço absoluto em cada linha de "Volumes", mais ou menos assim:

 - /srv/dev-disk-by-uuid-653f3a41-960c-42e7-9d04-c57244dd1800/Config/Plex:/Config
 - /srv/dev-disk-by-uuid-bbab3456-cd03-474e-b55f-ba51e8105adb/Clipes:/Clipes

Faça isso para todas as pastas de mídia que você criou.

Pronto. Clique em "Deploy the Stack" e pule para a parte de configuração do Plex, mais abaixo.

A outra opção você terá que preencher esses campos aí de cima em um Docker novo. A grosso modo é a mesma coisa.

A segunda parte é configurar o Plex Server. Para isso, entre na página do Plex Server: <ip do OMV> : <porta do Plex> /web / index.html (essa porta é 32400 se você não tiver feito nada de errado).

DICA: Não esqueça o "/web/index.html". Eu fiquei meia hora escovando bit aqui tentando entender o que tinha feito de errado até atinar para isso!

Siga as orientações na tela, clique aqui, dispense pagar o Plex Pass, clique ali e vamos embora.

(Clique em "Adicionar Biblioteca")

(Clique em "Filmes" para adicionar Filmes e depois em "Adicionar pastas" para colocar a pasta Filmes que você criou lá atrás)

(Clique na pasta "Filmes" -> Adicionar e finalize com "Adicionar Biblioteca")

Faça isso para cada tipo de mídia (e cada pasta) que você criou.

Depois de tudo feito, clique nos três pontos que aparecem na frente de cada tipo de mídia e escolha "Examinar arquivos da biblioteca" para o Plex vasculhar as pastas e encontrar as mídias.



Pronto! Terminou.

Agora vá ao seu cliente para acessar o Plex e pode assistir.

Lembre-se, esse é o servidor do Plex. Para assistir os vídeos, você precisa de um aplicativo Cliente. Qualquer dúvida, confira a página do Plex.

Só para fazer justiça, aqui está o vídeo de onde tirei algumas informações



É isso!

[Atualização 01]

Mentira, é isso não! Percebi que alguns (vários) vídeos não apareciam no Plex, além de várias e várias pastas vazias. Estou tentando descobrir o que deu errado, mas uma coisa eu imagino: privilégios! Reparem que eu pesquisei lá no "id admin" o usuário "admin", ou seja, o root. Acho que os vídeos estão como usuário o "jaymebc", assim, o correto seria "id jaymebc", que gera o número do usuário jaymebc e não do root. Estou fazendo alguns testes e aviso aqui embaixo se deu certo!

Por enquanto fica assim.

[Atualização 02]

Deu certo mais ou menos. Mas descobri o que estava errado.

Em Gestão de Serviços de Acessos -> Pastas Partilhadas -> ACL (após marcar a pasta partilhada que você quer examinar), estava como proprietário "root". Mudei para admin, apliquei e pronto. Tudo se resolveu.

Como imaginei no começo, tudo é uma questão de obter privilégio do usuário, da pasta e do aplicativo.

Pronto, agora sim: É isso!

segunda-feira, 5 de abril de 2021

Correção de erros na atualização do OMV

Pessoal,

Instalado o OMV4, fui tentar fazer as atualizações: tudo dando erro!!!

Procurei e achei essas soluções:

1 - algum problema no repositório: edite o arquivo /etc/apt/sources.list e troque o servidor instalado por algum desta lista. No meu caso, troquei o .br pelo .us.

2 - erro de DNS: edite o arquivo /etc/resolv.conf e acrescente o endereço 8.8.8.8 ou algum outro servidor de DNS de sua preferência.

Pronto, resolveu aqui para mim.

É isso.

Quer dizer, deu certo mais ou menos. A opção do Virtual Box saiu mesmo, nem no OMV4 consegui. Como já tinha conseguido arrumar o Plex e o Transmission por Docker no OMV5, resolvei voltar pro OMV5!

Instalei, já organizei os backups, já fiz o Transmission pelo Docker (veja aqui como) e arrumei um jeito fácil de montar o Plex, também pelo Docker.

Assim que terminar esse básico, vou arrumar a VPN (e vou contar como) e rodar um Ubuntu no Docker (preciso ver como publicar ele, isso que me agarrou).

É isso (agora é isso mesmo!)!

sábado, 3 de abril de 2021

Instalando Transmission via Docker no Open Media Vault

Pessoal,

Instalei o OMV5 ontem no server aqui em casa.

De cara percebi que vou ter um problema para instalar os plugins. Todos os sites, videos e guias que consultei antes de instalar o OMV mostram que, após instalar os "Extras", eles apareceriam em Serviços, na coluna à esquerda, como aqui:


Veja ali o Virtual Box, por exemplo.

Pois bem, já no meu caso,  isso não aparece de jeito nenhum. Assim, as várias opções disponíveis nos "Extras" não estão aparecendo para mim.

Dei um procurada e parece ser devido à versão que estou usando, o OMV5, baseado no Debian 10. Até o OMV4 era baseado no Debian 9. Isso parece ter algum problema com visualização.

***Atualização: é isso mesmo, o Debian 10 não dá suporte para o Virtual Box. Assim isso tá fora do OMV5. A sugestão sugerida é o Cockpit (que eu já dei uma olhada e não gostei nem um pouco).

Além disso, coisas simples como PlexServer ficaram bem mais complexas, precisando rodar pelo Docker. Ainda estou apanhando um pouco dele, não estou conseguindo subir os vídeos. Assim que resolver, coloco aqui.

(Vim do futuro para fazer uma atualização e um comentário: para subir vídeos para o Plex, veja aqui com fazer.)

Mas o Transmission já está funcionando. Vamos lá!

A melhor dica que consegui para fazê-lo funcionar, do modo mais fácil, foi através dos Stacks do Portainer.

Antes de tudo, você precisa saber o número UID e o GID do user. Para conseguir esses números, vá no Shell do OMV (aqui uso o Terminal) e digite, em modo SU, "id admin" (para saber essas informações do administrador, é claro; para saber outro, use "id <usuário>").


Anote esses números do seu sistema.

Depois, teremos que ir no OMV, em "Gestão de Direitos de Acessos", "Pastas Compartilhadas" e crie a pasta que você vai utilizar para fazer os downloads do Transmission.

O macete é criar PRIMEIRO as pastas compartilhadas (em Gestão de Direitos de Acessos), depois você vai em Serviços -> SMB/CIFS -> Compartilhamentos e adiciona a pasta que você já criou e compartilhou. Faça isso para todas as pastas que desejar criar (uma para configuração e outra para download). Só depois clique na barra amarela para aplicar as atualizações.

A lógica aqui é: primeiro você cria a pasta e compartilha, depois você "publica" ela na rede via SMB, depois você aplica essas mudanças. Se fizer fora dessa ordem , não vai conseguir.

Aqui eu criei uma chamada "Transmission". Note que você precisará conceder acesso total para todos os usuários ("Apenas convidados", essa é a opção que você tem que marcar), além de saber o "caminho absoluto da pasta" e liberá-la no SMB.


Se esse caminho absoluto não estiver aparecendo, vá em Gestão de Direitos de Acesso-> Pastas Partilhadas   e coloque o cursor em cima do nome de alguma das colunas ("Nome", "Dispositivos", etc). Deve aparecer uma seta para baixo. Clique nela com o botão direito do mouse e aparecerá um menu com opções para ordenar e "Columns". Colocando o mouse em cima de "Columns", abre-se outro menu suspenso com várias opções. Escolha "Caminho Absoluto". Esse é o caminho absoluto para a pasta que você precisa acessar.

Além dessa pasta, você também deverá fazer uma para armazenar as configurações. Aqui, fiz uma com o nome "Config" e lá dentro vou colocando tudo: Config/Transmission, Config/Plex, e por aí vai.


Agora vamos para a parte divertida. Acesse o site "hub.docker.org" e localize o repositório que deseja. Eu escolhi esse aqui, do LinuxServer. Eles dão boas dicas para a instalação. É recomendado a instalação pelo Docker Composer.

Basicamente a gente vai copiar este texto, colar no Stacker, editar alguns parâmetros e pronto. As linhas opcionais (Transmission_Web_Home, USER, PASS, Whitelist, Host_whitelist) eu simplesmente tirei. Se você quiser, pode deixar, por exemplo, o user e pass para colocar o nome do usuário e senha.

Dentro do PUID você vai colocar o número do UID do seu sistema; faça a mesma coisa com o PGID.

Dentro de Volumes você vai substituir "<path to data>" pelo endereço da pasta Config/Transmission e "<path to downloads>" você troca pelo endereço do Transmission.

O meu ficou assim:


Agora vá na parte inferior e clique em "Deploy the Stack". Pronto.

Entre no ip do Stack do Transmission (<ip do seu roteador> : <porta que você liberou> / transmissão / web /) e confira se está tudo ok.

Depois você coloca um link como um aplicativo para iPhone, como eu mostrei aqui!

Por enquanto é isso.