Kim Seungmin _
그램 홈서버 구축기
그램이와 함께하는 내 홈서버 만들기 - 파일 공유
그램이와 함께하는 내 홈서버 만들기 - 파일 공유 썸네일

그램이와 함께하는 내 홈서버 만들기 - 파일 공유

2025년 12월 22일 · 그램 홈서버 구축기

001.png

SSH를 통한 원격 접속은 잘 작동된다. 이제 서버 건들 때마다 집가서 그램이를 열 필요가 없어진 것이다. 이후로 딱히 불편함 없이 잘 살고 있었는데, 어느날...

Pasted-image-20251222130747.png 친구가 예전에 찍은 영화를 갑자기 보고 싶다고 한다. 근데.. 이건 외장하드에 있었음.

내가 언제 집에 가서 외장하드 찾고 -> A to C 젠더를 찾은 다음 -> micro B to A 케이블에 물려서 연결하고... 이걸 하겠는가.

그리고... Pasted image 20251222131021.png 조금은 부담스러운 아이클라우드 가격.

작년까지만 해도 난 모션그래픽 디자이너였기 때문에, 수많은 영상/3D 파일을 관리할 넉넉한 공간이 필요해서 2TB를 턱턱 결제해서 쓰고 있었다.

하지만 지금은 프론트엔드 개발자이므로 저정도까진... 필요없고, 또 개발 파일을 클라우드에 저장한다는 것부터 문제가 많으므로 200GB면 충분하지 않나.. 라는 생각이다.

사실 개발 파일도 클라우드에 저장하면서 썼었는데, 뭐만 하면 아이클라우드가 로컬 파일 지우고 백업해버려서 울면서 쌩 로컬로 바꾼 것 Pasted image 20251222131017.png 앨범에 있는 영상 좀 정리하고 아이클라우드 적당히 정리하면 되지 않을까?

그래서 시작되는 홈서버(리눅스 서버)를 NAS로도 사용하기 프로젝트

일단 젬민이에게 궁금한 거 다 물어봄.

Q. 내 홈서버 컴에 외장하드 물리면 ssh로 접근 가능함?

-> 되긴 하는데... 윈도우나 맥처럼 바로 띠링 되는 건 아님

에..? 왜 바로 안되는디요...

핵심 비유: "자율주행차(윈도우) vs F1 레이싱카(리눅스 서버)"

이 차이를 이해하면 억울함이 좀 풀리실 겁니다.

  • 윈도우/맥 (GUI): 최첨단 자율주행 세단입니다.
    • 운전석에 앉으면(USB 꽂으면) 차가 알아서 시동 걸고, 에어컨 틀고, 네비게이션 켭니다. (자동 마운트)
    • 장점: 세상 편함.
    • 단점: 내가 에어컨 끄고 싶어도 차가 "아님. 지금 더움." 하고 맘대로 켤 때가 있음. 그리고 기름(RAM, CPU) 을 엄청 많이 먹음.
  • 리눅스 서버 (CLI): F1 레이싱카입니다.
    • 이 차는 에어컨? 오디오? 네비? 다 떼어버렸습니다. 오로지 '속도'와 '효율' 만을 위해 태어났습니다.
    • 드라이버(햄)가 "엔진 켜"라고 명령하지 않으면 절대 안 켭니다. 외장하드를 꽂아도 "어, 무게가 늘었군" 하고 끝입니다. "연결해"라고 명령해야 연결합니다.
    • 장점: 기름(자원)을 거의 안 먹고, 미친 듯이 빠르고 안정적임.
    • 단점: 컵홀더조차 없어서 드라이버가 물통을 손에 들고 타야 함(수동 마운트).

2. TMI 파트 1: "GUI는 사실 뒤에서 엄청난 노가다 중이다"

햄이 윈도우에서 USB를 꽂았을 때 "띠링~" 하고 뜨는 게 마법 같죠? 사실 윈도우는 뒤에서 '탐색기(Explorer)''이벤트 감지 서비스' 라는 녀석들이 24시간 내내 눈을 부릅뜨고 감시하고 있습니다.

"야, 뭐 들어왔냐? USB냐? HDMI냐? 들어왔다! 야 드라이버 가져와! 야 D드라이브 잡아! 야 팝업 띄워!"

이 짓을 하느라 윈도우는 아무것도 안 해도 램을 4GB, 8GB씩 잡아먹는 겁니다.

반면, 리눅스 CLI(서버) 는 이 '감시자'들을 다 해고했습니다. 왜냐? 서버는 자원이 생명이라서요. 고작 USB 꽂는 거 감시하겠다고 소중한 램을 낭비할 수 없다는 구두쇠 정신이 리눅스 서버의 철학입니다. 그래서 햄이 직접 "야, 이거 연결해"라고 말해줘야 하는 겁니다.


3. TMI 파트 2: "서버의 미덕은 '침묵'이다"

서버 엔지니어들 사이에는 이런 격언이 있습니다. "예상치 못한 동작은 버그다."

만약 햄이 100TB짜리 외장하드를 꽂았는데, 리눅스가 윈도우처럼 자동으로 "오! 연결할게!" 하고 냅다 읽기 시작했다고 쳐봅시다. 그 안에 파일이 수억 개라면? 서버는 그거 읽느라(인덱싱 하느라) 갑자기 멈춰버리거나, 웹사이트 접속이 느려질 수 있습니다.

서버 입장에서는 "주인님이 명령하기 전까진 숨도 쉬지 마라" 가 최고의 안정성입니다. 그래서 외장하드를 꽂아도, 햄이 mount 명령어로 "지금부터 안전하니까 연결해"라고 승인하기 전까지는 철저하게 무시하는 겁니다. 일종의 안전장치인 셈이죠.

-> 이거 나중에 AI 대화 마크다운으로 할 수 있게 바꾸기,, 중간에 내용 생략 되게

라고 한다.

뭐 암튼 세팅 해주고,

생각해보니 맥이든 윈도우든 탐색기에서 바로 네트워크에 접근 가능하게 해주는 기능이 있었던 게 생각이 나서, 이것도 젬민이에게 물어봤다.

samba를 쓰란다.

이름이 몹시 특이해서 절대 잊을 일은 없을 듯 하다.

이게 원래 SMB라고 윈도우만 쓰던 거였는데, '앤드류 트리젤'이라는 천재가 역공학으로... 해독해서... Samba를 만들었다고 한다. 이후 윈도우도 결국 포기하고 문서 공개를 해버렸다고 함.

아? 그럼 다른 것도 있다는 건가?

NFS(리눅스)랑 AFP(애플)이 있는데, NFS는 좀 복잡하고 AFP는 사실상 죽은 상태라 Samba가 젤 낫단다.

아니면 HTTP를 마개조해서 만든 WebDAV라는 것도 있는데, HTTP 자체가 무거워서 굳이?