Como transformar um Raspberry Pi em um NAS para compartilhamento de arquivos em toda a casa
Publicados: 2022-01-29Minha casa é incrivelmente arrumada e organizada, mas quando se trata da minha vida digital, a palavra "acumulador" vem à mente. Se isso soa como você, um dispositivo de armazenamento conectado à rede - ou NAS para abreviar - é o investimento perfeito para disponibilizar seus arquivos sem fio em qualquer dispositivo em sua casa. Mas esses dispositivos podem ficar caros, então uma maneira de economizar dinheiro é construir um barato com um Raspberry Pi no núcleo.
O que é um NAS?
O armazenamento conectado à rede permite compartilhar arquivos de um dispositivo sempre ativo em toda a sua casa. Com um NAS em sua rede, você pode usá-lo para armazenar seus filmes e reproduzi-los em várias caixas Kodi, armazenar backups no seu PC ou usá-lo como uma caixa BitTorrent que propaga seus arquivos 24 horas por dia, 7 dias por semana.
Claro, você pode fazer tudo isso com o seu PC principal, mas um NAS consome menos energia e foi projetado para funcionar dia e noite, mesmo que seu desktop esteja fora de serviço. Uma vez que você começa a usar um, é difícil voltar atrás.
Existem muitos dispositivos NAS prontos, de empresas como Synology, QNAP e Asustor. Basta comprar um, colocar uma unidade de disco e você está pronto para as corridas. Mas eles podem ficar caros e, se você não tiver certeza se um NAS é para você, será difícil justificar o investimento, especialmente se você quiser algo que possa crescer com suas necessidades de armazenamento.
O Raspberry Pi, por outro lado, é uma pequena placa tão versátil que pode funcionar como um NAS de teste barato que - assim que você crescer - pode ser reaproveitado para outra coisa. Não é tão sólido quanto, digamos, uma unidade Synology NAS, e o RAID não funciona particularmente bem no Pi se você deseja redundância de dados. Você deve certificar-se de que todos os dados importantes em seu NAS baseado em Pi também sejam copiados em outro lugar.
No entanto, é um ótimo projeto se você tiver um Pi por aí e quiser ver o que é a vida do NAS. Então, uma vez que você está viciado, você pode atualizar para um modelo Synology ou QNAP feito especificamente para atender às suas necessidades de longo prazo.
O que você precisará...
Um Raspberry Pi com todas as guarnições
Obviamente, você precisará de um Raspberry Pi para este projeto, juntamente com os acessórios necessários: uma fonte de alimentação, um cartão microSD e um mouse, um teclado e um monitor para a configuração inicial. Qualquer um dos Pis de modelo recente deve funcionar para este projeto, e você pode ler mais sobre os outros acessórios em nosso guia para começar a usar o Raspberry Pi.
Uma unidade de disco (ou duas, ou três)
A menos que você esteja compartilhando apenas alguns arquivos, seu cartão microSD provavelmente não é armazenamento suficiente para um NAS. Você precisará de algumas unidades para encher com seus filmes, músicas ou outros arquivos que deseja compartilhar entre os dispositivos. Uma unidade externa padrão fará o truque na maioria dos casos, embora você possa precisar de uma que se conecte à parede separadamente - ou um hub USB com alimentação - já que o Pi pode não fornecer energia suficiente para todas as suas unidades. Se você deseja uma configuração mais limpa, também pode usar uma unidade interna projetada para armazenamento conectado à rede, mas isso exigiria um caso.
Um estojo compatível com NAS (opcional) :
Se você deseja que seu sistema tenha uma aparência limpa, pode ser conveniente obter um gabinete para seu Pi e unidades, para que não seja apenas um polvo de fios e discos. Por exemplo, a Geekworm faz uma placa chamada X825 que permite acoplar um disco rígido interno de 2,5 polegadas, conectá-lo ao seu Pi e montá-lo em um pequeno gabinete. (Apenas certifique-se de obter um compatível com o seu Pi - existem casos diferentes para o Pi 3, o Pi 4 e assim por diante.)
Por enquanto, estou usando apenas um estojo Raspberry Pi padrão com uma unidade externa USB com velcro na parte superior, mas se você estiver disposto a ser criativo, o mundo é sua ostra aqui. Depois de ter todos os seus componentes em mãos, é hora de colocar seu NAS em funcionamento.
Instalar um sistema operacional
Existem sistemas operacionais especiais como o Openmediavault que transformam seu Pi em um NAS, mas para uma configuração iniciante, eu recomendo o Raspbian antigo comum - é flexível, fácil de usar e bom o suficiente para compartilhar alguns arquivos pela rede. Comece instalando o Raspbian com o software recomendado, conforme descrito em nosso guia para iniciantes.
Eu recomendo conectar seu Pi à sua rede via Ethernet para transferência rápida de arquivos, mas o Wi-Fi funcionará rapidamente. Depois de inicializar o Raspbian pela primeira vez, designar uma nova senha e baixar todas as suas atualizações, conecte seu disco rígido a uma das portas USB do Pi.
Você o verá na área de trabalho, mas faremos a maior parte do nosso trabalho no Terminal. (Se preferir, você pode usar o SSH no seu Pi e executar esses comandos em outro PC.)
Desmontar sua unidade
Antes de continuar, precisaremos apagar a unidade que você conectou, portanto, se você tiver arquivos importantes nela, precisará armazená-los em outro lugar antes de transferi-los para o seu Pi-NAS. Em uma janela do Terminal, execute o seguinte comando para ver os discos conectados ao seu Pi:
sudo fdisk -l
Encontre a unidade externa que você deseja usar para seus arquivos - no meu caso, é uma unidade de 80 GB chamada "MyExternalDrive" - e observe seu caminho. Na captura de tela acima, a unidade de 80 GB conectada ao meu Pi corresponde a /dev/sda. (Certifique-se de anotar a unidade correta, pois estamos prestes a apagá-la!) Primeiro, você precisará desmontar a unidade. Se você estiver usando a interface Raspbian, basta clicar no botão ejetar ao lado da unidade para desmontá-la. Mas se você estiver usando um terminal sobre SSH, você terá que executar:
umount /dev/sda1
Dependendo da unidade, pode ser necessário executar também umount /dev/sda2 , umount /dev/sda3 e assim por diante, dependendo de quantas partições estão na unidade de uso anterior.
Em seguida, para apagar e formatar sua unidade flash para uso do Linux, execute:
sudo parted /dev/sda
Isso abrirá um assistente chamado Parted, que permitirá que você crie uma nova partição na unidade. Execute este comando, pressionando Enter após cada resposta no assistente e substituindo MyExternalDrive pelo nome que deseja usar para a unidade:
mklabel gpt
Se solicitado a apagar a unidade, digite y e pressione Enter. Então corra:
mkpart
MyExternalDrive
ext4
0%
100%
quit
O comando final sairá do assistente do Parted. Obviamente, você pode ajustar esses comandos para caber no nome da sua unidade, o número e o tamanho das partições que deseja criar nela e assim por diante - mas para a maioria dos usuários básicos que estão começando, esses comandos devem funcionar bem.
Particione sua unidade
Em seguida, precisaremos formatar essa partição. Se sua unidade estiver localizada em /dev/sda , a nova partição estará localizada em /dev/sda1 (se a unidade for /dev/sdb , você usará /dev/sdb1 e assim por diante):
sudo mkfs.ext4 /dev/sda1
Pressione y e Enter quando perguntado se deseja continuar. Então corra:
sudo e2label /dev/sda1 MyExternalDrive
Basta substituir MyExternalDrive pelo nome que você quiser para sua unidade. A formatação levará alguns minutos, especialmente se você tiver uma unidade grande, portanto, seja paciente. Quando terminar, execute este comando para reiniciar seu Pi:
sudo shutdown -r now
Quando o seu Pi inicializar, você verá que a unidade externa aparece automaticamente na área de trabalho, pronta para ação. No entanto, você terá que executar um comando final para obter permissão para gravar novos arquivos na unidade. Em um Terminal, execute:
sudo chown -R pi /media/pi/MyExternalDrive
Compartilhe o Drive
Agora é hora de compartilhar essa unidade em sua rede, para que você possa adicionar seus arquivos e acessá-los de qualquer dispositivo da casa. Para fazer isso, vamos usar uma ferramenta chamada Samba, que é uma implementação de código aberto do protocolo de compartilhamento de arquivos SMB/CIFS do Windows. Não é sua única opção para compartilhar arquivos, mas é fácil de configurar e compatível com praticamente qualquer sistema que você possa ter na rede, então é o que eu recomendo.
O Raspbian não vem com o Samba instalado por padrão, portanto, você precisará verificar se seus repositórios estão atualizados e instalá-lo com os seguintes comandos:
sudo apt update
sudo apt upgrade
sudo apt install samba samba-common
O instalador perguntará se você deseja modificar o smb.conf para usar as configurações de WINS do DHCP. Escolha Sim e pressione Enter. Agora você mesmo edita esse arquivo de configuração para compartilhar sua unidade. Corre:
sudo nano /etc/samba/smb.conf
Em seguida, no editor de texto de linha de comando exibido, use a tecla de seta para rolar até a parte inferior do documento. Você vai querer adicionar um bloco de texto parecido com isto:
[MyMedia]
path = /media/pi/MyExternalDrive/
writeable = yes
create mask = 0775
directory mask = 0775
public=no
Em sua versão disso, MyMedia seria o nome do seu compartilhamento (nomeie-o como quiser) e /media/pi/MyExternalDrive seria o local montado de sua unidade. (Talvez seja necessário abrir o gerenciador de arquivos e ir para /media/pi/ para descobrir como é chamado.) Quando terminar, pressione Ctrl+X para sair do nano, pressionando y e Enter quando perguntado se deseja Salve o arquivo.
Crie uma senha e adicione usuários
Por fim, você precisará criar uma senha para o Samba para poder ver seu compartilhamento de outras máquinas. (Existem maneiras de configurar o Samba sem exigir uma senha, mas isso geralmente não é uma boa prática de segurança, então eu recomendo adicionar uma senha.) Para adicionar uma senha ao usuário Pi existente, execute:
sudo smbpasswd -a pi
Digite sua senha desejada quando solicitado - ela não precisa ser a mesma que sua senha de usuário no próprio Pi, mas pode ser - e pressione Enter.
Você pode adicionar outros usuários com sudo adduser jeff , onde jeff é o usuário que você deseja adicionar e executar sudo smbpasswd -a jeff para dar a esse usuário sua própria senha. Isso não é estritamente necessário, mas pode ser útil se você tiver várias pessoas em sua casa para as quais deseja conceder permissões de leitura e gravação diferentes em determinados compartilhamentos.
Feito isso, execute o seguinte comando para reiniciar o Samba:
sudo systemctl restart smbd
Acesse sua mídia
E tudo deve estar pronto para balançar. Vá para o seu PC com Windows, abra uma janela do Explorador de Arquivos e digite \\raspberrypi\MyMedia na barra de endereços (substituindo MyMedia pelo nome do seu compartilhamento). Se você pressionar Enter, poderá inserir seu nome de usuário (pi) e senha do Samba e ver sua unidade compartilhada. Se você tiver problemas, talvez seja necessário usar o endereço IP do Pi, como \\192.168.1.10\MyMedia .
Para conectar em um Mac, abra o Finder e clique em Ir > Conectar ao Servidor , digitando smb://raspberrypi quando solicitado.
Isso apenas arranha a superfície do que você pode fazer com um NAS baseado em Pi. À medida que suas necessidades de armazenamento evoluem, você pode adicionar mais unidades e compartilhamentos, adicionar mais usuários com permissões diferentes ou configurar uma matriz RAID para evitar a perda de dados em caso de falha no disco rígido. Quando chegar a esse ponto, porém, provavelmente valerá a pena gastar um pouco mais em um dispositivo NAS dedicado para obter melhor desempenho.