Le FriendlyElec (NanoPC) CM3588 est une solution basée sur RK3588 avec 4/8/16 Go de mémoire LPDDR4x et 0/64 Go de stockage flash eMMC. La carte support initiale publiée avec le CM3588 comprend 4 emplacements SSD M.2 NVMe (PCIe 3.0 x1 chacun) et un port RJ45 de 2,5 Gbit/s, ce qui en fait une option attrayante pour un NAS silencieux de faible consommation à 130 $/145 $/174 $ selon la RAM. configuration que vous achetez.
J'ai commandé ceci en réponse à la vidéo LTT. J'ai vu quelques personnes avoir du mal à les configurer et j'ai pensé proposer quelques guides de base afin d'aider ceux qui ont besoin d'aide pour faire fonctionner leur NAS.
J'utiliserai le programme d'installation Debian 12 précompilé trouvé ici. ( 01_Images officielles > 02_Images SD-to-eMMC > rk3588-eflasher-debian-bookworm-core-6.1-arm64-xxxxxxxxx.img.gz)
Le wiki FriendlyElec est en fait plutôt bon, mais il peut ressembler à un mur de texte/commandes à exécuter et peut être écrasant pour un nouvel utilisateur.
Vous voulez alimenter cela via POE+ ? J'ai utilisé cet adaptateur et vérifié qu'il fournit jusqu'à 25 watts et passe 2,5 Gbit/s.
Consommation électrique typique avec 4 disques Micron 2300 NVMe et (2) ventilateurs Noctua NF-A4x10 à 5 V :
J'ai constaté que le transfert à un débit linéaire (2,5 Gbit/s) utilise environ 35 % du processeur et environ 15 à 20 W lors de mes tests.
J'ai remixé le boîtier CM3588-NAS de sgofferj pour accueillir les vis du ventilateur du boîtier (M5.5) fournies avec les ventilateurs Noctua. Vous pouvez le trouver ici.
Depuis que j'ai acheté un modèle eMMC de 8 Go de RAM/64 Go, j'utiliserai une image d'installation SD vers eMMC pour ce guide. Vous aurez besoin d'une carte MicroSD de 8 Go ou plus.
Il y a 2 comptes par défaut.
Dans ce guide, nous serons :
Utilisez votre outil préféré pour vous connecter en SSH à l'unité.
passwd
Saisissez un nouveau mot de passe et confirmez.
Nous allons créer notre propre utilisateur, nous n'avons donc pas besoin de celui-ci.
deluser pi
J'utilise nas dans cet exemple, mais n'hésitez pas à le nommer comme vous le souhaitez, nous l'ajouterons ensuite au groupe sudoers
useradd nas
passwd nas
usermod -aG sudo nas
C'est pour des raisons de sécurité, car le nom d'utilisateur est toujours root et les droits d'accès sont illimités.
nano /etc/ssh/sshd_config
Allez à la ligne 33, remplacez PermitRootLogin yes
par PermitRootLogin no
.
systemctl restart sshd
exit
Reconnectez-vous en SSH en tant qu'utilisateur nouvellement créé
Par défaut, le fichier sources est livré avec un miroir basé en Chine. Même si c'est bien , cela serait beaucoup plus rapide si vous utilisiez les sources locales de Debian apt. Nous allons donc les changer. Je les ai commentés pour l'instant.
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
Afin d'installer ZFS, nous devons d'abord installer les en-têtes Linux pour notre noyau afin d'ajouter la prise en charge DKMS.
Heureusement, les en-têtes précompilés peuvent déjà être trouvés dans /opt/archives
sudo -i
dpkg -i /opt/archives/linux-headers-6.1.57_6.1.57-11_arm64.deb
Maintenant que nous avons les en-têtes Linux, nous pouvons utiliser apt pour installer ZFS
sudo apt install zfs-dkms
sudo apt install zfsutils-linux
Maintenant que ZFS est installé, nous allons essayer d'exécuter une commande pour tester que ZFS et DKMS sont réellement fonctionnels.
zpool status
Si cela fonctionne, il signalera que nous avons 0 pool. Si vous obtenez une erreur indiquant : "Les modules ZFS ne sont pas chargés. Essayez d'exécuter '/sbin/modprobe zfs' en tant qu'utilisateur root pour les charger", cela signifie que DKMS ne fonctionne pas correctement et que vous avez probablement manqué une étape ci-dessus. n'a pas réussi à compiler, ce qui aurait dû vous donner une erreur.
Maintenant que ZFS fonctionne, nous pouvons créer notre pool ZFS. Vous disposez de plusieurs options, en fonction du niveau de redondance ou de performances souhaité. Je recommanderais les options suivantes, bien qu’il en existe quelques autres. Vous devrez vérifier la documentation ZFS pour tout autre type de tableau.
RAIDZ1 (RAID5)
zpool create mypool raidz nvme0n1 nvme1n1 nvme2n1 nvme3n1
Miroir (RAID 1)
zpool create mypool mirror nvme0n1 nvme1n1 nvme2n1 nvme3n1
Miroir rayé (RAID 10)
zpool create mypool mirror nvme0n1 nvme1n1 mirror nvme2n1 nvme3n1
Maintenant, si nous exécutons zpool status
nous devrions obtenir quelque chose comme ceci :
$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
Le tableau sera monté sur /mypool (ou quel que soit le nom que vous avez donné à votre pool). Vous pouvez déplacer le point de montage vers un autre emplacement :
zfs set mountpoint=/mnt/storage mypool
Puisqu'il s'agit uniquement d'une baie SSD, je recommande d'activer le trim automatique. Trim marque les données non valides et indique au SSD de les ignorer pendant le processus de récupération de place, permettant ainsi à votre SSD d'effectuer un nettoyage de son côté.
zpool set autotrim=on mypool
Une fois cette opération terminée, vous serez prêt à installer ce que vous souhaitez.