FriendlyElec(NanoPC) CM3588은 4/8/16GB LPDDR4x 메모리와 0/64GB eMMC 플래시 스토리지를 갖춘 RK3588 기반 솔루션입니다. CM3588과 함께 출시된 초기 캐리어 보드에는 4x M.2 NVMe SSD 슬롯(각각 PCIe 3.0 x1)과 2.5gbps RJ45 포트가 있어 RAM에 따라 $130/$145/$174의 저전력 무소음 NAS에 매력적인 옵션이 됩니다. 구매한 구성입니다.
LTT 영상에 대한 응답으로 이것을 주문했습니다. 나는 이것을 구성하는 데 어려움을 겪는 몇몇 사람들을 보았고 NAS를 시작하고 작동하는 데 도움이 필요한 사람들을 돕기 위해 몇 가지 기본 가이드를 제공할 것이라고 생각했습니다.
나는 여기에 있는 미리 컴파일된 Debian 12 설치 프로그램을 사용할 것입니다. ( 01_공식 이미지 > 02_SD-to-eMMC 이미지 > rk3588-eflasher-debian-bookworm-core-6.1-arm64-xxxxxxxx.img.gz)
FriendlyElec Wiki는 실제로 꽤 훌륭하지만, 실행해야 할 텍스트/명령의 벽처럼 느껴질 수 있으며 새로운 사용자에게는 부담스러울 수 있습니다.
POE+를 통해 전원을 공급하고 싶으십니까? 이 어댑터를 사용하여 최대 25W를 공급하고 2.5Gbps를 통과하는 것을 확인했습니다.
4개의 Micron 2300 NVMe 드라이브 및 (2) Noctua NF-A4x10 팬 @ 5V의 일반적인 전력 소비:
테스트에서 회선 속도(2.5gbps)로 전송하면 약 35%의 CPU와 ~15-20w를 사용하는 것으로 나타났습니다.
Noctua 팬과 함께 제공되는 케이스 팬 나사(M5.5)를 수용하기 위해 sgofferj의 CM3588-NAS 케이스를 리믹스했습니다. 여기에서 찾을 수 있습니다.
저는 8GB RAM/64GB eMMC 모델을 구입했기 때문에 이 가이드에서는 SD to eMMC 설치 이미지를 사용하겠습니다. 8GB 이상의 MicroSD 카드가 필요합니다.
기본적으로 2개의 계정이 있습니다.
이 가이드에서는 다음을 수행합니다.
선호하는 도구를 사용하여 장치에 SSH를 연결하세요.
passwd
새 비밀번호를 입력하고 확인하세요.
우리는 우리 자신의 사용자를 생성할 것이므로 이 사용자는 필요하지 않습니다.
deluser pi
이 예에서는 nas를 사용하고 있지만 원하는 대로 이름을 지정한 다음 sudoers 그룹에 추가하겠습니다.
useradd nas
passwd nas
usermod -aG sudo nas
사용자 이름은 항상 루트이고 액세스 권한은 무제한이므로 이는 보안을 위한 것입니다.
nano /etc/ssh/sshd_config
33행으로 이동하여 PermitRootLogin yes
PermitRootLogin no
로 변경합니다.
systemctl restart sshd
exit
새로 생성된 사용자로 SSH로 다시 로그인
기본적으로 소스 파일에는 중국에 기반을 둔 미러가 함께 제공됩니다. 괜찮지 만 로컬 데비안 적절한 소스를 사용하면 훨씬 더 빨라질 것입니다. 그래서 우리는 그것들을 다시 바꿀 것입니다. 나는 지금 그것들을 주석 처리했습니다.
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
ZFS를 설치하려면 먼저 커널용 Linux 헤더를 설치하여 DKMS 지원을 추가해야 합니다.
다행히 미리 컴파일된 헤더는 이미 /opt/archives에서 찾을 수 있습니다.
sudo -i
dpkg -i /opt/archives/linux-headers-6.1.57_6.1.57-11_arm64.deb
이제 Linux 헤더가 있으므로 apt를 사용하여 ZFS를 설치할 수 있습니다.
sudo apt install zfs-dkms
sudo apt install zfsutils-linux
이제 ZFS가 설치되었으므로 명령을 실행하여 ZFS 및 DKMS가 실제로 작동하는지 테스트해 보겠습니다.
zpool status
이것이 작동하면 풀이 0개 있다고 보고됩니다. "ZFS 모듈이 로드되지 않았습니다. 로드하려면 루트로 '/sbin/modprobe zfs'를 실행해 보십시오."라는 오류가 발생하는 경우 이는 DKMS가 제대로 작동하지 않으며 위의 단계를 놓쳤을 가능성이 있음을 의미합니다. 컴파일에 실패하여 오류가 발생했을 것입니다.
이제 ZFS가 작동하므로 ZFS 풀을 만들 수 있습니다. 원하는 중복성이나 성능에 따라 몇 가지 옵션이 있습니다. 몇 가지 옵션이 더 있지만 다음 옵션을 권장합니다. 다른 배열 유형에 대해서는 ZFS 설명서를 확인해야 합니다.
RAIDZ1(RAID 5)
zpool create mypool raidz nvme0n1 nvme1n1 nvme2n1 nvme3n1
미러(RAID 1)
zpool create mypool mirror nvme0n1 nvme1n1 nvme2n1 nvme3n1
스트라이프 미러(RAID 10)
zpool create mypool mirror nvme0n1 nvme1n1 mirror nvme2n1 nvme3n1
이제 zpool status
실행하면 다음과 같은 결과가 나타납니다.
$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
어레이는 /mypool(또는 풀 이름을 지정한 대로)에 마운트됩니다. 마운트 지점을 다른 위치로 이동할 수 있습니다.
zfs set mountpoint=/mnt/storage mypool
이것은 모두 SSD 어레이이므로 자동 트림을 활성화하는 것이 좋습니다. Trim은 유효하지 않은 데이터를 표시하고 SSD가 가비지 수집 프로세스 중에 이를 무시하도록 지시하여 SSD가 결국 일부 정리 작업을 수행할 수 있도록 합니다.
zpool set autotrim=on mypool
이 작업이 완료되면 원하는 것을 설치할 준비가 된 것입니다.