달력

42024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

안녕하세요 류지 입니다.

이번 글을 적기전에 예전에 OSMC  내용에 대해서 소개 한적이 있습니다.


2017/09/05 - [라즈베리파이3] - OSMC - KODI, transmission, 토렌트 비서(텔레그램), samba 설정



라즈베리파이랑 오드로이드xu4 를 같이 사용하고 있는데요

TV 에다가 물리면서 토렌트도 사용하고 tv도 같이 활용하고 동영상도 같이 볼수있게 환경을 조성을 하려고

여러가지 테스트를 거치다보니 OSMC 가 적합하다고 판단이 됬습니다.

라즈비안에 코디를 설치하거나 오드로이드에 kodi 를 활용했을때 자동실행을 하게해서 영상을 틀어보니

먹통되는 현상이 발견되었습니다. kodi 를 다시 껏다가 재기동하면은 영상이 잘나오구요

버그인것같은데 osmc 는 초기 부팅자체가 kodi 로 하다보니 이러한 문제를 해결하게되여

osmc 에 전부 올려보기로 한거였습니다.


기본 설치 순서랑 활용했던 소스를 공개하도록 하겠습니다.


사용했던 OSMC 이미지는 OSMC_TGT_rbp2_20180207.img 최신 버전으로 사용했습니다.


https://osmc.tv/ 에서 받으시거나

밑에 주소로 받으시면 됩니다.

http://download.osmc.tv/installers/diskimages/OSMC_TGT_rbp2_20180207.img.gz


sd 카드에 이미지 쓰는프로그램은


osmc 사이트에도 있지만 Etcher 프로그램이 워낙 편해서 이걸로 사용했구요


https://etcher.io/


Etcher-Portable-1.3.1-x64  버전을 활용


sd 카드에 이미지를 입히고 초기 부팅을 하면은


한글 셋팅은 패스 하도록 하겠습니다.


ssh 로 붙으면 환경설정하는중이라 잠시 기다리면됩니다. 1분 남짓 기다리면


콘솔 창이 출력 됩니다.



■ 접속 정보

ID : osmc

PW : osmc


■ 먼저 암호 변경

sudo passwd    <-  osmc 본계정으로 패스워드 변경

sudo passwd root


■ 한글 설정

sudo dpkg-reconfigure locales


ko_KR.UTF-8 선택


아래 3줄 입력


echo 'export LC_ALL=ko_KR.UTF-8' | sudo tee -a ~/.profile

echo 'export LANG=ko_KR.UTF-8' | sudo tee -a ~/.profile

echo 'export LANGUAGE=ko_KR.UTF-8' | sudo tee -a ~/.profile



■ 계정 추가

sudo adduser [ID]

패스워드 입력

나머지 정보는 엔터로 패스


■  Tvheadend 설치


sudo nano /etc/apt/sources.list


※ 소스에 보면 jessie 버전과 stretch 버전으로 분류가 됩니다.

   내용중에 최신버전은 stretch 버전이라 Tvheadend stretch 주소를 사용하시면 되겠습니다.


#Tvheadend jessie

deb https://dl.bintray.com/tvheadend/deb raspbianjessie unstable


#Tvheadend stretch

deb https://dl.bintray.com/tvheadend/deb raspbianstretch unstable


Ctrl+O, 엔터, Ctrl+X


한줄씩 차례대로 입력

apt-get install -y apt-transport-https

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61

apt-get update

apt-get install -y tvheadend


한줄 입력

sudo apt-get install -y apt-transport-https && sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61  && sudo apt-get update  && sudo apt-get install -y tvheadend


&& 붙인 이유가 그냥 붙여 넣기를 4줄을 넣으면 명령어가 충돌 날수도 있어서

순서적으로 진행 하기 위해서 붙여서 사용합니다.


tvheadend 설치가 되면


계정 설정 화면 출력이 되며 계정ID 와 패스워드를 설정 합니다.


http:// IP :9981


접속후 영문으로 나옵니다. 로그인하고 언어 Korean 으로 설정후 다음으로 넘어가면

관리자 계정이랑 사용자 계정 입력란이 나옵니다.

추가 시켜주시면 관리자 계정으로 로그인시 한글로 출력이 됩니다.

새로 추가한 계정에 전체 권한을 다 부여하면은 한글 인터페이스로 전체 관리가 가능합니다.


tvheadend 설정은 아래 내용과 같습니다.


1. 설정 - DVB 입력 - 네트워크

  네트워크 이름 : IPTV Automatic Network  <- 마음대로

  최대 # 입력 스트림 : 4

  URL : file:///home/osmc/pvr/iptv.m3u <-- m3u 파일이 있는 경로


