라즈베리파이 5 NVMe 부팅 홈서버 구축기 — SD부터 시작하지 않는 NVMe-First 빌드 5종 세트
TL;DR
- SD 카드부터 시작한 라즈베리파이 홈서버는 평균 6개월 안에 한 번 더 재설치한다
- Docker·DB·로그 쓰기로 SD는 수개월, NVMe는 수년 — 속도 차이는 5~10배
- M.2 HAT+, NVMe SSD, 27W PSU, 능동 쿨러, 작은 UPS — 다섯을 한 번에 산다
BOOT_ORDER=0xf416+dtparam=pciex1_gen3=on세 줄이 구축의 전부다- 초기 비용 +5만 원이 6개월 후의 재설치를 막는 보험이다
"일단 SD에 깔고 나중에 옮기세요"는 대부분의 라즈베리파이 입문 가이드가 따르는 문장이다. 이 "나중에"는 거의 모두 6개월 안에 강제로 발생한다. 이 글은 그 6개월을 건너뛰는 빌드 순서를 정리한다.
SD부터 시작하면 무조건 한 번 재설치한다
홈서버 워크로드는 SD 카드가 설계된 쓰기 패턴이 아니다. Docker 컨테이너의 임시 파일, SQLite·PostgreSQL의 WAL, systemd-journal 로그, Watchtower 자동 업데이트가 24시간 같은 셀에 쓰기를 가한다.
소비자용 microSD는 사진 촬영을 가정한 설계라 이 부하에서 수개월에 죽는다. 보통 갑작스러운 마운트 실패로 온다. NVMe SSD는 같은 쓰기를 수년간 견디고 SMART·TRIM으로 수명을 추적할 수 있다.
라즈베리파이 5의 PCIe는 기본 Gen2(약 450 MB/s)지만, 한 줄 설정으로 비공식 Gen3(SSD에 따라 약 800900 MB/s)까지 끌어올릴 수 있다. SD 카드의 2090 MB/s 대비 본질적 차이는 부팅 속도가 아니라 수명이다.
한 번에 사야 하는 다섯 가지 부품
따로따로 주문하면 항상 한 부품이 빠진 채 일주일을 더 기다리게 된다. 다섯 가지를 동시에 장바구니에 넣는 게 빌드의 첫 결정이다.
| 부품 | 핵심 사양 | 함정 |
|---|---|---|
| M.2 HAT+ | 공식 또는 Geekworm | Compact 버전은 2230만 지원 |
| NVMe SSD | 2242, 256GB 이상 | 2280은 물리적으로 안 맞는다 |
| PSU | 5V/5A 27W USB-C PD | 5V/3A는 NVMe 인식 실패 |
| 능동 쿨러 | 공식 Active Cooler | 80°C 소프트 스로틀 |
| UPS | 슈퍼캡 또는 PD 배터리 | 정전 = 파일시스템 손상 |
핵심 함정은 두 가지다. SSD는 반드시 2242 폼팩터다. 2280은 더 싸지만 공식 HAT+에 들어가지 않는다. "Compact" 버전을 샀다면 2230만 가능하다. PSU는 반드시 5V/5A 27W — 일반 3A 어댑터는 NVMe 인식이 간헐적으로 실패하고 OS에 경고가 뜬다.
EEPROM과 config.txt, 세 줄이 구축의 전부다
NVMe-First 빌드의 소프트웨어 작업은 의외로 짧다. SD 카드에 Raspberry Pi OS를 굽고 한 번 부팅한 다음, 두 파일만 손본다.
sudo rpi-eeprom-update -a # 부트로더 최신화
sudo rpi-eeprom-config --edit
# BOOT_ORDER=0xf416
# PCIE_PROBE=1 (공식 HAT+가 아닌 어댑터일 때만)
# 그리고 /boot/firmware/config.txt 끝에 한 줄:
# dtparam=pciex1_gen3=on
BOOT_ORDER의 16진수는 오른쪽부터 읽는다. 0xf416은 NVMe(6) → SD(1) → USB(4) → 재시도(f) 순서다. NVMe가 살아있으면 거기서 부팅하고, 없으면 자동으로 SD 카드로 폴백한다. SD를 영구 보험으로 슬롯에 꽂아두는 구조다.
dtparam=pciex1_gen3=on은 비공식이지만 안정적이다. 이 한 줄이 없으면 Gen2 약 450 MB/s에 묶인다. NVMe로 OS를 클론한 뒤 한 번만 부팅 테스트하면 끝이다.
24/7로 가는 마지막 세 가지 결정
NVMe로 부팅한다고 끝이 아니다. 24시간 가동을 견디려면 세 가지 운영 결정이 더 필요하다.
- UPS는 옵션이 아니다 — 라즈베리파이는 갑작스러운 정전에 매우 약하다. NVMe라도 ext4 저널이 깨지면 부팅 실패한다. PiSugar 같은 슈퍼캡 모듈로 수십 초만 버텨도 안전 종료가 보장된다.
- 백업은 3-2-1, 그러나 가볍게 — restic으로 NVMe → 외장 USB → 클라우드(B2/S3)에 매일 증분 백업. 풀 백업은 NVMe TBW를 갉아먹는다.
- 모니터링은 Uptime Kuma + SMART —
sudo smartctl -a /dev/nvme0n1로 월 1회 Wear Leveling Count와 Available Spare를 확인한다. 라즈베리파이 5는 nvme-cli가 정상 동작한다.
발열은 능동 쿨러만 달면 평균 55~65°C로 관리된다. 80°C 소프트 스로틀, 85°C 하드 스로틀까지의 여유는 충분하다.
NVMe-First가 답이 아닌 한 가지 경우
학습용·실험용 라즈베리파이라면 SD로도 충분하다. Pi-hole 단일 워크로드는 SD로 1년 넘게 무리 없이 돌고, 일주일 만에 다른 OS로 갈아끼울 거라면 SD가 오히려 편하다.
NVMe-First는 "Docker 4~5개 컨테이너, 가족 미디어 서버, 24/7 가동" 시나리오일 때만 의미가 있다. 그게 아니라면 +5만 원이 과한 보험이다.
참고로 전력 소비는 아이들 약 3W, 풀 부하 8.8W다. 한국 가정용 전기료 기준 연간 약 1만 원이다. 미니PC 대비 1/3 수준이라 24/7 가동의 경제성은 충분하다.
결론 — 6개월 후의 자신에게 보내는 보험
NVMe-First 빌드의 진짜 가치는 속도가 아니라 "한 번 끝낸 일을 다시 하지 않는 것"이다. SD에서 6개월 후 마이그레이션할 때 잃는 건 시간만이 아니다 — Docker 볼륨, Caddy 설정, 가족의 누적 데이터가 모두 한 번씩 위태로워진다. 초기 5만 원이 그 위험을 산다.
관련 포스트
- 라즈베리파이 5 vs N100 미니PC — 1년 홈서버 운영 후, 전기료보다 중요했던 3가지 기준
- 셀프호스팅 입문 가이드 — 첫 한 달에 무너지는 5가지 벽과 해결책
- 셀프호스팅 입문, '메모앱부터'는 흔한 실수 — 6개월 후에도 쓰는 첫 앱 4가지
📌 참고 자료
'🔬 과학·테크' 카테고리의 다른 글
| 바이브 코딩으로 만든 앱, 70%에서 멈춘다 — 마지막 30%에 숨은 4가지 비용 (0) | 2026.06.28 |
|---|---|
| 셀프호스팅 입문, '메모앱부터'는 흔한 실수 — 6개월 후에도 쓰는 첫 앱 4가지 (0) | 2026.06.27 |
| 알렉사 시리가 8년간 멈춰 있는 이유 — LLM은 음성 비서를 부활시킬까 (0) | 2026.06.26 |
| 라즈베리파이 5 vs N100 미니PC — 1년 홈서버 운영 후, 전기료보다 중요했던 3가지 기준 (0) | 2026.06.05 |
| Copilot·Cursor·Claude Code — 도구 차이보다 큰 격차는 사용자에서 난다 (0) | 2026.06.04 |