11.Nas_1


■ ★ u5pvr)tvheadend 의 epg 의 xmltv.xml 를 자동 스케줄러 만들어 사전에 정기적으로 만들어 놓고 tvheadend epg그래버모듈 실행시 신속하게 epg정보 로딩하기 적용(최종성공)


  • 링크

  • 첨부

  • 컨텐츠 정보

    • 32,097 조회
    • 56 댓글
    • 0 추천
    • 목록

    본문

    ■ u5pvr)tvheadend 의 epg 의 xmltv.xml 를 자동 스케줄러 만들어 사전에 정기적으로 만들어 놓고

    tvheadend epg그래버모듈 실행시 신속하게 epg정보 로딩하기 적용(최종)

    u5pvr 기본 동작 조건은 

    https://11q.kr/g5s/bbs/board.php?bo_table=s11&wr_id=4058

    참조  동작 조건 입니다.


    방법은>  xmltv.xml 만들어 놓은 것 자기서버 폴더로 임시 다운 로드 cat 로 epg적용 신속하게 불러옵니다.( epg정보갱신 빠름)

    epg그래버모듈>>

    epg그래버모듈 /usr/bin/tv_grab_2cat_u5pvr 파일는  /var/www/html/epg2xml/xmltv.xm 위치에 있는 파일을 불러 옵니다

     명령어     

     cat /var/www/html/epg2xml/xmltv.xml 

     적용 u5pvr 실행 지연을 최소화  tvheadend 시작 또는 epg그래버모듈 실행시 바로 진행  갱신 로딩 됩니다.


    사용 epg2xml 버전은 최근 올라온 epf2xml 버전  ver 1.2.6 최종 마지막 버전 epg2xml-1.2.6.zip 사용 적용

    epg2xml은 epg2xml-1.2.6_xmltv.xml_sh_11q.kr_20180509.zip

    제가 사용하는 최종 마지막 버전 입니다.

    수정 내용은 https://11q.kr/g5s/bbs/board.php?bo_table=s11&wr_id=4408

    참조 바랍니다.

    3232235521_1522939599.6895.png

    1) u5pvr 자체 xmltv.xml를 스케줄러 만들어 epg정보 불러오기

    또는 시놀로지 서버 도커를 이용하여 만들어진 xmltv.xml 불러오기 

    또는 잠자님 제공  epg 정보도 사용 가능합니다


    (1). u5pvr  epg 그래버 모듈 적용 

     xmltv.xml의 u5pvr 자동 스케줄러 만들기 하여 xmltv.xml 파일을 만들어 놓습니다

      

    1. crontab 살펴보기

    cd /var/spool/cron

    ls

    ls /var/spool/cron

    등록한 스케줄 파일은 /var/spool/cron 에 있습니다. 계정별로 스케줄 파일들이 정리되어있죠.. 다른 일반계정에서도 스케줄 등록을 할 수 있으니까요. 

    예를 들어, /var/spool/cron/root 파일에는 root 계정에서 등록한 스케줄이 있습니다.


    2. 스케줄 목록 확인

    crontab -l

    crontab에 있는 스케줄 확인 명령어는 다음과 같습니다.

    # crontab -l

    * "no crontab" 이라고 뜬다면 등록된 스케줄이 없다는 뜻입니다.

    저는 만들어놓은 상태를 확인 합니다

    아래는  crontab -e 로 하단에 추가한 내용입니다.

    3232235521_1522551912.3179.png

    이상하게도 u5pvr에서 상기와 같이

    04 */4 * * * /usr/bin/xmltv_xml.sh 

    조건으로 하면 epg가 제대로 만들어 지지 않습니다. 7k

    3232235521_1522597780.7151.png

    다시 이문제를  편법으로 

    # 4시4에 시작 4시간간격으로 xmltv.xml파일 만들어 저장 합니다

    04 */4 * * * /usr/bin/xmltv_xml.sh >> /var/www/html/epg2xml/xmltv_xml.sh.log 2>&1

    로 변경 하면 제대로 만들어 집니다.


    3. 스케줄 등록/수정/삭제 만들기 참조 자료

    아래 명령어를 실행하면 빈 vi 에디터가 뜨는 데.. 스케줄을 한줄씩 입력하고, 저장(:wq)하면 스케줄이 자동으로 등록됩니다.

    서비스 재시작없이 저장만 하면 "crontab: installing new crontab" 메세지가 뜨면서 스케줄이 등록됩니다.

    참고로 서비스는 service crond restart 또는 systemctl restart crond.service 명령으로 재시작할 수 있습니다.

    # crontab -e

    스케줄 수정과 삭제도 마찬가지로 vi 에디터에서 스케줄 수정/삭제후 저장만 하면 됩니다.

    crontab -e 

    확인 상태 입니다


    4. 스케줄 형식

    스케줄은 아래와 같은 형식을 하고 있습니다.

       .---------------- 분 - 범위 : 0-59

       |  .------------- 시 - 범위 : 0-23 (자정이 0)

       |  |   .---------- 일 - 범위 : 1-31

       |  |   |   .------- 달 - 범위 : 1-12 또는 jan,feb, mar, apr ... 축약형 영문 월 표시

       |  |   |   |  .---  요일 - 범위 : 0-6 (일요일은 0 또는 7) 또는 sun, mon, tue, wed thu, fri, sat

       |  |   |   |  |

    # *  *  *  *  * [실행될 명령어]

    상기 정보를 참조 하여 


    5.epg xmlt.xml 파일 자동 스케줄링 만들기 

    xmltv_xml.sh 파일을 만듭니다.


    nano /var/www/html/epg2xml/xmltv_xml.sh

    실행하여

    아래 내용 형식으로  추가 합니다

    ----------

    #!/bin/sh

    #crontab -e

    #crontab -l

    #bash  /usr/bin/xmltv_xml.sh

    date


    rm -f /var/www/html/epg2xml/xmltv.xml

    php /var/www/html/epg2xml/epg2xml.php -o /var/www/html/epg2xml/xmltv.xml

    chmod 777 /var/www/html/epg2xml/xmltv.xml

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

    3232235521_1522940322.8187.png

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

    추가하여 저장합니다 


    파일을  복사후 실행 권한을 줍니다

    cp /var/www/html/epg2xml/xmltv_xml.sh /usr/bin

    chmod +x /usr/bin/xmltv_xml.sh

    으로 복사후 실행 권한을  진행 합니다

    nano /usr/bin/xmltv_xml.sh

    하여 복사한 내용을 확인 합니다

    ====================

    sh 파일 실행 동작 확인

    bash  /usr/bin/xmltv_xml.sh

    실행하여
    xmltv.xml 파일을 직접 만들어 봅니다
    3232235521_1522940447.8026.png


    수정은 

    crontab -e

    실행하여  파일을 열어주고 나면 제일 하단에 최종 추가 한 내용 반복 확인 내용

    # 4시4뷴에 시작 4시간 간격으로 xmltv.xml파일 만들어 저장 합니다

    04 */4 * * * /usr/bin/xmltv_xml.sh >> /var/www/html/epg2xml/3/xmltv_xml.sh.log 2>&1

    주) 이상하게 뒷에 >> /var/www/html/epg2xml/3/xmltv_xml.sh.log 2>&1를 붙여  정상적인 파일 사이즈가 만들어지네요
    원인 미확인 >> 임시 이대로 사용

    3232235521_1522666687.3375.png

    cron을 재사작 합니다

    /etc/init.d/cron restart

    3232235521_1522571830.7863.png

    아래 사이트 내용 참고 하여 php crontab 관련 있나 (모름)

    apt install sqlite3

    실행 설치도 했습니다


    ===============================

    epg그래버모듈 작성 상태 파일 정보 

    ================================

    /usr/bin/tv_grab_2cat_u5pvr
    파일을 적용 합니다
    ================
    #!/bin/sh
    if [ "x$1" = "x" ]; then
         cat /var/www/html/epg2xml/xmltv.xml
        exit 0
    fi

    case "$1" in
        --description)
        echo "33_tv_grab_2cat_only_cat/var/www/html/epg2xml/xmltv.xml"
        ;;
        --version)
        echo "2.0"
        ;;
        --capabilities)
        echo "baseline"
        ;;
    esac
    3232235521_1522939787.9125.png
    ================

    3232235521_1526336244.0495.png

    3232235521_1526336283.6898.png

    cat 명령만 사용으로 정말 빠르게 epg 정보가 로딩 됩니다 .
    3232235521_1522940588.7892.png


    U5PVR APM 2편 : 활용하기 (apache2 + php5 + mysql)
    참조 web 폴더를 내장 하드로 www변경 작업 20180428
    www 폴더 변경후 정상적으로 작업 완료 되었습니다 2018년04월27일


    저의 web 폴더를 /mnt/media_rw/sda5/www/html/ 으로 작업 했습니다

    변경 파일
    1) /usr/bin/xmltv_xml.sh 에서
    /mnt/media_rw/sda5/www/html/epg2xml/xmltv.xml
    으로 수정 합니다. 

    nano /usr/bin/xmltv_xml.sh
    수정하거나 아래와 같이 winscp로 직접 수정 합니다
    php /mnt/media_rw/sda5/www/html/epg2xml/epg2xml.php -o /mnt/media_rw/sda5/www/html/epg2xml/xmltv.xml

    3232235521_1524844633.2475.png


    2) crontab -e
    /mnt/media_rw/sda5/www/html/epg2xml/xmltv_xml.sh.log
    저장로그 수정
    3232235521_1524842833.0086.png
    기 편집기가 nano입니다. 붙여넣고 저장(Ctrl+O)후, 나갑니다.(Ctrl+X)


    # 4시4에 시작 4시간간격으로 xmltv.xml파일 만들어 저장 합니다
    #04 */4 * * * /usr/bin/xmltv_xml.sh >> /var/www/html/epg2xml/xmltv_xml.sh.log 2>&1
    04 */4 * * * /usr/bin/xmltv_xml.sh >> /mnt/media_rw/sda5/www/html/epg2xml/xmltv_xml.sh.log 2>&1

    검증작업

    bash  /usr/bin/xmltv_xml.sh

    실행하여
    xmltv.xml 파일을 직접 만들어 봅니다
    3232235521_1524845386.6661.png

    3232235521_1524846237.9572.png

    epg그래버모듈 /usr/bin/tv_grab_2cat_u5pvr 파일을 수정 합니다 

    #!/bin/sh
    if [ "x$1" = "x" ]; then
    cat /mnt/media_rw/sda5/www/html/epg2xml/xmltv.xml
        exit 0
    fi

    case "$1" in
        --description)
        echo "tv_grab_2cat_only_cat/var/www/html/epg2xml/xmltv.xml"
        ;;
        --version)
        echo "2.0"
        ;;
        --capabilities)
        echo "baseline"
        ;;
    esac


    3232235521_1524845823.1909.png
    3232235521_1524846093.3166.png
    3232235521_1524846133.7411.png
    이제 www 폴더 변경후 정상적으로 작업 완료 되었습니다 2018년04월27일


    ============= 이하는 구글링 참조 자료 입니다 ================================

    cat /etc/crontab
    리눅스 스케줄 설정 crontab
    리눅스
    1시간 마다 /root/test.php 를 실행하도록 설정하는 예)
    01 * * * * root /root/test.php

    /etc/crontab 에 위 라인을 추가하고

    /etc/init.d/crond restart

    하면 한 시간마다 실행됩니다.

    ////////////////////////////////
    cron 설정하기
    * * * * * 실행파일
    순서대로 분 시 일 월 요일 실행파일
    분 : 0-59  
    시 : 0-23
    일 : 0-31
    월 : 0-12
     요일 : 0-6 : (일-토 : 0과 7은 일요일이며 1부터 월요일이 시작된다.)

    * : 모든 시간대에 실행이 된다.
    예> * * * * * 실행파일 : 매분마다 실행한다.

    - : 기간을 범위지정한다.
    예> 10-20 1 * * * 실행파일 : 매일 새벽 1시 10분부터 20분까지 1분마다 실행한다.
    예> 10-20,30-40 1 * * * 실행파일 : 매일 새벽 1시 10분부터 20분까지 1분마다 실행된 후 30분부터 40분까지 1분마다 실행한다.

    , : 기간을 지정한다.
    예>* 10,14,17 * * * 실행파일 : 매일 10시, 14시, 17시에 실행한다.

    / : 간격을 지정한다.
    예> */3 * * * * 실행파일 : 매 3분마다 실행한다.

    사용 예>
    */3 * * * * root /usr/local/apache2/bin/php -q 실행파일 > 20120302.log &
    : root 권한으로 매3분마다 백그라운드로 실행하고 로그파일을 남긴다.

    참고> 만약 중복되게 지정하면 중복으로 실행한다.
    예> 30 10 10,15 * 1 실행파일 : 매달 10일, 15일 10시 30분에 실행, 매주 일요일에도 실행한다.

    주의> crontab 설정을 변경한 후에는 cron 서비스를 재시작해야한다.
    ]# service crond restart


    /////////////////////////////////////////////////


    - 시스템의 주기적인  cron 작업의 설정, 수정등을 하는 명령어
      - 시스템에서 가장 중요한 데몬중의 하나인 crond 와 직접적인 관련이 있는 명령어
      - crond 데몬은  /etc/rc.d/init.d/crond 의 스크립트에 의해 시작, 종료, 재시작될수 있음

      - crond 데몬
         - /etc/crontab 파일
         - /etc/rc.d/init.d/crond 스크립트
         - /var/spool/cron 디렉토리내의 크론설정파일들

     
    명령어 위치 : /usr/bin/crontab
    사용형식     : crontab [ -u 사용자id ] 파일
                       crontab [ -u 사용자id ] { -l | -r | -e }

     

    cat /etc/crontab
    매시 1회 자동실행하기 위한 시스템 크론 설정
    01 * * * * root run-parts /etc/cron.hourly
      - 매일 매시 01분마다 /etc/cron.hourly 디렉토리내에 존재하는 파일들을 실행


    매일 1회 자동실행하기 위한 시스템 크론설정
    02 4 * * * root run-parts /etc/cron.daily
     - 매일 새벽 4시 02분마다 /etc/cron.daily  디렉토리내에 존재하는 파일들을 실행

     
    매주 1회 자동실행하기 위한 시스템 크론설정
    22 4 * * 0 root run-parts /etc/cron.weekly
     - 매주 일요일 새벽 4시 22분마다 /etc/cron.weekly 디렉토리내에 존재하는 파일들을 실행

    매월 1회 자동실행하기 위한 시스템 크론설정

    42 4 1 * * root run-parts /etc/cron.monthly
     ->매월 1일 새벽 4시 42분마다 /etc/cron.monthly 디렉토리내에 존재하는 파일들을 실행

    * root 이외의 사용자에게 crontab 명령어를 이용할 수 있게 하는 방법
      - /etc/cron.allow 파일에 사용자의 id를 등록

    * 일반사용자의 crontab 명령어사용을 제안하고자 한다면
      - /etc/cron.deny 파일에 사용자의 id 를 등록


    * cron 설정하는 방법
     40 3 * * * root /home/mysql/mysql_backup.sh

     맨 앞의 40은 40분을 의미함 (분을 의미:0~59)
     그 뒤의 3은 03시를 의미함 (시를 의미:0~23)
     그 뒤의 * 은 매일을 의미함 (일을 의미:1~31)
     그 뒤의 * 은 매월을 의미함 (월을 의미:1~12)
     그 뒤의 * 은 매주를 의미함(요일을 의미 1:월요일~7:일용일)
     그 뒤의 root /home/mysql/mysql_backup.sh 는 root  계정으로 mysql_backup.sh을 실행하라는

     의미

     * 문자 : 각 필드에 해당하는 모든 숫자를 의미
     - 문자 : 각 필드자리에 하이픈 문자가 올수 있음
       ex) 일 필드자리에 11-15 (11,12,13,14,15일을 의미)

     ,문자 : 각 필드자리에 콤마문자가 올수 있음
       ex) 일 필드자리에 1,11,21 (1일,11일 21일을 의미)
    /////////////////////////////////////////////////////////////////////

    59 * * * * su - oracle -c "sh /data4/BACKUP/HOTBACKUP/1HOUR_ARCH_BACKUP.sh"

    /////////////////////////////////////////////////////////////////////////////////
    [HP_UX]crontab

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ◎ 범례
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
       굵은문자 : Reserved Word (UNIX 예약어)
       가는문자 : User Define (사용자가 직접 입력해야 하는 부분)
       [ ] : Option (지정하지 않아도 되거나 생략시 기본 설정값으로 대체됨)
       or, | : Choice(여러가지중 하나를 선택한다)

       윗글자 :  ¹ ² 등은 하단의 참조

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ◇ FORMAT
    ─────────────────────────────────────────────

    crontab [-e|-l|r] [username]

    -e : crontab을 추가/수정삭제 한다
         cron에 새로운 작업을 추가하거나 추가된 작업의 수정, 삭제를 위하여 사용된다.
         기본적으로 vi Editor를 사용한다.

    -l : crontab의 내용을 보여준다

    -r : crontab파일을 삭제한다.

    username : 사용할 crontab 사용자
               보통의 경우는 해당 아이디로 로그인 후 crontab을 사용하므로 거의 생략됨
               root의 경우 사용됨

     
    ◆ 참고
    ─────────────────────────────────────────────

    crontab 파일 구조


    crontab파일은 "분 시 일 월 주 실행명령"의 형태로 구성되어있다
    값을 주지 않을 경우 * 로 표시한다.

     

    * * * * * Execute-Command
    ┬ ┬ ┬ ┬ ┬ ┬
    │ │ │ │ │ └─실행할 명령어 
    │ │ │ │ └─── 실행할 요일 (0:일요일, 1:월요일, 2:화요일...6:토요일)
    │ │ │ └───── 실행할 월   (1 ~ 12)
    │ │ └─────── 실행할 일   (1 ~ 31)
    │ └───────── 실행할 시간 (0 ~ 23)
    └─────────── 실행할 분   (0 ~ 59)

     

    각 구성은 콤마(,)를 사용하여 여러개를 줄 수 있다
    예륻 들어 분을 30분 단위로 하고자 한다면 0,30 과 같이 줄 수 있다

     

    ※ 자바(Java)를 클론(cron)으로 실행하는 경우 등은 실행 명령어를 담은 Shell Script를
       작성하여 실행명령에 넣어야 한다.

     

    ※ HP-UX cron 관련 파일

     

         /var/adm/cron                      Main cron directory
         /var/spool/cron/atjobs          Directory containing at and batch job files
         /var/spool/cron/crontabs      Directory containing crontab files
         /var/adm/cron/log                Accounting information(실행 로그)

     

    ◆ 예제
    ─────────────────────────────────────────────

    예1) 0,30 * * * * /user/ghi/test.sh

         : 매시간 0분, 30분에 test.sh를 실행 시킨다. (1시간에 2번 실행된다.)

     

    예2) 30 * * * * /user/ghi/test.sh

         : 매시간 30분에 test.sh를 실행 시킨다. (1시간에 1번 실행된다.)

     

    예3) 30 13 * * 6 /user/ghi/test.sh

         : 매주 토요일 오후 1시 30분에 test.sh를 실행 시킨다

     

    예4) 30 0 1 1,4,7,10 * /user/ghi/test.sh

         : 매년 1,4,7,10월의 1일 0시 30분에 test.sh를 실행 시킨다
           (분기별 마감 등의 작업에 사용될 수 있다)
    ////////////////////////////////////////////////////////////////////////////////////////////////////

    로그 남기기

    stdout으로 화면에 출력되는 모든 로그를 남길 때.
    '>'를 쓰면 매번 새로 기록(overwrite),
    '>>'를 쓰면 기존 파일에 append가 됨


    crontab 예제
    crontab -e를 통해 아래의 명령을 크론테이블에 추가시킴.
     

    매월매일 모든요일 06:00시에 /usr/local/bin/test.sh를 실행
        00 06 * * 0-6 /usr/local/bin/test.sh >> /dev/null
    ">> /dev/null"는 cron중 발생하는 로그를 버리도록 지정

    1분간격으로 /usr/local/bin/test.sh를 실행
        * * * * * /usr/local/bin/test.sh >> /dev/null
     
    10분간격으로 /usr/local/bin/test.sh를 실행
        10,20,30,40,50,60 * * * * /usr/local/bin/test.sh >> /logs/test.log

    ">> /logs/test.log"는 cron 실행중 발생한 로그를 test.log 파일에 append 시킴

    출처: http://zeronica.tistory.com/105 [웹프로그래밍]

    ============
    https://webisfree.com/2017-07-31/linux%EC%97%90%EC%84%9C-sh-%EC%8B%A4%ED%96%89%ED%8C%8C%EC%9D%BC-%EB%A7%8C%EB%93%9C%EB%8A%94-%EB%B0%A9%EB%B2%95-%EB%B0%8F-%EC%98%88%EC%A0%9C
    # .sh파일 만들기 예제보기
    sh 파일을 만드는 예제입니다. 먼저 생성할 파일명은 clear.sh입니다. 파일을 생성하기 위해서 vim 편집기를 사용합니다.
    $ vim clear.sh
    간단하게 내용은 clear를 넣고 저장합니다. 화면을 깨끗히 비우는 명령어입니다. 파일이 생성된 후 실행하기 위하여
    먼저 chmod를 사용하여 실행가능하도록 변경합니다. 아래 명령어 +x는 해당 파일을 실행가능하도록 권한을 부여합니다.
    ! 파일 실행가능하도록 변경하기, chmod +x
    sh 파일을 생성한 후 실행할 경우 권한이 없다는 'Permission error' 메시의 에러가 나타날 수 있습니다. 이때 chmod를 사용하여 아래와 같이 권한을 부여합니다.
    $ chmod +x clear.sh
     
    # 생성된 sh 파일 실행하는 방법
    권한설정 후 동일한 경로상의 쉘화면에서 clearh.sh를 바로 실행할 경우 실행되지 않습니다. 실행방법은 아래와 같이 세가지 방법이 있습니다. 
    $ ./clear.sh
    $ sh clear.sh
    $ bash clear.sh
    위 세가지 방법 모두 실행될 것 입니다.
    ===  기타 참조 자료 ====

    < 참조 사례>

    일단 sqlite3 를 설치해줍니다.
    apt install sqlite3

    다음으로 스크립트와 관련된 파일을 저장할 폴더와 크론작업을 실행할 스크립트 파일을 만들어 줍니다.

    이하 변경가능한 부분은 녹색으로 표시했습니다.

    mkdir /root/plexserver
    #폴더를 생성합니다.

    cd /root/plexserver
    #폴더로 이동합니다.

    >plexserver-update-cron.sh
    #plexserver-update-cron.sh 이름의 스크립트 파일을 만들어 줍니다.

    chmod 755 plexserver-update-cron.sh
    #권한을 0755로 맞춰줍니다.

    #nano 편집기로 상단의 스크립트 혹은 첨부파일의 내용을 plexserver-update-cron.sh 에 붙여넣고 저장(Ctrl+O)후, 나갑니다.(Ctrl+X)

    이 때, 스크립트 내용 중 일부분은 수정할 수 있으며, 하단의 <편집>을 참조합니다.

    crontab -e
    #<편집>을 완료하셨다면, 크론작업에 등록합니다.

    * * * * * /root/plexserver/plexserver-update-cron.sh >/dev/null 2>&1 &
    #저는 기본 편집기가 nano입니다. 붙여넣고 저장(Ctrl+O)후, 나갑니다.(Ctrl+X)

    이제 1분 간격으로 스크립트가 실행됩니다.
    =========  기타 참조 자료 ===================
    1. 아래 명령으로 방금 저장한 파일에 root, 모든 사용자와 그룹에 실행 권한을 설정합니다.
      chmod +x /usr/bin/tv_grab_epgc

      아래 화면은 권한 지정이 잘 적용된 상태입니다.
      %EC%BA%A1%EC%B2%98.JPG?type=w740

    2. 이전 단계인 EPG Collector 구성하기 8번에서 저장된 EPG 파일은 UTF-16le 인코딩인데, 이 문자셋은 TVHeadend에서는 읽어 들이지 못하며, 인코딩을 UTF-8으로 변경해야 합니다.
      변경은 거의 실시간에 준해서 해주는 것이 적절해 보여서 매 분마다 실행되도록 crontab 구문을 하나 추가합니다.
      다음 명령을 입력해서 실행합니다.
      crontab -e

    3. Page down 키로 제일 아래로 이동 후, 맨 끝줄에 다음 구문을 하나 복사해서 붙여넣기로 추가합니다.
      */1 * * * * iconv -f utf-16le -t utf-8 /mnt/sdcard/TVGuide-epgc.xml -o /mnt/sdcard/TVGuide.xml

      여기에서 utf-8 다음의 디렉토리 위치와 파일명은 EPG Collector 구성하기 8번 단계에서 저장한 위치와 파일 명으로 지정해 줍니다.
      제 경우는 sdcard 폴더에 TVGuide-epgc.xml 파일명으로 지정했으므로 위와 같이 설정되어 있습니다.
      이와 같이 설정하면 매 분마다 iconv 명령이 실행되어 UTF-8 인코딩 TVGuide.xml 파일을 만듭니다.
      따라서 하드디스크가 아닌 U5PVR의 내부 메모리 폴더로 보이는 sdcard 삼바 폴더에 저장을 해서 U5PVR에 설치된 하드디스크가 계속 구동될 필요가 없도록 했습니다.

    4. 4번 단계와 동일하게 입력해서 저장하고 나옵니다. Ctrl+o, 엔터키, Ctrl+x

    5. 다음 명령으로 crontab 설정이 잘 되었는지 한번 확인해 봅니다.
      crontab -l

      아래 화면과 같이 나오면 설정이 잘 저장된 상태입니다.
      %EC%BA%A1%EC%B2%98.JPG?type=w740

    6. TVH#2 서비스를 다음 명령으로 재시작합니다.
      service tvheadend restart

      %EC%BA%A1%EC%B2%98.JPG?type=w740

    ▶ ☞ ♠ 정보찾아 공유 드리며 출처는 링크 참조 바랍니다. https://11q.kr ♠ #정보, #웹에디터,#그누보드,#시노롤지,#홈페이지,#아미나빌드,

    뷰PDF add1,add2



    관련자료

    댓글 56

    shimss11q님의 댓글

    www 폴더 변경후 정상적으로 epg2xml 작업 완료 되었습니다 2018년04월27일
    U5PVR APM 2편 : 활용하기 (apache2 + php5 + mysql)
    참조 web 폴더를 내장 하드로 www변경 작업 20180428

    shimss11q님의 댓글

    epg를 1일치/7일치 epg2xml.php 명령으로 옵션 입력 실행 하기

    putty.com 에서 파일 생성을 확인 합니다
    ==== 1일치 epg분량
    php /mnt/media_rw/sda5/www/html/epg2xml/epg2xml.php -l 1 -o /mnt/media_rw/sda5/www/html/epg2xml/xmltv1.xml
    ==== 7일치 epg분량
    php /mnt/media_rw/sda5/www/html/epg2xml/epg2xml.php -l 7 -o /mnt/media_rw/sda5/www/html/epg2xml/xmltv.xml
    ==== sk-btv에서 1일치 4m,7일치 25m

    ==== xmltv1_xml.sh 실행파일 생성
    #!/bin/sh
    #crontab -e
    #crontab -l
    #bash  /usr/bin/xmltv_xml1.sh
    date

    rm -f /mnt/media_rw/sda5/www/html/epg2xml/xmltv1.xml
    php /mnt/media_rw/sda5/www/html/epg2xml/epg2xml.php -l 1 -o /mnt/media_rw/sda5/www/html/epg2xml/xmltv1.xml
    chmod 777 /mnt/media_rw/sda5/www/html/epg2xml/xmltv1.xml
    ============

    ==== /usr/bin 폴더로 파일 카피 이동
    cp /mnt/media_rw/sda5/www/html/epg2xml/xmltv1_xml.sh /usr/bin
    chmod a+x /usr/bin/xmltv1_xml.sh
    chmod 755 /usr/bin/xmltv1_xml.sh

    ==== 자동스케줄  crontab -e 명령으로 수정합니다

    #
    # m h  dom mon dow  command
    # 1문마다 시간 동기화
    #1 * * * * rdate -s time.bora.net && clock -w
    # epg autorun shimss -->>>>> 매1시간0 */1 * * *
    #0 24 * * * root /var/www/html/epg2xml/xmltv_xml.sh
    #05 * * * * /usr/bin/xmltv_xml.sh > /dev/null 2 >&1

    # 4시4에 시작 4시간간격으로 xmltv.xml파일 만들어 저장 합니다
    # 예제)04 */4 * * * /usr/bin/xmltv_xml.sh >> /var/www/html/epg2xml/xmltv_xml.sh$
    04 */1 * * * /usr/bin/xmltv1_xml.sh >> /mnt/media_rw/sda5/www/html/epg2xml/xmlt$
    12 */7 * * * /usr/bin/xmltv_xml.sh >> /mnt/media_rw/sda5/www/html/epg2xml/xmltv$

    === 자동스케줄 저장 시간

    7일 1일 회수 7일치시간 1일치시간
    12 4 1 12 4
    12 4 2 24 8
    12 4 3 12
    12 4 4 16
    12 4 5 20
    12 4 6 24
    12 4 7
    12 4 8


    ==== 각각의 실행 파일 동작 확인
    bash  /usr/bin/xmltv1_xml.sh
    bash  /usr/bin/xmltv_xml.sh
    ========= 20180512


    전체 1,766 / 1 페이지
    게시물이 없습니다.(다음페이지로 이동 하세요)
    전체 1,766 / 1 페이지



    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-11-23 03:46:39

    오늘의 홈 현황


    • 현재 접속자♨ 478 명
    • 오늘 가입자※ 0 명
    • 어제 가입자※ 3 명
    • 주간 가입자※ 9 명
    • 오늘 방문자 1,740 명
    • 어제 방문자 3,461 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,804,357 명
    • 전체 게시물※ 8,855 개
    • 전체 댓글수※ 25,231 개
    • 전체 회원수 11,325 명

    QR코드


    ☞ QR코드 스캔은 kakao앱 자체 QR코드

    알림 0








    최신글↑