2. 설정 - DVB 입력 - 먹스

  스캔상태가 유휴는 작업이 끝난 상태 

  진행 - 활성 - 유후 순

  헤더 오른쪽 서비스 구간 0 으로 되어있는 항목들을 정렬하여

  오른쪽 체크박스 TSID 값을 체크

  스캔상태를 활성으로 변경 - 저장


3. 설정 - 채널 / EPG - 채널

  모든 서비스 매핑


4. 설정 - 채널 / EPG - EPG 그래버

  채널 이름 업데이트 체크

  채널 번호 업데이트 체크

  저장


5. 설정 - 채널 / EPG - EPG 그래버 모듈

  외부 : XMLTV - 켜짐 체크, 우선순위 1, 채널번호(휴리스틱) 체크

  저장



-------------------- 참고 ---------------------------



※ tvheadend 등록한 채널 백업 후 이용시 권한 설정


백업폴더경로 /home/hts/.hts/tvheadend/

백업 폴더 : channel, epggrab, input


chown -R hts:video /home/hts/.hts/tvheadend/channel

chmod -R 700 /home/hts/.hts/tvheadend/channel

chmod -f 600 /home/hts/.hts/tvheadend/channel/*


chown -R hts:video /home/hts/.hts/tvheadend/epggrab

chmod -R 700 /home/hts/.hts/tvheadend/epggrab

chmod -Rf 600 /home/hts/.hts/tvheadend/epggrab/*

chmod -f 777 /home/hts/.hts/tvheadend/epggrab/xmltv.sock


chown -R hts:video /home/hts/.hts/tvheadend/input

chmod -R 700 /home/hts/.hts/tvheadend/input

chmod -Rf 600 /home/hts/.hts/tvheadend/input/*


재시작

service tvheadend restart

---------------------------------------------------



이후에 epg2xml 이라는 epg 를 가져오는 작업이 있습니다.


pvr.zip


위 첨부파일을 이용하시면되며


채널 정보는 B TV 기준으로 작업해논 상태 입니다.


osmc 폴더에 압축을 풀어둔후고 


epg2xml.php 파일을 호출할껀데


php 플러그인 들이 필요합니다.


sudo apt-get install php php-common php-json libapache2-mod-php php-curl php-gd php-mbstring php-mcrypt php-mysql php-xml php-xmlrpc php-intl php-imagick php-zip php-cgi


로 php 관련 플러그인을 설치 합니다.


하나씩 설치하면서 찾기 귀찮아 0-0그냥 몽땅 설치했습니다.


만약 기존에 해보셨던분들은 필요없는건 빼고 활용하셔도 되겠습니다.


설치 후에


sudo php /home/osmc/pvr/epg2xml.php 로 실행 해봅니다.


호출이 완료되면은 EPG 그래버 채널에 정보다 업데이트 됩니다.


여기서 해야할 일은


★ 헤더중 채널 갱신 옵션 부분에 수정을 해주셔야 합니다.

옵션항목중 번호만 선택해서 해줍니다.

해야하는 이유는 채넣 정보에 보면은 번호가 업데이트가 안되는 부분을 해결하기 위해서 입니다.

그래야 원하는 채널 순서대로 정렬이 됩니다.


이제 이걸 크론에 등록해서 알아서 갱신 하도록 설정 합니다.


크론을 설치하고


sudo apt-get install -f cron


sudo crontab -e


에디트로 들어갑니다.


선택하는 항목이 있으면 nano 에디터를 추천 합니다.


3 */12 * * * php /home/osmc/pvr/epg2xml.php 저는 이렇게 사용합니다.


2017/12/27 - [라즈베리파이3] - 라즈베리파이3 Crontab 예약 작업


12시간 기준에 3분마다 php 를 실행 합니다.



Ctrl+O, 엔터, Ctrl+X  하고 나오면 자동 반영됩니다.


# 으로 주석 처리하면은 정지 됩니다.


tvheadend 설정은 끝났습니다.


■ samba 설치


sudo apt-get -y install samba


삼바 계정은 리눅스에 사용중인 계정으로 만드셔야 합니다.


sudo smbpasswd -a osmc

패스워드 설정


sudo /etc/init.d/samba stop


sudo nano /etc/samba/smb.conf




맨 아래로 내려보시면


[print] 종류의 내용은 과감하게 삭제


프린트 공유 이런겁니다.


그리고 아래 3줄을 추가해줍니다. 


