웹사이트 검색

나는 오래된 노트북으로 NAS를 만들었다—리눅스가 나에게 어렵게 가르쳐준 것


저는 최근에 집에 놀고 있던 오래된 노트북을 하드 드라이브와 USB-C 허브를 추가하여 처음으로 임시 NAS로 재활용했습니다. 처음에는 주로 호기심 때문에 시작했는데, NAS를 갖는 것이 어떤 느낌인지 보기 위해서였습니다. 빠른 주말 프로젝트가 될 줄 알았던 것이 곧 지속적인 학습 경험으로 변했지만, 그래도 기쁘게 생각합니다.

이것은 내가 처음으로 리눅스를 사용해본 것이었고, 그래픽 사용자 인터페이스가 없는 서버는 말할 것도 없었으며, 그 과정에서 많은 실수를 저질렀습니다. 이제 뒤늦은 깨달음을 바탕으로, 시작하기 전에 누군가가 나에게 알려주었으면 하는 몇 가지를 공유하고 싶습니다.

즉흥적으로 하려고 하기보다는 시작하기 전에 계획을 세우세요

조금의 준비가 많은 되돌아감을 줄여준다






이 글에서 하나의 조언만 가져간다면, 그것은 이겁니다: NAS의 기반을 마련하기 전에 구체적인 계획을 세우는 것은 선택이 아닙니다. 믿으세요, 그러면 과정에서 많은 골칫거리를 피할 수 있습니다.

첫 번째 결정은 어떤 하드웨어를 구매할지입니다. Synology와 같은 NAS 인클로저는 가장 명확한 선택이지만, 매우 비쌉니다. 오래된 eBay 서버나 데스크톱 PC는 가장 강력하고 다재다능한 솔루션이지만, 미니 PC나 오래된 노트북을 운영하는 것에 비해 전력 효율이 훨씬 낮습니다. 오래된 안드로이드 폰이나 TV 박스조차도 괜찮은 NAS가 될 수 있습니다.

NAS로 무엇을 하려는지에 따라 전적으로 달라집니다. 단순히 네트워크 저장 용도라면 기본적인 것만으로도 충분합니다. 반대로 여러 스트림을 지연 없이 제공할 수 있는 강력한 미디어 서버를 만들고 싶다면, 필요한 최소한의 조건은 Quick Sync를 지원하는 10년 된 Intel CPU입니다.

제 오래된 노트북에는 i5-7200U가 있고, 6TB 외장 하드 드라이브가 제 저장 필요를 충족시켜 NAS를 위한 탄탄한 기반을 제공했습니다.

정말 골치 아픈 문제는 적절한 리눅스 배포판을 선택할 때 시작됩니다. 자신이 편하게 사용할 수 있는 것을 사용해야 하지만, 선택한 하드웨어에서 실행할 수 있고 원하는 모든 기능을 지원해야 합니다. GUI가 없는 우분투 서버는 성능이 낮은 하드웨어에서도 놀라울 정도로 잘 작동하지만, UI가 있는 것을 더 편하게 느낀다면 TrueNAS나 OpenMediaVault 같은 것이 더 잘 맞습니다.

단순히 하드웨어와 배포판을 넘어서, 드라이브 구조의 대략적인 개요를 만들고, 파일을 어떻게 어디에 저장할지(예: 앱용 SSD와 미디어용 하드 드라이브), 앱을 Docker 컨테이너에서 실행할지, 어떤 앱을 시도할지 등을 계획해야 합니다. 믿으세요, 먼저 계획을 세우면 전체 설정이 훨씬 더 쉬워집니다.

터미널을 무서워하지 마세요—헤드리스 설정은 작업을 쉽게 만듭니다

NAS를 원격으로 관리하기

오래되고 구식인 노트북과 같은 성능이 낮은 장치에서 NAS를 운영하고 싶다면 가능한 모든 시스템 자원을 확보해야 합니다. 제 오래된 노트북은 CPU 코어가 2개이고 RAM이 4GB뿐이어서, GUI 없는 서버 배포판을 사용하여 자원을 확보하는 것이 중요한 결정이었습니다.

처음에는 터미널을 사용하는 것이 꽤 위협적으로 느껴졌지만, 익숙해지고 나니 클릭으로 사용자 인터페이스를 사용하는 대신 내 기계와 '대화'하는 수동적인 경험이 실제로는 꽤 마음에 들었습니다.

더 큰 문제는 그것이 나에게 초래한 불편함이었습니다. 노트북 화면이 고장 나서 USB-C 허브와 내 PC의 모니터 중 하나를 사용해야 했습니다. 하지만 NAS를 PC에서 SSH를 통해 원격으로 관리할 수 있다는 사실을 알게 되었고, 네트워크 설정이 바뀌거나 노트북이 꺼질 때 켜기 위해서만 노트북을 물리적으로 접근해야 한다는 것을 알게 되면서 모든 것이 훨씬 더 편리해졌습니다.

