• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글
정보

플렉스 미디어 서버 운용 미세팁.. (inotify 문제, 플렉스 라이브러리 외부 새로고침)

꾀지남편 꾀지남편 523

3

7

IMG_1670.JPG

 

저희집 미디어를 담당하는 귀염둥이 나스입니다.

과거 2베이 나스로 운용할때는 사진만 관리하다 보니 자연스래 미디어 데이터가 서버와 동일한 호스트에서 동작했었습니다.

올해 RMA를 다녀온 싱싱한 4베이로 업그레이드를 하면서 미디어 데이터를 이관했더니 고민이 생긴 부분이 있었습니다.

 

 

 

스크린샷 2023-07-31 133838.png.jpg

 

바로 NFS 또는 삼바를 미디어 저장소로 사용시 새로 다운로드 받은 미디어가 추가되면 inotify 미지원 문제로

같은 망내 윈도우로 따로 구동 중인 플렉스 서버에 자동으로 추가가 되지 않고, 수동으로 플렉스에서 직접 라이브러리를 갱신해야만했습니다.

 


이게 상당히 신경쓰이는 부분인게 장관님을 위해 운용중인 서버다 보니 자동 다운로드 자체는 Tsharp 등의 컨테이너로 본인이 관리 가능하지만

아무리 설명하려고 해도 장관님은 플렉스 설정화면의 라이브러리 갱신이 익숙해지질 않습니다.

다운로드 완료 알림은 나오는데 실제 파일은 플렉스에서 보이질 않으니 장관님도 울고 저도 우는 상황이었습니다.

 

저는 이 문제를 해결하기 위해 몇가지 시도를 해보았습니다.

 

 

2023-07-31 12 47 46.jpg

가장 먼저 소나르~~ 입니다.

해외 영화나 시리즈의 경우 Radarr 또는 Sonarr를 이용해 관리하고 있어 별도의 새로고침이 필요 없습니다.

이는 두 컨테이너 모두 다운로드가 완료되면 별도로 플렉스의 라이브러리 새로고침을 트리거해주기 때문입니다.

 

몹시 편리한 기능이지만 sonarr에서 국내 자료의 경우 적합하질 않습니다.

(따로 토렌트 인덱서라도 구축할게 아니시라면..)

이와 같은 Plex-Autoscan이라는 프로젝트 역시 일일이 스캔 경로를 추가하는등

단독 실행이 깔끔하게 되는 도커의 경우에도 설정이 복잡하고 수동적으로 보입니다.

 

이를 sonarr에서 트리거 하도록 수정해보려고 했으나 그렇게 되면 시즌이 많은 시리즈를 걸어두는 순간 라이브러리 갱신을 수없이 다시하게 될 것이라 마땅치 않았습니다.

 

 

 

2023-07-31 12 37 55.jpg

왜 이런 수요들이나 정보가 없을까? 싶어 알아보니 이젠 플렉스에서 이 기능을 더욱 쉽게 제공합니다.

https://플렉스IP/library/sections/1/refresh 주소로 X-Plex-Token 만 헤더로 넘기면 전체 라이브러리 새로고침이 가능합니다.

라이브러리 번호나 패스를 직접 넘겨서도 사용이 가능하지만 저는 건수가 잦질 않으니 간단하게 전체 라이브러리를 갱신하도록 전체옵션 그대로 사용했습니다.

 

 

 

#!/bin/sh
# Telegram configuration"
SERVER="트랜스미션_IP:트랜스미션_PORT --auth 트랜스미션_아이디:트랜스미션_비밀번호"

# Telegram token
TOKEN='텔레그램:토큰'

# Telegram CHAT_ID
CHAT_ID="텔레그램_챗아이디"
URL='https://api.telegram.org/bot'$TOKEN
MSG_URL=$URL'/sendMessage?chat_id='

sleep 1s

# torrent remove
TORRENTLIST=`transmission-remote $SERVER --list | sed -e '1d;$d;s/^ *//' | cut -s -d " " -f 1`
for TORRENTID in $TORRENTLIST

do
DL_COMPLETED=`transmission-remote $SERVER --torrent $TORRENTID --info | grep "Percent Done: 100%"`
STATE_STOPPED=`transmission-remote $SERVER --torrent $TORRENTID --info | grep "State: Seeding\|Stopped\|Finished\|Idle"`
if [ "$DL_COMPLETED" ] && [ "$STATE_STOPPED" ]; then
transmission-remote $SERVER --torrent $TORRENTID --remove

# Telegram message send
curl --data-urlencode "text=$TR_TORRENT_NAME 파일의 토렌트 다운로드가 완료되었습니다." "$MSG_URL"$CHAT_ID"&"

# plex refresh
curl -H "X-Plex-Token:플렉스토큰" "http://127.0.0.150:32400/library/sections/1/refresh"

fi
done


제가 사용중인 트랜스미션의 done.sh 입니다.