load printers = no

show add printer wizard = no

printcap name=/dev/null


그래야 samba 통해서 동영상 시청시 딜레이 안생깁니다.


그리고 아래 내용 추가 하시면 됩니다.


[Contents] <-- 공유 폴더 제목

        read list = guest   <-  읽기 전용

write list = osmc   <-  읽기 쓰기 전용

path = /media/exHDD   <-공유 폴더 경로

comment = Contents    <- 부가 설명


Ctrl+O, 엔터, Ctrl+X  


sudo /etc/init.d/samba start


이렇게 하면 samba 설정이 끝났습니다.


외부에서도 접속이 가능 합니다.


■ 외장 하드 마운팅


exHDD 폴더에 외장하드를 마운팅 할겁니다.


sudo nano /boot/config.txt


아래 내용 2줄 맨위에 추가


max_usb_current=2

safe_mode_gpio=4


아래 내용 2줄 맨 아래 추가 - 최대 해상도로 강제 지정해주는 부분


hdmi_group=2

hdmi_mode=82


Ctrl+O, 엔터, Ctrl+X  


sudo mkdir /media/exHDD && sudo chmod -R 777 /media/exHDD


blkid


/dev/sda5: UUID="01D395B80CF091D0" TYPE="ntfs" PARTUUID="04f839f0-05"


UUID 에 01D395B80CF091D0 정보가 고유 외장하드 이름입니다.


아래 내용을 입력하여

sudo nano /etc/fstab



기본으로 할시 외장하드가 연결되어있지 안으면 부팅 에러 걸림

UUID=01D395B80CF091D0 /media/exHDD ntfs defaults 0 0


권장 내용

UUID=01D395B80CF091D0 /media/exHDD ntfs nofail,auto,noatime,rw,user 0 0



Ctrl+O, 엔터, Ctrl+X



※ 한줄

echo 'UUID=01D395B80CF091D0 /media/exHDD ntfs nofail,auto,noatime,rw,user 0 0' | sudo tee -a /etc/fstab



■ transmission-daemon 설치


sudo apt-get install -y transmission-cli transmission-common transmission-daemon


transmission-daemon 정지 (정지 안하면 아예 수정이 안됨)


sudo /etc/init.d/transmission-daemon stop



transmission 설정 수정

- 참고로 설정 내에서는 주석처리가 안됩니다.

- { (대괄호)와 " (따옴표) 주의

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




수정한 내용은 아래와 같습니다.


"blocklist-enabled": true,

"blocklist-url": "http://list.iblocklist.com/?list=bt_level1&fileformat=p2p&archiveformat=gz",   <-- 블랙 리스트 데몬 실행후 사이트 접속후 갱신

"download-dir": "/media/exHDD/contents/Downloads",  <-- 외장하드 마운팅 한 경로

"ratio-limit": 0,

"ratio-limit-enabled": true,

"rpc-password": "passwd",

"rpc-username": "admin",

"rpc-whitelist-enabled": false,

"script-torrent-done-enabled": true,

"script-torrent-done-filename": "/home/osmc/script/torrent_push.sh",   <-- 다운로드가 완료 되었을시에 telegram 에 푸쉬 요청

"speed-limit-down": 8000,

"speed-limit-down-enabled": true,

"speed-limit-up": 10,

"speed-limit-up-enabled": true,



Ctrl+O, 엔터, Ctrl+X


sudo /etc/init.d/transmission-daemon start


시작 서비스 등록

sudo update-rc.d transmission-daemon defaults




■ telegram 비서 활용


텔레그램으로 토렌트랑 tvheadend 컨트롤을 하며 토렌트도 다운받기 위해서 사용하는 내용입니다.


2017/12/27 - [라즈베리파이3] - 라즈베리파이3 transmission (텔레그램 API 연동)

2017/12/27 - [라즈베리파이3] - 라즈베리파이3 transmission (토렌트 비서 사용하기)


실행은 파이썬으로 하기 때문에 설치가 또 필요 합니다.

먼저 첨부 파일을 받습니다.

telegram.zip


torrent_push.sh


telegram.zip 압축을 풉니다.


작업은 root 계정으로 작업하였습니다.


/home/osmc/ 경로에 풀고


cd /home/osmc/telegram


apt-get install -y python3 python3-pip netcat

pip3 install --upgrade setuptools

pip3 install wheel

pip3 install feedparser

pip3 install tzlocal

pip3 install -r pip-requirements.txt


설치 한줄 

apt-get install -y python3 python3-pip netcat && pip3 install --upgrade setuptools && pip3 install wheel && pip3 install feedparser && pip3 install tzlocal && pip3 install -r pip-requirements.txt



torrent_push.sh 와 telegram 에 setting.json 파일을 보시면 telegram API 정보를 입력해주세요


트렌스미션 데몬에 사용한 ID 와 패스워드도 같이 입력하신후


python3 telegram_torrent.py  로 실행 하시면


에러가 안나면은 텔레그램 어플을 이용해 확인 해보시면됩니다.


웹에서도 사용가능하니 해보시기 바랍니다.


rss 정보는 토렌트 킴에서 가져온 것이며


메뉴는

----------------------

토렌트 검색

토렌트 리스트

토렌트 데몬 관리

- 토렌트 데몬 stsrt

- 토렌트 데몬 stop

- 홈

TvHeadEnd 관리

- TvHeadEnd start

- TvHeadEnd stop

- EPG 채널 갱신

- 홈

서버 상태 확인

----------------------


이렇게 됩니다. 서버상태 확인은 토렌트하고 tvheadend 포트 확인해서 가동유무를 판단해주는 것입니다.


이제 텔레그램을 서비스에 등록해주셔야 합니다.


nano /etc/init.d/telegram

torrent_push.sh

-----------------------------------------

#!/bin/sh

### BEGIN INIT INFO

# Provides:          telegram

# Required-Start:    $network

# Required-Stop:     $network

# Default-Start:     2 3 4 5

# Default-Stop:      0 1 6

# Short-Description: Start/stop telegram

### END INIT INFO

 

case "$1" in

  start)

    python3 -u /home/osmc/telegram/telegram_torrent.py &

    echo "telegram Bot start"

    ;;

  stop)

    sudo kill $(ps -e | grep python3)

    echo "telegram Bot stop"

    ;;

  *)

    echo "Usage: /etc/init.d/telegram {start|stop}"

    exit 1

    ;;

