라즈베리파이/토렌트 미디어 서버 만들기

(3) 드라마/영화 등 자동으로 다운로드하는 NAS서버 만들기 #3 트랜스미션 설치

아크리엑터 2019. 5. 26. 18:54
반응형

1. 라즈베리파이에 트랜스미션 데몬 설치하기

 

가. 라즈베리파이에 rasbian 설치된 상태에서 아래를 설명한다.

 

나. transmission 서버 다운로드 설치

 

     1) 명령어:  sudo apt-get install transmission-daemon 실행

     2) 이때, 사용자의 비번을 추가로 입력하면, 아래의 화면과 유사하게 transmission-daemon이 설치된다. 아래의 사진은 이미 설치된 상태에서 실행한 것이라서, 이미 설치되었다고 나온다.

 

다. transmission-daemon 세팅

     1) transmission을 설정을 하기 위해서는 transmission-daemon이 이미 실행중인 경우에는 설정을 하더라도 적용이 되지 않기 때문에, 아래의 명령으로 transmission-daemon 실행을 우선 중지를 한다.

     2) 명령어: sudo service transmission-daemon stop

     3) 다음으로, transmission-daemon의 설정 파일(/etc/transmission-daemon/settings.json)을 vi로 열어서, 아래의 정보를 수정한다. transmission의 설정 파일은 일반유저 권한으로는 조회가 되지 않으므로, 아래 처럼 sudo명령을 사용하거나 root계정으로 직접 수정할 수 있다. 내 경우에는 거의 root계정으로 로그인하지 않도록 하고 있어서, sudo명령을 자주 사용하고 있다.

     sudo vi /etc/transmission-daemon/settings.json

 

     4) 내용 중에서 몇가지 항목의 값을 조정하였다. 조정한 부분만 아래에 표시하였다.

    "download-dir": "/media/nas/torrent",   -> 파일이 저장될 폴더를 지정한다. 존재하는 폴더로 설정해야 한다.(읽기 쓰기가 되어야함)

    "incomplete-dir": "/media/nas/torrent/tmp",    -> 다운로드 파일을 별도 폴더에 보관함.

   "incomplete-dir": "/tmp",    -> 다운로드 중인 파일을 NAS의 디스크에 저장하게 했을 때, NAS연결로 인한 지연이 큰 것으로 보여서, 다운로드는 로컬 디스크로 받고, 다운로드 완료가 되면 NAS디스크로 이동 시키는 방식으로 변경함.

   "incomplete-dir": "/home/userid/bot/torrent/tmp",    -> 위의 tmp 폴더로 정의를 하니, OS를 리부팅하면 clear되어서,.... 리눅스를 만진지 하도 오래되어서 시행착오가 많다. 폴더를 사용자 계정 내에 저장되게 한다. 이 폴더는 transmission-daemon에서 접속해서 조회/저장할 수 있도록 해야 하기 때문에,  chmod 777 /home/userid/bot/torrent 명령으로 폴더 접속을 허용해야 한다. 다른 폴더로 변경해도 된다.(물론, 그 상위 폴더인, /home/userid , /home/userid/bot , /home/userid/bot/torrent폴더의 접근권한도 777로 등록되어야 한다.)

 

    "rpc-enabled": true,      

    "rpc-username": "pi",    -> 웹화면에서 사용할 사용자의 계정이름

    "rpc-password": "{681e9ac475f2161a5280a130770d86bbd7e0e8fcumWefGrj",   -> 사용자 계정의 비번, PlainText의 비번을 " "사이에 적어둔 후, transmission-daemon이 실행되면 비밀번호를 왼쪽 처럼 치환한다.

    "rpc-port": 9091,    -> transmission 접속용 포트

    "rpc-whitelist-enabled": false,

    "umask": 0,           -> 다운로드 되는 파일의 모드를 777로 만듦. 보안 무시하고 사용 편의성 측면에서...

    "watch-dir": "/media/nas/torrent/tmp",    -> 토렌트시드 정보가 저장되는 폴더

    "watch-dir-enabled": true