텔레그램으로 다운로드 완료 알림을 보내고 완료된 토렌트를 목록에서 제거합니다.

 

다음으로 # plex refresh 항목의 한줄만 추가해주시면됩니다.

플렉스 토큰을 이용해 내부 IP로 윈도우 플렉스 서버의 라이브러리 새로고침을 호출하도록 했습니다.

이렇게 설정하면 토렌트 다운로드가 완료되는 시점에 라이브러리 새로고침까지 진행하게됩니다.

 

 

2023-07-31 13 01 28.jpg

플렉스의 토큰을 얻는 방법은 간단합니다.

아무 미디어에서나 [정보 가져오기]를 선택합니다.

 

 

 

 

2023-07-31 13 01 42.jpg

다음은 정보보기 창 아래의 [XML 보기]를 눌러주세요.

 

 

 

 

스크린샷 2023-07-31 130209.png.jpg

새창에서 열린 웹페이지의 주소 표시줄 마지막에 있는 X-Plex-Token 이 여러분의 플렉스 토큰입니다.

이를 복사해서 토큰으로 이용하시면 되겠습니다.

 

해외 시리즈가 아닌 국내 시리즈 한정이지만 자동화 시에 저처럼 외부 저장소를 사용하는 경우라면..

위처럼 트리거해서 간단하게 갱신이 가능했습니다.

 

제가 모르는 또 다른 좋은 방법이 있다면 댓글로 알려주세요.

감사합니다.

신고공유스크랩
7
1등
훔친수건 2023.07.31. 16:52

전체 라이브러리를 스캔하고자 한다면 section 번호를 all 로 하면 될 겁니다. "https://플렉스IP/library/sections/all/refresh". plex_autoscan 은 스캔 요청을 모아서 설정된 시간 주기별로 한번에 처리합니다. 그 과정에서 동일한 폴더에 포함되어 있는 파일들은 한번만 플렉스에 스캔 요청을 하죠. 또한 새로 추가된 파일의 폴더만 부분 스캔을 할 수 있어서 전체 스캔의 부담을 줄일 수 있습니다. 여기에 파이썬 watchdog 처럼 polling 방식의 파일 감지를 지원하는 패키지까지 연동한다면 inotify가 먹히지 않는 환경에서도 자동 스캔을 어느 정도 구현할 수 있을 겁니다. 그래도 제일 간단하고 확실한 방법은 플렉스의 "내 라이브러리를 주기적으로 스캔" 하는 것이라고 봅니다.

profile image
꾀지남편 글쓴이 2023.07.31. 20:43
훔친수건

일단 done.sh 설정이 아무래도 간단해서 당분간은 위처럼 사용할 것 같습니다.
섹션번호를 1로 두었을 때에도 어째선지 전체 리이브러리 스캔이 진행되는 것 처럼 보여, 정확하게 인지하질 못했는데 알려주신 All옵션도 체크해봐야겠군요!

내라이브러리 주기적인 스캔의 경우 다운로드 알림이 완료된 시점부터 텀이 존재하기 때문에 적합하지 않았습니다 ㅠㅠ
댓글 너무나 감사합니다 :)

2등
마이크로서버 2023.07.31. 17:11
전.plex는 작업한 영상 시청하고 홈런티비 연결용이 주라 영화는 많이 안보는데 참고해.봐야겠네요.감사합니다
profile image
꾀지남편 글쓴이 2023.07.31. 20:47
마이크로서버
HD홈런의 경우 국내 케이블들이 상당수 막힌것으로 알고 있는데 여전히 유효한 방법이 있나보군요!?
마이크로서버 2023.07.31. 21:49
꾀지남편
케이블 거의 나올텐데요... ^^ 저만해도 그냥 아파트 공청으로 종편하고 tVN, OBD, 쇼핑정도는 나오더라구요. 케이블 달면 나머지도 나올거에요. ^^ 단 그냥은 아니고 TVH를 써야 합니다. TVH 빌드 하면서 홈런을 컴파일 해야 되요. 드라이버등... 라즈베리 파이에도 해봤고 누크 우분투에서도 해서 써봤는데... 제가 한거 보다는 이치로님이 너무 잘 해놓아서...ㅎㅎ 그냥 지금은 그거 씁니다. 크게 업데이트 할일도 없고... 괜찮아요. Antenna 도커 컨테이너로 PLEX 연동하면 PLEX에서도 볼수 있습니다. epg 불러서요. 전 epg는 예전거 씁니다 그게 편하네요.~
profile image
꾀지남편 글쓴이 2023.08.01. 01:11
마이크로서버
정보 감사합니다.
꽤 몇년전에 어깨너머로 홈런 제품 알아볼때
케이블도 암호화되어 많이들 막혔다는 식으로 뭔가 잘못알고 있었던 것 같습니다. :)
이치로님 한번 검색해보아야겠습니다!

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story

본 게시판은 서버구축 게시판과 통합되었습니다.

서버구축 게시판 이동하기