NAS com Raspberry Pi 4

🧰 NAS com Raspberry Pi 4 (4GB) + Nextcloud — guia básico

 
 

🧰 O que você vai precisar

  • Raspberry Pi 4 (4GB)
  • Fonte 5V 3A (oficial)
  • Cartão microSD (16GB+)
  • SSD (ex: 500GB)
  • Case USB 3.0 → SATA (ou NVMe USB)
  • Cabo de rede (recomendado)
  • Case com dissipador/cooler

🔌 1. Montagem física

https://thepihut.com/cdn/shop/articles/How-to-set-up-an-SSD-with-the-Raspberry-Pi.jpg?v=1613655727
 
 
  1. Coloque o Raspberry no case
  2. Conecte o SSD na porta USB 3.0 (azul)
  3. Conecte o cabo de rede
  4. Insira o microSD
  5. Ligue a fonte

💻 2. Instalar o sistema

  1. Baixe o Raspberry Pi Imager
  2. Grave:
    • Sistema: Raspberry Pi OS Lite
  3. Ative:
    • SSH
    • Wi-Fi (se necessário)

🌐 3. Acessar o Raspberry

No seu PC:

ssh pi@raspberrypi.local
Senha: raspberry
 
Atualize:  sudo apt update && sudo apt upgrade -y
 

💾 4. Preparar o SSD

Verifique o disco:  
                     lsblk
Formate (se necessário):   sudo mkfs.ext4 /dev/sda1
 
Monte:     sudo mkdir /mnt/nas
           sudo mount /dev/sda1 /mnt/nas
Automático no boot:  sudo nano /etc/fstab
 
Adicione:   /dev/sda1 /mnt/nas ext4 defaults,noatime 0 2
 

☁️ 5. Instalar Nextcloud

Instalar dependências:

sudo apt install apache2 mariadb-server libapache2-mod-php \
php php-mysql php-gd php-xml php-mbstring php-curl php-zip unzip -y
 

Criar banco:

sudo mysql -e "CREATE DATABASE nextcloud;"
sudo mysql -e "CREATE USER 'ncuser'@'localhost' IDENTIFIED BY 'senha123';"
sudo mysql -e "GRANT ALL PRIVILEGES ON nextcloud.* TO 'ncuser'@'localhost';"
 

Baixar Nextcloud:

 
cd /tmp
wget https://download.nextcloud.com/server/releases/latest.zip
unzip latest.zip
sudo mv nextcloud /var/www/
sudo chown -R www-data:www-data /var/www/nextcloud
 

Configurar Apache:

sudo nano /etc/apache2/sites-available/nextcloud.conf
 

Cole:

<VirtualHost *:80>
DocumentRoot /var/www/nextcloud
<Directory /var/www/nextcloud/>
Require all granted
AllowOverride All
</Directory>
</VirtualHost>
 
Ativar:  sudo a2ensite nextcloud.conf
         sudo a2enmod rewrite
         sudo systemctl reload apache2
 

🌐 6. Acessar o sistema

Abra no navegador:    http://IP_DO_RASPBERRY

 

Crie:

  • usuário admin
  • banco:
    • usuário: ncuser
    • senha: senha123
    • banco: nextcloud

💾 7. Usar o SSD no Nextcloud

Edite:   sudo nano /var/www/nextcloud/config/config.php
Adicione:   'datadirectory' => '/mnt/nas',
 

📱 8. Usar no celular

Instale o app:

  • Nextcloud (Android/iOS)
Digite:     http://IP_DO_RASPBERRY
Ative:
  • backup automático de fotos 📸

⚡ 9. Desempenho esperado

  • Transferência: 80–120 MB/s
  • Uso ideal:
    • backup
    • fotos
    • arquivos pessoais
 

📱 10. Instalar Cooler

🔌 🔧 Ligação dos 2 fans

📌 Exemplo de pinos
  • Fan 1 → GPIO 14 (pino físico 8)
  • Fan 2 → GPIO 23 (pino físico 16)

Ligações:

FanFio vermelhoFio preto
Fan 1GPIO 14GND
Fan 2GPIO 23GND

👉 Ambos compartilham o mesmo GND (pino 6, por exemplo)


⚠️ IMPORTANTE

GPIO NÃO foi feito para alimentar fan diretamente 😅

  • usar transistor (ou módulo relé/mosfet)

🧠 Código Python (2 fans independentes)

 
import RPi.GPIO as GPIO
import time
FAN1 = 14
FAN2 = 23

GPIO.setmode(GPIO.BCM)
GPIO.setup(FAN1, GPIO.OUT)
GPIO.setup(FAN2, GPIO.OUT)

try:
while True:
temp = float(open("/sys/class/thermal/thermal_zone0/temp").read()) / 1000

# Fan 1 liga primeiro (mais silencioso)
if temp > 50:
GPIO.output(FAN1, True)
else:
GPIO.output(FAN1, False)