esac

exit 0

------------------------------------------

Ctrl+O, 엔터, Ctrl+X


telegram


파일 첨부 했습니다.


osmc 계정에 권한 이동 밑 부여


sudo chown osmc:osmc /etc/init.d/telegram

sudo chmod 755 /etc/init.d/telegram


자동 시작 서비스 등록

sudo update-rc.d telegram defaults



사용법

sudo service telegram start

sudo service telegram stop





이제 작업은 거의다 끝났네요

대망의 작업은 코디 폰트 작업 입니다.

이거 바꾸는데 상당히 스트레스 더라구요

각각 폰드 경로 적어드립니다.


자막 폰트 경로

/usr/share/kodi/media/Fonts/ 


위 경로에 폰트를 넣으시면은 자막 폰드를 변경하실수 있습니다.


기븐 스킨 정보


◆ 스킨명 : estouchy

폰트 경로 : /usr/share/kodi/addons/skin.estouchy/fonts/

xml 경로  : /usr/share/kodi/addons/skin.estouchy/xml/Font.xml


◆ 스킨명 : estuary

폰트 경로 : /usr/share/kodi/addons/skin.estuary/fonts/

xml 경로  : /usr/share/kodi/addons/skin.estuary/xml/Font.xml


◆ 스킨명 : osmc

폰트 경로 : /usr/share/kodi/addons/skin.osmc/fonts/

xml 경로  : /usr/share/kodi/addons/skin.osmc/16x9/Font.xml




kodi 에서 신규로 설치한 스킨 경로

/home/osmc/.kodi/addons/

폰트 변경 작업

에디터 플러스나 notepad++ 로 font.xml 파일을 불러 옵니다.
PC 로 다운받아서 작업해야됩니다.
일괄 변경 할꺼니까요

정규식으로 폰트 변경할 건데요

찾아 바꾸기에서 검색어를
(<filename>.*)
위 처럼 입력하고
정규식 검색에 체크 해줍니다.

바꿀 내용에
<filename>폰트이름.ttf</filename> 이렇게 하고 전체 변경 해주시면 일괄 변경 됩니다.

그후에 파일만 교체 해주시면 되겠습니다.


kodi 에 사용 했던 에드온

https://github.com/hojel/xbmc-korea-addons/tree/master/download



ps. 이상 OSMC 풀 셋팅 방법 이였습니다.
     이걸 하면서 착오도 많이 있었고 오류도 생기고 했었는데 되긴 되네요 ..ㅎ
     그리고 kodi 에 무거운 스킨을 쓰면은 다운도 되고 합니다. 주의 하시기 바랍니다.


Posted by 타카스 류지
|