위의 항목 중에서, 없는 항목이 있다면, 추가해 넣으면 됨. 위와 같이 transmission의 설정파일을 수정한 후, 아래의 명령어를 사용하여 transmission-daemon을 기동 시킨다.

 

라.  transmission-daemon 기동

  1) "나"항 까지 수행한후에 아래의 명령어로 transmission-daemon을 수행한다.

       - 명령어: sudo service transmission-daemon start 

2) 정상적으로 transmission-daemon이 수행되었는지를 아래의 명령어로 확인한다. 정상적으로 기동되었을 때는 아래의 사진과 유사하게 나온다.

     - 명령어: ps -aux | grep transmission

3) "나"항의 환경 설정을 할 때 등록한 비밀번호가 어떻게 바뀌었는지를 확인하면 다음과 같이 바뀌어 있는 것을 볼수 있다.

     - 명령어: sudo vi /etc/transmission-daemon/settings.json

 

 

2. 트랜스미션 접속

 

  가. 공유기의 DDNS로 설정된 주소의 9091 포트로 접속을 한다.

 

       내 공유기 환경에서는 라즈베리파이를 DMZ구간에 있는 것으로 설정하여, 특정 몇 종의 포트를 제외하고는 모든 패킷은 라즈베리파이로 연결되게 하였다.   접속된 화면에는 ID와 비밀번호를 입력받게 되는데, 이 정보는 transmission 설정을 할 때, 입력한 ID와 passwd를 입력하도록 한다.

 

    나. 로그인이 되면, 트랜스미션 웹 UI가 화면에 출력된다. 아래와 같다.

 

     다. 토렌트파일이 정상적으로 다운로드 되는지를 아래와 같이 시험해 보며, 오류가 있을 경우에는 그 원인은 케바케로 찾을 수 밖에 없다.

 

    라. 'Upload'버튼을 선택하여 토렌트 파일을 다운로드 받고 있다....

 

    마. 그런데, 몇 분 있다가 아래의 오류 메시지가 나온다.. T.T Permission deined... 머시기...

 

   바. 그 사유는...

이전 글에서 공유기에 SDD를 설치하면서 윈도우/맥에서 접속은 기본적으로 되도록 될터인데... 라즈베리파이에서는 별도의 설정을 해줘야지만 접속이 되네... 이것을 빼뜨려서... T.T   다시 말을하면, transmisstion-daemon을 설정할 때, 토렌트파일이 다운로드되는 폴더를 /media/nas/torrent 로 설정을 하였었는데, 그 NAS폴더로 연결이 안되어 있었던 문제였다.

쉽게는 /media/nas/torrent 폴더를 mkdir 명령으로 생성해주면 간단하게 해결되겠지만, NAS의 디스크를 사용한 것이 아니어서, 원래 목적을 달성할 수 없을테니...  라즈베리파이의 공유폴더를 설정해야 겠다.

 

 

사. 라즈베리 파이의 공유폴더 설정하는 것은 이전 포스팅한 NAS환경 설정하는 부분에 추가해야 겠다.

      - 이전에 포스팅한 글에 설명 추가를 하였다.

아. 이제, 설정을 완료한 트랜즈미션 프로그램이 정상적으로 작동되는지를 시험해본다.

     - 잘 아는(?) 토렌트 사이트에서 필요한 토렌트 파일을 다운로드하고, 맨 왼쪽 상단에 있는 파일업로드(토렌트 파일) 메뉴를 선택하여, 토렌트 파일을 업로드한다.

     - 그리고, 수초를 기다리면, 화면에는 다음과 같은 정상적으로 다운로드 받는 화면이 나온다.

 

자. 다운로드가 완료되면, NAS의 공유폴더에 다운로드한 파일이 저장되어있는지를 확인해본다. 만일 설정한 폴더에 보관되어있지 않다면, 공유 폴더 설정 및 파일 권한을 재확인해봐야 한다. 아래와 같이 다운로드가 완료된 파일이 보관되어있으면 설정은 완료한 것이다.

반응형