라즈베리파이로 개인용 영화 서버 만든 후기
이 글에서는 어떻게 해야 하는지에 대한 자세한 설명이 아닌, 라즈베리 파이로 서버를 만든 전체적인 방법과 어떻게 만들었는지에 대해 서술한다. 자세한 코드는 첨부하지 않았다. 라즈베리로 서버를 만들기 위한 전체적인 흐름 파악이 가능한 글이다.
영화를 다운받으면 매번 외장하드에 담아서 티비로 옮겨 USB를 꽂아야 하는 번거로움이 있었다. 또 스마트폰에서 보려면 다시 스마트폰으로 옮겨야하며, 데스크탑에서 보려면 다시 데스크탑으로 연결해야 한다.
그래서 서버를 구축해서 TV 뿐만 아니라 다른 컴퓨터, 스마트폰, 노트북에서도 볼 수 있으면 좋을 것 같다라는 생각을 했고, 라즈베리파이를 이용해서 서버를 구축해보았다. 서버를 한 번 구축하면 내 컴퓨터에서 재밌는 영화를 내려받아 서버에 올려둘 수 있고, 내가 올린 영화를 가족들이 스마트폰이나 TV에서 시청할 수 있다.
당연히 한 서버로 동시에 여러 대의 스마트폰이나 TV에서 접속하여 영화 시청이나 문서작업이 가능하다. 동시에 시청하는 것은 매우 강력한 기능인데, 넷플릭스나 PLEX같은 경우는 같은 아이디로 로그인하여 동시 시청을 허용하지 않고 있다. 그러나 이렇게 서버를 만든다면 동시에 접속이 가능하다는 큰 이점이 있다.
먼저 중요한 것은 서버를 운용할 컴퓨터가 베이스로 있어야 한다는 것이다.
집에 남는 컴퓨터가 있었는데, 이 컴퓨터를 계속 키고 있자니 전기세가 많이 나올 것 같았다.
그래서 라즈베리파이 4B(라즈베리는 개인적으로 혁신인 듯 하다)를 구매했다.
라즈베리파이는 영국에서 개발도상국 학생들을 위해 컴퓨터 교육을 하기 위해 신용카드 사이즈로 작게 만들어진 컴퓨터다.
금액은 9만원 정도였다.(컴퓨터가 9만원인 것이다! 참고로 이 9만원짜리 사양의 컴퓨터를 90년대에 얻기 위해서는 200만원(부터 400만원)정도가 소요됐던 것을 생각하면 정말 기술의 발전이 놀랍다.) 제일 싸게 구매하면 5만원 조금 넘는 선에서 구매가 가능한데, 여기에 추가로 CPU 과열 방지를 위한 라즈베리파이 전용 FAN 케이스를 구매하다 보니 2만원이 추가 됐다. 그리고 5만원짜리 라즈베리 파이는 RAM이 2기가인데 4기가짜리를 구매하여 2만원이 추가되어 총 9만원이 소요됐다. 참고로 돈을 조금 더 지불하면 8기가 짜리 RAM도 구매할 수 있다.
이 라즈베리파이 컴퓨터가 서버를 돌린다. 라즈베리파이에서 영화를 관리할 수 있으며, 추후에 라즈베리파이 IP로 접속을 해서 영화를 봐야한다. 어떻게 보면 라즈베리파이는 이 프로젝트의 핵심이라 할 수 있다.
전체적인 프로젝트는 위 사진과 같다.
1. 라즈베리 파이 구동 및 모니터 연결
먼저 라즈베리파이에 라즈베리파이 OS를 담아 원격으로 모니터와 연결한다.
라즈베리파이 OS를 SD카드에 담아 라즈베리파이에 꼽는다. 그 후 라즈베리파이에 C타입 충전기를 연결하면 자동으로 라즈비리 파이 OS를 이용하여 부팅한다.
라즈베리 파이 모니터를 따로 돈 주고 살 수도 있는데, 딱히 저렴한 가격은 아니어서 원격으로 접속하는 것을 추천한다. 모니터도 일반 스마트폰이나 태블릿만한 사이즈여서 굉장히 작기 때문에 눈이 아프다고 한다. 그래서 모니터는 따로 구매할 필요 없이 기존의 모니터로 접속할 수 있다.
기존의 모니터로 접속하는데 약간 고생했다. SD카드에 라즈베리파이 OS를 담을 때, 네트워크 관련 파일을 두 개 담아줘야 한다. ssh파일과 wpa_supplicant.conf파일인데, 이 파일이 자동으로 와이파이를 잡는다. 이렇게 하면 라즈베리파이에 IP가 할당되는데, 이 IP를 통해 기존에 사용하던 데스크탑이나 노트북에서 접속이 가능하다. Putty라는 데스크탑 애플리케이션을 이용해서 접속할 수 있고, 윈도우 터미널(cmd)에서 "ssh pi@raspberry.local" 또는 "ssh (라즈베리IP주소)"를 통해 접속할 수도 있다.
위 사진은 PuTTY를 통해 접속하는 화면이다. 아무것도 만지지 않고 위에 Host Name(IP address)에 IP 라즈베리파이 IP 주소를 입력하면 접속이 가능하다.
위 창은 접속에 성공했을 때 창이다. 윈도우 GUI의 발전으로 이와 같은 터미널이 익숙치 않은 사람들이 많을 것 같다. 그래서 원격 데스크톱 접속으로 라즈베리 OS GUI에 접속이 가능한데 방법은 아래와 같다.
윈도우 검색에서 "원격 데스크톱 연결"을 찾아 클릭한다.
클릭하면 다음과 같은 창이 나온다. 여기서 라즈베리 파이 IP 주소를 입력하고 연결을 클릭한다. 그러면 경고 창이 하나 나오는데 그냥 예를 누른다.
그러면 다음과 같이 엄청 오래된 윈도우의 GUI같은 것이 하나 뜨는데 여기서 username과 password를 입력하고 접속하면 라즈베리 파이 OS가 나온다. 그러면 성공적으로 라즈베리 파이에 접속한 것이다. 초기 username은 pi이고, password는 raspberry다. 첫 로그인을 하게 되면 비밀번호 바꿀 수 있는 창이 나오니, 그 때 보안상 바꿔주자.
2. 영화 또는 기타 영상매체가 있는 하드(HDD)와 연결
윈도우에서는 mount 처리를 알아서 해주지만 라즈베리 파이 OS나 리눅스에서는 수동으로 mount 처리를 해줘야 한다. 마운트라고 해서 어려운 것이 아니라, 그냥 USB를 인식시켜주는 것으로 생각하면 편하다. 단 이 mount 작업을 하지 않으면 HDD 안에 있는 파일을 확인하지 못하니 제대로 해주자. HDD를 연결 했을 때, 라즈베리 GUI로 접속한 화면에서는 "마운트하시겠습니까?"라는 창이 뜨는데 여기서 하겠다고 하면, 자동으로 마운트가 된다. 그러나 독자가 원하는 위치에 마운트를 시키기 위해서는 언마운트(명령어 : umount(unmount아님))한 후, 다시 원하는 위치에 mount해주면 된다. 이 방법은 추후에 서버와 연결 해주기 위해 필요한 부분이니 하는 것을 추천한다.
fdisk -l 명령어를 통해 연결된 장치들을 확인할 수 있다. sda1, sdb1, sdc1에 각각 1테라, 2테라, 2테라 바이트의 저장장치들이 연결된 것을 확인 가능하다.
이후에 mount /dev/sda1 /pi 와 같은 식으로 마운트를 시킨 후 마운트 시킨 위치에 가면 HDD에 있는 데이터들을 확인 가능하다.(명령어 : mount sda위치 mount해서파일을보려는위치)
라즈베리 파이에 연결된 하드들이다. 5테라도 문제 없이 정상적으로 인식한다.
3. 서버 구축
HDD와 연결이 모두 끝나면 이제 서버를 구축해야 한다. 서버 구축이 필요한 이유는 구축한 서버를 통해 다른 전자기기에서 접속이 가능하도록 하기 위함이다. 이용할 서버는 Samba(SMB)서버로 어렵지 않게 구축이 가능하다. Samba 서버 구축이 완료가 되면 위에서 HDD를 mount했던 폴더를 공유폴더로 설정한다. 이제 여기서부터 다른 전자기기에서 접속이 가능하다.
4. 다른 기기에서 접속해보기
4.1. 먼저 윈도우에서 라즈베리로 접속해보자.
윈도우 검색에서 \\17X.XX.X.X(라즈베리 IP는 19로 시작할 수도 있고, 또 다를 수도 있다.)와 같이 라즈베리 IP 주소를 입력한다. 앞에 역슬래시나 \ 두 개 입력해야하는 것을 주의하자.
그러면 이와 같이 네트워크 아래에 라즈베리 파이 IP 주소가 생기며, 공유 폴더로 설정했던 폴더들이 생긴다.
여기까지 나오면 윈도우에서 접속이 성공한 것이다. 영화감상, 문서 작업 등 일반 폴더처럼 모두 사용이 가능하다.
*그런데 영화 감상할 때 smi파일이 있음에도 불구하고 gom player 등 다른 플레이어들이 자막을 인식하지 못하는데 이 때 KODI 플레이어를 사용하면 인식이 가능하다. 윈도우 뿐만 아니라 Android, IOS에서도 KODI 사용하는 것을 추천한다.
4.2 안드로이드 및 IOS에서 접속하기
안드로이드에서 영화 보기 위해 접속하려면 KODI 어플리케이션을 이용하자.
[다운로드 링크] <= 참고로 광고가 아니며, 이미 안드로이드에서만 1000만 다운로드가 된 검증된 어플리케이션이다.
그러면 위와같이 공유했던 파일들이 뜬다.
영화감상이 아닌 문서 공유를 하려고 했다면 rs 파일 탐색기를 이용하면 된다. rs 파일 탐색기 이외에도 다른 어플리케이션이 많다.
4.3 TV에서 접속하기
위 "안드로이드 및 IOS에서 접속하기"에서 했던 것처럼 TV에서 KODI 어플리케이션을 다운로드 받으면 된다. 필자는 TV에 U5Mini가 연결되어 있어 안드로이드 TV를 이용할 수 있는데, 필자와 같이 안드로이드 TV가 있다면 KODI를 TV Android Play Store에서 다운로드 받으면 된다.
5. 마무리
- 지금까지 대략적으로 개인용 영화 서버를 구축하고, 어떻게 볼 수 있는지 확인해보았다.
- 이렇게 서버를 구축하면 꼭 영화 시청 뿐 아니라, 다양하게 이용할 수 있어 범용적이다.
- 추후에 애플리케이션을 만들 때 라즈베리 파이를 통해 서버를 구축해 볼 수 있을 것 같다.
'프로그래밍' 카테고리의 다른 글
소프트웨어학과 2학년 여름방학 회고와 고민 (0) | 2020.09.01 |
---|---|
프로그래밍 언어 통계량 확인 사이트 소개 (0) | 2020.07.26 |
Server Error 500 Github 서버 현황 사이트 (0) | 2020.07.13 |
[21년 3월 업데이트]구글 크롬 밑줄 버그 해결방법 (2) | 2019.07.02 |