# Fan 2 só liga em temperatura mais alta
if temp > 60:
GPIO.output(FAN2, True)
else:
GPIO.output(FAN2, False)

print(f"Temp: {temp:.1f}°C")
time.sleep(5)

except KeyboardInterrupt:
pass

GPIO.cleanup()
 

🎯 Estratégia inteligente (recomendada)

👉 Isso aqui é o ideal:

TemperaturaAção
< 50°Ctudo desligado 🔇
50–60°Csó Fan 1
> 60°CFan 1 + Fan 2

👉 Resultado:

  • Silêncio na maior parte do tempo
  • Resfriamento progressivo

 

📦 📁 Estrutura ampliada com SAMBA e NEXTCLOUD via Script

 
/mnt/nas/
├── nextcloud/
├── samba/
 

🧰 🧾 Script completo (copia e cola)

🔹 1. Criar arquivo

 
nano setup_nas.sh
 

🔹 2. Cole tudo isso:

 
#!/bin/bash

echo "🔄 Atualizando sistema..."
sudo apt update && sudo apt upgrade -y

echo "📦 Instalando pacotes..."
sudo apt install -y apache2 mariadb-server libapache2-mod-php \
php php-mysql php-gd php-xml php-mbstring php-curl php-zip php-intl \
php-bcmath php-gmp unzip wget samba

echo "📁 Criando estrutura de diretórios..."
sudo mkdir -p /mnt/nas/nextcloud
sudo mkdir -p /mnt/nas/samba

echo "🔐 Ajustando permissões..."
sudo chown -R www-data:www-data /mnt/nas/nextcloud
sudo chmod -R 775 /mnt/nas/nextcloud

sudo chown -R pi:pi /mnt/nas/samba
sudo chmod -R 775 /mnt/nas/samba

echo "🌐 Configurando Apache..."
sudo a2enmod rewrite headers env dir mime
sudo systemctl restart apache2

echo "🗄️ Configurando banco de dados..."
sudo mysql -e "CREATE DATABASE nextcloud;"
sudo mysql -e "CREATE USER 'ncuser'@'localhost' IDENTIFIED BY 'ncpassword';"
sudo mysql -e "GRANT ALL PRIVILEGES ON nextcloud.* TO 'ncuser'@'localhost';"
sudo mysql -e "FLUSH PRIVILEGES;"

echo "⬇️ Baixando Nextcloud..."
cd /tmp
wget https://download.nextcloud.com/server/releases/latest.zip
unzip latest.zip

echo "📂 Movendo Nextcloud..."
sudo mv nextcloud /var/www/

echo "🔐 Permissões Nextcloud..."
sudo chown -R www-data:www-data /var/www/nextcloud

echo "🌐 Config Apache Nextcloud..."
sudo bash -c 'cat > /etc/apache2/sites-available/nextcloud.conf <<EOF
<VirtualHost *:80>
 DocumentRoot /var/www/nextcloud
 <Directory /var/www/nextcloud/>
 Require all granted
 AllowOverride All
 Options FollowSymLinks MultiViews
 </Directory>
</VirtualHost>
EOF'

sudo a2ensite nextcloud.conf
sudo systemctl reload apache2

echo "🖥️ Configurando Samba..."
sudo bash -c 'cat >> /etc/samba/smb.conf <<EOF

[NAS]
 path = /mnt/nas/samba
 browseable = yes
 writable = yes
 guest ok = no
 create mask = 0775
 directory mask = 0775
EOF'

echo "🔑 Criando usuário Samba (vai pedir senha)..."
sudo smbpasswd -a pi

sudo systemctl restart smbd

echo "✅ Instalação concluída!"
echo "🌐 Acesse Nextcloud: http://IP_DO_RASPBERRY"
echo "📁 Acesse Samba: \\\\IP_DO_RASPBERRY\\NAS"
 

🔹 3. Tornar executável

 
chmod +x setup_nas.sh
 

🔹 4. Executar

 
./setup_nas.sh
 

🌐 Após instalar

🔹 Acesse o Nextcloud:

                 http://IP_DO_RASPBERRY
 

👉 Crie:

  • usuário admin
  • use banco:
    • usuário: ncuser
    • senha: ncpassword
    • banco: nextcloud

 

⚠️ Dicas importantes

  • Use IP fixo no Raspberry
  • Use cabo de rede
  • Depois podemos configurar HTTPS

🏆 Resultado final

Você terá:

✔️ Samba → rápido na rede local
✔️ Nextcloud → acesso remoto + celular
✔️ Tudo no mesmo SSD
✔️ Sistema completo de NAS


 

🆚 Nextcloud vs apps comuns

RecursoNextcloudGoogle Drive
Privacidade🔒 total❌ depende do Google
Backup fotos
Compartilhar
Controle🔧 completolimitado

🚀 Próximos upgrades

  • HTTPS (acesso seguro)
  • Acesso remoto fora de casa
  • Backup automático
  • Integração com Samba
 

Deixe um comentário

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