접근 권한을 설정한 후에는 메인 PC 앞 책상에 앉아 Windows PowerShell을 통해 모든 것을 제어할 수 있었고, 깨진 화면을 다룰 필요가 없어졌습니다.

AI 도구는 도움이 될 수 있지만, 여러분의 프롬프트가 정확할 때만 가능합니다.

당신은 스스로 만든 문제를 해결하느라 몇 시간을 보내게 될 것입니다

ChatGPT나 Gemini와 같은 도구는 Docker(또는 Docker 자체)에 앱을 설치하려면 어떤 명령을 실행해야 하는지, 그리고 어떻게 구성해야 하는지를 알려줄 수 있지만, 문제는 이 도구들이 유용한 정도가 제공하는 정보에 달려 있다는 것입니다.

NAS 설정을 반쯤 진행하다가 ChatGPT에 Duplicati를 설치하는 방법을 물어보면서 Docker에서 앱을 실행 중이라는 것과 저장소 구성이 어떻게 되어 있는지를 말하지 않으면, 일반적인 설치 가이드를 제공할 것이고, 그로 인해 서버가 엉망이 될 수 있습니다. 내가 어떻게 아는지 묻지 마세요.

일반적인 질문을 하는 대신, 프롬프트를 시작할 때 정확한 설정, 저장 드라이브 구성, 설치하려는 특정 앱과 관련될 수 있는 모든 세부 사항을 설명하세요.

가능할 때마다 검증된 가이드를 따르세요

이미 해결된 것을 다시 발명하려고 하지 마라

서버에서 Jellyfin에서 Intel Quick Sync를 작동시키는 방법을 알아내기 위해 몇 시간을 보냈고, 결국 해결한 것 같았습니다. 그러나 제 노트북이 비디오를 트랜스코딩해야 할 때, 비록 1080p일지라도 여전히 같은 프레임 드롭 문제가 발생했습니다.

동료 패트릭에게 그것에 대해 물어본 후, 그는 문제 해결 단계를 자세히 설명해 주었고, 젤리핀(Jellyfin)이 실제로는 인텔 퀵싱크(Intel Quick Sync)로 하드웨어 가속을 사용하지 않고 CPU에 의존하고 있다는 것을 알아내는 데 1분도 채 걸리지 않았습니다.

그는 나에게 공식 설치 가이드를 따르라고 지시했으며, 불과 몇 분 만에 내 Jellyfin은 필요할 때 올바르게 Quick Sync를 사용하여 디코딩할 수 있게 되었다.

요점은, AI 도구를 사용해서 즉흥적으로 하려 하기 전에 항상 온라인에서 실제 가이드를 찾아야 한다는 것입니다.

어려움을 겪고 있다면, 가이드의 일부를 AI 도구에 복사해서 붙여넣고, 자신의 설정과 시도하려는 것을 설명한 후 거기서부터 시작할 수 있습니다.

NAS를 인터넷에 연결하는 것은 보이는 것보다 더 복잡합니다

편리함에는 몇 가지 실제적인 단점이 따른다

네트워크 외부에서 NAS에 원격으로 접근하도록 설정하는 것이 가능하지만, 모든 것을 로컬에 두는 것과 비교했을 때 몇 가지 주요한 타협과 복잡성이 따릅니다.

접근 권한을 얻는 일반적인 방법은 포트 포워딩을 통해서이지만, 설사 올바르게 수행하더라도 위험합니다. 자체 호스팅 VPN은 훨씬 안전한 해결책이지만, 암호화 오버헤드를 추가하여 지연을 초래하고 오래되거나 성능이 낮은 하드웨어의 시스템 자원을 압박할 수 있습니다.

솔직히 말해서, 네트워크 외부에서 NAS에 꼭 접근해야 할 필요가 없다면 파일을 로컬에 보관하는 것이 훨씬 쉽고 안전합니다. 이동 중에 접근이 필요할 경우 중요한 파일이나 미디어를 휴대폰이나 노트북으로 옮길 수도 있습니다.

NAS가 설치되어 작동하기 시작하면, 금세 집에서 가장 좋아하는 물건으로 자리 잡을 것입니다.

NAS를 설치하는 데는 시간이 걸릴 수 있습니다, 특히 직접 만드는 경우라면 더욱 그렇지만, 그 노력은 절대적으로 가치가 있습니다. 저는 NAS가 필요 없다고 생각하다가, 이제는 주방 구석에서 제 데이터를 저장하고 있는 작은 장치를 완전히 사랑하게 되었습니다—다만 프로젝트를 시작하기 전에 제대로 된 계획을 세웠더라면 좋았을 것 같습니다.

관련기사