Der FriendlyElec (NanoPC) CM3588 ist eine RK3588-basierte Lösung mit 4/8/16 GB LPDDR4x-Speicher und 0/64 GB eMMC-Flash-Speicher. Das erste Trägerboard, das mit dem CM3588 veröffentlicht wurde, verfügt über 4x M.2 NVMe SSD-Steckplätze (jeweils PCIe 3.0 x1) und einen 2,5-Gbit/s-RJ45-Anschluss, was es zu einer attraktiven Option für ein leises NAS mit geringem Stromverbrauch für 130 $/145 $/174 $ je nach RAM macht Konfiguration, die Sie kaufen.
Ich habe dies als Reaktion auf das LTT-Video bestellt. Ich habe einige Leute gesehen, die Schwierigkeiten hatten, diese zu konfigurieren, und dachte, ich würde einige grundlegende Anleitungen anbieten, um diejenigen zu unterstützen, die Hilfe bei der Inbetriebnahme ihres NAS benötigen.
Ich werde das vorkompilierte Debian 12-Installationsprogramm verwenden, das Sie hier finden. ( 01_Offizielle Bilder > 02_SD-zu-eMMC-Bilder > rk3588-eflasher-debian-bookworm-core-6.1-arm64-xxxxxxxx.img.gz)
Das FriendlyElec-Wiki ist eigentlich ziemlich gut, aber es kann sich wie eine Wand aus Texten/Befehlen anfühlen, die ausgeführt werden müssen, und kann für einen neuen Benutzer überfordernd sein.
Möchten Sie dies über POE+ mit Strom versorgen? Ich habe diesen Adapter verwendet und festgestellt, dass er bis zu 25 Watt liefert und 2,5 Gbit/s durchlässt.
Typischer Stromverbrauch mit 4 Micron 2300 NVMe-Laufwerken und (2) Noctua NF-A4x10-Lüftern bei 5 V:
Ich habe festgestellt, dass die Übertragung mit linearer Geschwindigkeit (2,5 Gbit/s) in meinen Tests etwa 35 % CPU und etwa 15–20 W verbraucht.
Ich habe das CM3588-NAS-Gehäuse von sgofferj neu gestaltet, um die Gehäuselüfterschrauben (M5,5) unterzubringen, die mit den Noctua-Lüftern geliefert werden. Das finden Sie hier.
Da ich ein 8-GB-RAM/64-GB-eMMC-Modell gekauft habe, verwende ich für diese Anleitung ein SD-zu-eMMC-Installationsimage. Sie benötigen eine MicroSD-Karte mit 8 GB oder mehr.
Standardmäßig gibt es 2 Konten.
In diesem Leitfaden werden wir:
Verwenden Sie Ihr Lieblingstool für die SSH-Verbindung zum Gerät.
passwd
Geben Sie ein neues Passwort ein und bestätigen Sie.
Wir werden unseren eigenen Benutzer erstellen, daher benötigen wir diesen nicht.
deluser pi
Ich verwende in diesem Beispiel nas, aber Sie können ihm gerne einen beliebigen Namen geben, dann werden wir ihn zur Gruppe sudoers hinzufügen
useradd nas
passwd nas
usermod -aG sudo nas
Dies dient der Sicherheit, da der Benutzername immer root ist und die Zugriffsrechte unbegrenzt sind.
nano /etc/ssh/sshd_config
Gehen Sie zu Zeile 33 und ändern Sie PermitRootLogin yes
in PermitRootLogin no
.
systemctl restart sshd
exit
Melden Sie sich per SSH wieder als Ihr neu erstellter Benutzer an
Standardmäßig enthält die Quelldatei einen Spiegel, der aus China stammt. Das ist zwar in Ordnung , aber es wäre viel schneller, wenn Sie die lokalen Debian-APT-Quellen verwenden würden. Also werden wir sie zurück ändern. Ich habe sie vorerst auskommentiert.
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
Um ZFS zu installieren, müssen wir zunächst Linux-Header für unseren Kernel installieren, um DKMS-Unterstützung hinzuzufügen.
Glücklicherweise sind vorkompilierte Header bereits in /opt/archives zu finden
sudo -i
dpkg -i /opt/archives/linux-headers-6.1.57_6.1.57-11_arm64.deb
Da wir nun Linux-Header haben, können wir apt verwenden, um ZFS zu installieren
sudo apt install zfs-dkms
sudo apt install zfsutils-linux
Nachdem ZFS nun installiert ist, werden wir versuchen, einen Befehl auszuführen, um zu testen, ob ZFS und DKMS tatsächlich funktionieren.
zpool status
Wenn dies funktioniert, wird gemeldet, dass wir 0 Pools haben. Wenn Sie eine Fehlermeldung erhalten, die besagt: „Die ZFS-Module sind nicht geladen. Versuchen Sie, „/sbin/modprobe zfs“ als Root auszuführen, um sie zu laden“, bedeutet das, dass DKMS nicht richtig funktioniert und Sie wahrscheinlich einen Schritt oben verpasst haben oder nicht Die Kompilierung ist fehlgeschlagen, was zu einem Fehler hätte führen sollen.
Nachdem ZFS nun funktioniert, können wir unseren ZFS-Pool erstellen. Je nachdem, wie viel Redundanz oder Leistung Sie wünschen, haben Sie mehrere Möglichkeiten. Ich würde die folgenden Optionen empfehlen, obwohl es noch einige mehr gibt. Sie müssen die ZFS-Dokumentation auf andere Array-Typen überprüfen.
RAIDZ1 (RAID 5)
zpool create mypool raidz nvme0n1 nvme1n1 nvme2n1 nvme3n1
Spiegel (RAID 1)
zpool create mypool mirror nvme0n1 nvme1n1 nvme2n1 nvme3n1
Gestreifter Spiegel (RAID 10)
zpool create mypool mirror nvme0n1 nvme1n1 mirror nvme2n1 nvme3n1
Wenn wir nun zpool status
ausführen, sollten wir etwa Folgendes erhalten:
$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
Das Array wird unter /mypool (oder wie auch immer Sie Ihren Pool benannt haben) gemountet. Sie können den Mountpoint an einen anderen Ort verschieben:
zfs set mountpoint=/mnt/storage mypool
Da es sich hierbei ausschließlich um SSD-Arrays handelt, empfehle ich die Aktivierung von Autotrim. Trim markiert die ungültigen Daten und weist die SSD an, sie während des Speicherbereinigungsvorgangs zu ignorieren, sodass Ihre SSD am Ende einige Bereinigungen durchführen kann.
zpool set autotrim=on mypool
Sobald dies abgeschlossen ist, können Sie alles installieren, was Sie möchten.