<이전글> Mini or Slim PC 로 NAS 운용해본후기 1편 : 준비과정
저같이 나스 시스템 구축 하시는분들이 있으면 도움이 될거같아 헤딩 후기를 작성해봅니다.
이전에는 NAS로 활용할 PC 선정 및 부속품 구매 그리고 우분투 설치까지 하였고
이제 본격적으로 NAS를 구성할 차례입니다.
저는 프로그램들을 직접적으로 설치하기보다는 DOCKER 라는 것 을 활용할 것 입니다.
시놀로지 NAS 쓰시는 분들도 DOCKER 많이 쓰고 계시며
이 덕에 많은 활용을 할 수 있게 되었습니다.
저도 잘은 설명 잘 못 드리겠지만 가상화 기술중의 하나 인데
OS위에 돌아가는 가상화 기술이라 하드웨어 자원을 많이 소모하지 않고
필요한 소프트웨어를 격리 시켜서 돌리는 기술입니다
설치가 복잡한 리눅스에서 도커를 사용하면 OS와 얼기설기 꼬일일이 없고
뭔가 잘못 된거 같으면 다시 시작하기도 쉽고 아니면 그 격리된 컨테이너만 날려버리면 됩니다.
| 여러개의 Guest OS에서 각각의 App을 띄우는게 아닌 하나의 종속된 OS에서 Docker 위에 각각의 컨테이너에 App을 하나씩 띄우게 되면서 OS 커널을 다른 컨테이너와 공유 할 수 있으며, 각 컨테이너는 사용자 공간에서 격리 된 프로세스로 실행됩니다. 컨테이너는 VM보다 적은 공간을 차지하고 적은 리소스를 사용하기때문에 효율이 더 좋아졌습니다. 출처 : 서버포럼 (https://test.svrforum.com/software/4302) |
게다가 설치를 위한 모든 것 들이 도커 이미지 안에 다 담겨저
기술자분들이 배포하기 떄문에 설치도 간편합니다
윈도우도 도커 설치 할 수 있습니다.
도커 설치하기
이전에 우분투를 설치하였으니 이제 본격적으로 도커를 설치하고자 합니다.
바탕화면에 오른쪽 버튼 누르고 터미널 열기 해서 터미널을 띄웁니다.
GUI 버전으로 깔긴 했지만
리눅스에서 설치는 터미널에서 진행하는 경우가 더 많다고 보심 됩니다.
그리고 아래와 같이 명령어를 한줄한줄 치면서 진행하도록 합니다. (이제부터 고생 시작입니다)

업데이트 및 HTTP 패키지 설치
$ sudo apt update
$ sudo apt-get install -y ca-certificates \
curl \
software-properties-common \
apt-transport-https \
gnupg \
lsb-release
GPG키 및 저장소 추가
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
도커엔진 설치
$ sudo apt update
$ sudo apt install docker-ce docker-ce-cli containerd.io
출처 : https://dongle94.github.io/docker/docker-ubuntu-install/
제대로 설치됐는지 확인하기 위해 설치된 DOCKER 버전 확인
$sudo docker version

위와같이 뜨면 설치가 완료됩니다
시스템 재부팅시 마다 도커가 자동 실행되도록 설정
sudo systemctl enable docker && service docker start
이로써 NAS 환경을 그려나갈 밑바탕이 완료되었습니다.
사실 DOCKER 없이 바로 파일질라, SMB, PLEXSERVER 등등 네이티브로 깔아도 상관은 없지만
DOCKER 위에 올려버리는게 잇점이 많을거라 생각합니다.
도커용 이미지 설치
저는 4가지의 도커 이미지를 설치할 겁니다.
<Portainer> ★★ ★ ★ ★
도커 이미지를 웹 상에서 관리 할 수 있게 도와주는 이미지입니다.
저같이 명령어 치는거 쥐약인 사람들은 이거 진짜 필수입니다
이거로도 왠만한 이미지 설치할수있지만 웹상에 떠도는 다양한 이미지 설치가이드는
명령어 치는 기반으로 설명이 되있긴하네요 ㅠㅠ
그래도 포테이너로 이미지 설치하는 체계
어느정도 이해하면 포테이너로 명령어 없이 설치 하실 수 있습니다.
별이 다섯개입니다
<Transmission>
토렌트 다운 및 외부에서 제가 폰으로 마그넷이나 토렌트 파일 넘기면 다운로드 실행
여기서 더 진화하면 토렌트 사이트에서 지가 알아서 RSS 읽고 자동으로 긁어오게 할수 있고
최종적으로 VPN 접목해서 추적이 안되게 할 수 있습니다. 이런것들이 도커 이미지로 올라와 있는데
전 초보 단계니까 일단 Transmission 만 ㅎㅎ..
(여기서 공유 폴더 설정부분은 직점 폴더생성하셔서 바인드하셔도 됩니다 이분은 OVM라는 Nas 프로그램
사용하셔서 그걸로 폴더 만드신겁니다)
<Nginx Proxy Manager>
네트워크 안에서만 운용할 거라면 딱히 없어도 괜찮지 않을까 싶은데
만약 외부 네트웍에서도 영상을 보거나, 토렌트를 외부에서 나스로 넘기거나
할때 설치하셔야 합니다.
192.168.aa.bb : 1234 이렇게되는 접속구성을
ccc.ddd.com 이런식으로 도메인을 덧씌우는 과정을 진행할겁니다.
<watchtower>
자동으로 도커이미지들을 업데이트 시켜줌
네이티브설치
도커 같이 가상화 혹은 컨테이너화를 통하지 않고 바로 OS안에
설치하는것을 네이티브 설치라고 하는것 같습니다
<SAMBA>
내부 네트워크 안에서 (외부말고) 파일을 공유하기 위한 수단입니다
윈도우-리눅스 간에 파일을 공유 할 수있게 도와주는 프로그램입니다.
이것을 설치함으로써 윈도우 탐색기에서 네트워크 드라이브로 추가 할 수 있습니다
혹은 Apple TV / Nvidia 쉴드 / TV내장 앱에서도 접속이 가능하게 되며 바로 다이렉트로 영상 재생 할 수 있게 됩니다
덧붙여 SMB1 은 보안이 매우 취약하다고 합니다.
SMB2 이상 쓰는 걸 권장한다고 합니다.
Server Message Block. SMB는 네트워크 상 존재하는 노드들 간에 자원을 공유할 수 있도록 설계된 프로토콜이다. 주로 네트워크에 연결된 컴퓨터끼리 파일, 프린터, 포트 또는 기타 메시지를 전달하는데 사용된다. SMB 대신 Common Internet File System, CIFS라고도 한다. SMB는 1990년에 도스, 윈도우, NT, OS/2, 유닉스 등 난잡했던 운영체제 간 자원 공유를 쉽게 해줄 목적으로 만들어졌고, 윈도우로 거의 통일된 지금도 NAS, 네트워크 스캐너 등 리눅스 기기와의 파일공유를 클라이언트 없이 탐색기로 직접 수정가능하다는 장점이 있어 아직도 널리 쓰이고 있다. 리눅스에서는 SAMBA라는 소프트웨어를 설치하면 누구나 쉽게 SMB를 이용한 공유가 가능하다.
공유학 싶은 폴더에 우클릭 후 "이폴더공유" 에 체크하시면 바로 공유됩니다.
부팅시 자동실행
$systemctl enable smbd
<Plexserver>
Plex 미디어 서버는 사용자 컬렉션과 온라인 서비스에서 비디오, 오디오 및 사진을 구성하고 플레이어로 스트리밍합니다.
제가 수집한 영상을 자동으로 넷플처럼 이쁘게 리스트만들어주고
외부 네트웍으로 스트리밍 해주는 역할을 합니다. nas 유저들이 핵심으로 사용하는 프로그램입니다
내부 네트웍에서 보시면 SMB 같은걸로 원본으로 시청하시고
외부 네트웍은 트랜스코딩을 통해 회선상황에 맞게 적정한 퀄리티로 전송해주는 역할을 합니다.
무료은 소프트웨어 트랜스코딩만 되며
유료는 하드웨어 트랜스코딩까지 합니다.
우분트 소프트웨어 (앱스토어같은거) 에서 검색해서 직접 설치하였습니다
<Teamviewer>
유명한 원격컨트롤앱...이거 깔고 이 PC에 연결한 모니터 치워버렸습니다.
근데 리눅스 팀뷰어는 Wayland인가 Xorg인가 뭔가 우쨰구 저째고해서 원격요청하면
해당 PC에서 수락눌러야 화면 나오더라구요 그래서
수락 누를필요없이 바로 화면나오게 wayland 이거 켜줬습니다. (확실히 무슨뜻인진 잘 모르겠습니다)
해상도를 많이 올릴수없어서 아쉽지만..
이렇게 원격으로 컨트롤하고 모니터치워 버림
결론 : 시놀로지 혹은 헤놀로지면...이 모든 과정이 더 쉬울수 있음...
공유기 USB 지원에도 삼바/토렌트/dlna 지원/FTP/ DDNS (위에 주소줄이기) 지원
PS 1 현재 자원소모현황 (저위에 깔린것들이 백그라운드에 돌아가고 있습니다 영상재생은 안하는상태)
PS2 전기사용량 (대기상태 영상안돌리는기준)
공유기 + 외장하드 > mini pc
대기상태만 놓고보면 mini pc가 전기는 덜나가네요...
1편 글로 마무리 같은 느낌적 느낌이었는데 2편도 바로 이어서 올라와서 놀랬습니다.ㅎㅎ
기술적으로는 Podman이 조금 앞서고 밀어주는 곳도 있긴 한데 사용자 풀이 적고 docker-compose같은 소규모 오케스트레이션 수단이 없는게 문제에요.
그냥 네이티브 설치가 정답 같아요. 쥐어짜도 성능이 안나올겁니다.