El FriendlyElec (NanoPC) CM3588 es una solución basada en RK3588 con memoria LPDDR4x de 4/8/16 GB y almacenamiento flash eMMC de 0/64 GB. La placa portadora inicial lanzada con el CM3588 cuenta con 4 ranuras SSD NVMe M.2 (PCIe 3.0 x1 cada una) y un puerto RJ45 de 2,5 gbps, lo que la convierte en una opción atractiva para un NAS silencioso de baja potencia a $130/$145/$174 dependiendo de qué RAM configuración que usted compra.
Ordené esto en respuesta al video LTT. He visto a algunas personas tener dificultades para configurarlos y pensé que ofrecería algunas guías básicas para ayudar a aquellos que necesitan ayuda a poner en funcionamiento su NAS.
Usaré el instalador precompilado de Debian 12 que se encuentra aquí. ( 01_Imágenes oficiales > 02_Imágenes SD a eMMC > rk3588-eflasher-debian-bookworm-core-6.1-arm64-xxxxxxxx.img.gz)
El Wiki de FriendlyElec es bastante bueno, pero puede parecer un muro de texto/comandos para ejecutar y puede resultar abrumador para un nuevo usuario.
¿Quieres alimentar esto a través de POE+? Utilicé este adaptador y verifiqué que suministra hasta 25 vatios y pasa 2,5 gbps.
Consumo de energía típico con unidades NVMe de 4 Micron 2300 y (2) ventiladores Noctua NF-A4x10 a 5 V:
Descubrí que la transferencia a velocidad lineal (2,5 gbps) utiliza aproximadamente un 35% de CPU y ~15-20w en mis pruebas.
Remezclé la carcasa CM3588-NAS de sgofferj para acomodar los tornillos del ventilador de la carcasa (M5.5) que vienen con los ventiladores Noctua. Puedes encontrarlo aquí.
Como compré un modelo eMMC de 8 GB de RAM/64 GB, usaré una imagen de instalación de SD para eMMC para esta guía. Necesitará una tarjeta MicroSD de 8 GB o más.
Hay 2 cuentas por defecto.
En esta guía seremos:
Utilice su herramienta favorita para SSH en la unidad.
passwd
Ingrese una nueva contraseña y confírmela.
Vamos a crear nuestro propio usuario, por lo que no necesitamos este.
deluser pi
Estoy usando nas en este ejemplo, pero siéntete libre de ponerle el nombre que quieras y luego lo agregaremos al grupo sudoers.
useradd nas
passwd nas
usermod -aG sudo nas
Esto es por seguridad, ya que el nombre de usuario siempre es root y los derechos de acceso son ilimitados.
nano /etc/ssh/sshd_config
Vaya a la línea 33, cambie PermitRootLogin yes
a PermitRootLogin no
.
systemctl restart sshd
exit
Vuelva a ingresar SSH como su usuario recién creado
De forma predeterminada, el archivo fuente viene con una réplica con sede fuera de China. Si bien esto está bien , sería mucho más rápido si utilizara las fuentes locales de Debian apt. Entonces los cambiaremos nuevamente. Los he comentado por ahora.
mv /etc/apt/sources.list /etc/apt/sources.list.old
nano /etc/apt/sources.list
# deb https://mirrors.aliyun.com/debian bookworm main non-free contrib
# deb-src https://mirrors.aliyun.com/debian bookworm main non-free contrib
# deb https://mirrors.aliyun.com/debian-security bookworm-security main
# deb-src https://mirrors.aliyun.com/debian-security bookworm-security main
# deb https://mirrors.aliyun.com/debian bookworm-backports main non-free contrib
# deb-src https://mirrors.aliyun.com/debian bookworm-backports main non-free contrib
deb http://deb.debian.org/debian bookworm main non-free-firmware
deb-src http://deb.debian.org/debian bookworm main non-free-firmware
deb http://deb.debian.org/debian-security/ bookworm-security main non-free-firmware
deb-src http://deb.debian.org/debian-security/ bookworm-security main non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main non-free-firmware
deb-src http://deb.debian.org/debian bookworm-updates main non-free-firmware
deb http://deb.debian.org/debian bookworm-backports main non-free-firmware
deb-src http://deb.debian.org/debian bookworm-backports main non-free-firmware
Para instalar ZFS, primero necesitamos instalar encabezados de Linux para nuestro kernel para agregar soporte DKMS.
Afortunadamente, los encabezados precompilados ya se pueden encontrar en /opt/archives
sudo -i
dpkg -i /opt/archives/linux-headers-6.1.57_6.1.57-11_arm64.deb
Ahora que tenemos encabezados de Linux, podemos usar apt para instalar ZFS
sudo apt install zfs-dkms
sudo apt install zfsutils-linux
Ahora que ZFS está instalado, intentaremos ejecutar un comando para probar que ZFS y DKMS realmente funcionan.
zpool status
Si esto funciona, informará que tenemos 0 grupos. Si recibe un error que dice: "Los módulos ZFS no están cargados. Intente ejecutar '/sbin/modprobe zfs' como root para cargarlos", eso significa que DKMS no está funcionando correctamente y probablemente se saltó un paso anterior o No se pudo compilar, lo que debería haberle dado un error.
Ahora que tenemos ZFS funcionando, podemos crear nuestro grupo ZFS. Tiene algunas opciones, dependiendo de cuánta redundancia o rendimiento desee. Yo recomendaría las siguientes opciones, aunque hay algunas más. Tendrá que consultar la documentación de ZFS para ver cualquier otro tipo de matriz.
RAIDZ1 (RAID 5)
zpool create mypool raidz nvme0n1 nvme1n1 nvme2n1 nvme3n1
Espejo (RAID 1)
zpool create mypool mirror nvme0n1 nvme1n1 nvme2n1 nvme3n1
Espejo rayado (RAID 10)
zpool create mypool mirror nvme0n1 nvme1n1 mirror nvme2n1 nvme3n1
Ahora, si ejecutamos zpool status
deberíamos obtener algo como esto:
$zpool status
pool: mypool
state: ONLINE
config:
NAME STATE READ WRITE CKSUM
mypool ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
nvme0n1 ONLINE 0 0 0
nvme1n1 ONLINE 0 0 0
nvme2n1 ONLINE 0 0 0
nvme3n1 ONLINE 0 0 0
errors: No known data errors
La matriz se montará en /mypool (o como le hayas llamado a tu grupo). Puede mover el punto de montaje a una ubicación diferente:
zfs set mountpoint=/mnt/storage mypool
Dado que se trata de una matriz SSD, recomiendo habilitar el recorte automático. Trim marca los datos no válidos y le dice al SSD que los ignore durante el proceso de recolección de basura, lo que permite que su SSD realice una limpieza.
zpool set autotrim=on mypool
Una vez que esto esté completo, estará listo para instalar lo que desee.