참고한 게시물
1. http://www.clien.net/cs2/bbs/board.php?bo_table=lecture&wr_id=149252&page=0&sca=&sfl=&stx=&spt=0&page=0&comment_page=last&cwin=#c_276661CLIEN
2. http://going-together.tistory.com/17
3. 네이버 시놀로지 카페 (가입해야 볼 수 있습니다.)
http://cafe.naver.com/synologynas/58982
===================================================================================================
EBS 외국어라디오방송을 시놀로지 나스로 자동녹음을 할 수있다는 소문을 들은지 어언 1년여가 지나서야 의욕이 생겨, 지난 주부터 시작해보았습니다.
이미 다 알려진 것이기에 그저 쫓아 하면 될 줄 알았습니다. 그러나, 시키는 대로 했는데도 곳곳에서 막히기에, 주섬주섬 꾸역꾸역하다보니 성공을 했기에, 저같은 어린 백셩이(ㅎㅎ) 따라 하기 쉽도록 여기에 보고합니다.
=============================================================================
1. 준비물
시놀로지 나스. (저는 212+)
2. 사전 준비
1) 나스에 접속하여 패키지센터-설정-패키지 소스-추가 하여
제목에는 적당히, 위치에는 http://packages.synocommunity.com/ 를 넣어주고 확인
2) 제어판-터미널 및 SNMP에서 SSH 서비스 활성화.
( 포트는 가급적 22번 기본을 사용하지 마시고, 임의로 바꾸세요. 그대로 열려있으면 셀수 없이 많은 공격을 당합니다. 물론 바꾼 포트포워딩도 맞춰서 바꾸세요.)
3) File Station에서 공유폴더를 만들어 놓습니다. ‘EBS’
3. Debian chroot 설치
1) 패키지센터-커뮤니티에서 ‘debian chroot’를 설치합니다.
(이때 python이 설치되어 있지 않으면, 자동으로 설치시작합니다. 혹시 설치실패라고 나오면 패키지센터-설정-신뢰수준-모든 게시자로 바꾸면 됩니다.)
2) 패키지 센터-설치됨에서 Debian Chroot가 실행됨으로 표시되는 것을 확인. 중지됨이면 작업-실행을 선택
4. Debian chroot 설정을 위하여
1) 터미널을 통하거나 Putty를 통해 시놀로지에 접속
저는 맥OS라 터미널에서 ssh -p 1234 root@192.168.0.10 로 접속.
(1234는 각자 정해 놓은 ssh포트, 192.168.0.10은 각자 정해 놓은 NAS 주소에 맞게고치면 됩니다. 암호를 물어보는데, 암호는 NAS admin의 암호입니다.)
5. Debian chroot 실행
접속된 상태에서
chroot /usr/local/debian-chroot/var/chroottarget /bin/bash
를 입력하여 실행합니다.
** 지금부터는 debain chroot와 시놀OS를 잘 구분하세요. 확실히 인지 하지 않으면, 나중에 셋팅할 때 헤맵니다. (말해놓고 저도 착각했네요)
6. Debian chroot안에서의 설치 1.
1) apt-get update
2) apt-get install rtmpdump libav-tools
3) apt-get install ffmpeg
6. 시놀로지 OS에서
다시 시놀로지 OS로 나가기 위해 exit
1) 시놀로지의 EBS 디렉토리로 마운트 할 디렉토리 작성
mkdir /usr/local/debian-chroot/var/chroottarget/mnt/public
2) 마운트
mount /volume1/EBS /usr/local/debian-chroot/var/chroottarget/mnt/public
7. 다시 chroot로 들어와서
(chroot /usr/local/debian-chroot/var/chroottarget /bin/bash)
링크된 원강좌에서
http://www.clien.net/cs2/bbs/board.php?bo_table=lecture&wr_id=149252&page=0&sca=&sfl=&stx=&spt=0&page=0&comment_page=last&cwin=#c_276661CLIEN
ebs_record.sh 스크립트 작성
(댓글에 무한비행님 스크립트를 복사해서 사용했습니다.)
이 경우에는
nano /mnt/public/ebs_record.sh
로 입력하여 화일을 생성후 무한비행님 스크립트를 복사해 붙여넣기 하고 control+o, enter하여 세이브하고 control+x 로 나옵니다.
8. 스크립트 실행가능하도록 화일만들기
chmod 777 /mnt/public/ebs_record.sh
9. 실행가능한지 테스트 해보기
cd /mnt/public 해서 디렉토리를 바꿔놓고
ebs_record.sh x 1 x
저는 여기서 실행이 안되더군요1
한참을 삽질한 후
sh ebs_record.sh x 1 x 라고 하거나 ./ebs_record.sh x 1 x라고 하니 실행이 됩니다.
=========================================================
15. 추가
일리어스님의 팁으로 내용을 변경합니다. 감사합니다.
****시놀로지DSM의 작업스케즐러를 이용한 녹음방법
1) test.sh만들기
test.sh 화일을 만들어 (7.항목에 화일 만드는 방법있습니다.)
#!/bin/sh
CHROOTTARGET=/usr/local/debian-chroot/var/chroottarget
grep -q "${CHROOTTARGET}/mnt/public " /proc/mounts || mount -o bind /volume1/EBS ${CHROOTTARGET}/mnt/public
chroot ${CHROOTTARGET} /mnt/public/ebs_record.sh test 1 /mnt/public/test
2) file station에서 화일을 EBS 디렉토리에 카피해 놓습니다.
아래 설명해놓은 방법대로 chmod 777 test.sh를 합니다.
3) 시놀로지 DSM 작업스케줄러 셋팅
시놀로지 DSM에서 제어판-시스템-작업스케줄러-생성-사용자정의스크립트
작업: 원하는 이름
사용자정의스크립트에 test.sh
스케줄로 넘어가서 시간을 맞춰놓으시면 나스의 부팅과 관련 없이 잘 녹음이 됩니다.
4) 추가
녹음하고 싶은 프로그램 수 만큼 복사해서,
마지막 줄의 ..... test 1 /mnt/public/test 부분만 바꾸시면 됩니다.
예를 들면 PowerEnglish 20 /mnt/public/PowerEnglish 로 바꾸세요.
10번 이후는 필요없어졌습니다.^o^
다만, 참고할 부분이 있을 듯하여 남겨놓겠습니다.
===============================
10. 자동으로 스케줄에 맞춰 녹음하기 위하여
crontab -e
1) 링크된 원강좌에서 이부분 설명대로 합니다.
저는 여기서 실행이 안되더군요2
다시 한참을 삽질 후
export PATH=./:@PATH 라고 명령을 주고 나니 실행이 되었습니다.
2) 각자 자기의 디렉토리에 맞게 수정하셔야 됩니다.
3) 시놀로지의 DSM에서
좌측 위쪽의 메인메뉴-debian chroot 실행
Debian chroot-service에서
Add
Name: cron
Launch script: /etc/init.d/cron
Status command: /etc/init.d/cron status
4) cron 데몬이 뭔가 문제가 있다고 합니다. 자동시작이 안됩니다.
/etc/init.d/cron stop
/etc/init.d/cron start
라고 한번 죽였다 다시 시작 시켜야만 제대로 작동이 됩니다.
11. 원하는 프로그램 시간 셋팅
각자 알아서.
12. NAS를 재부팅하게 되었을 때
이것도 자동화할 수 있다고 하는데, 저는 여기서 실행이 안되더군요3
그래서 수동으로 해줍니다. 저는 나스를 가능하면 끄지 않습니다.
1) 나스부팅
2) ssh로 접속 ; 위의 4.-1)
3) debian chroot로 접속 ; 위의 5.
4) export PATH=./:@PATH
5) /etc/init.d/cron stop
6) /etc/init.d/cron start
요렇게 해주면 됩니다.
원하시는 분들이 아무쪼록 저보다 덜 고생하고 설치하길 기원합니다^^
13. 녹음 된 것 쉽게 듣기
방법이야 다양하겠지만, 저는 ds file로 접속해서 스트리밍으로 듣는 것이 가장 편했습니다.
추천드리고 가요~
감사합니다 ^^
감사합니다.
집에 있는 토렌트 머신이 더욱 더 실용적으로 사용할 수 있겠네요.
감사합니다^^
제어판의 작업스케쥴러를 이용해서 자동화 할 수 있습니다.
shell파일을 만든후에 작업스케쥴러에서 시간과 날짜를 정해서 자동실행되게 하면 되는데요.
실행명령 칸에
/volume1/ebs/middle.sh
이런식으로 넣어두면 해당 쉘이 실행됩니다. (제 경우 목금토 와 월화수를 구분해서 쉘을 2개 넣어두었어요)
쉘 내용 첨부합니다.
#!/bin/sh
CHROOTTARGET=/usr/local/debian-chroot/var/chroottarget
grep -q "${CHROOTTARGET}/mnt/ebs " /proc/mounts || mount -o bind /volume1/ebs ${CHROOTTARGET}/mnt/ebs
chroot ${CHROOTTARGET} /mnt/ebs_record.sh japan 20 /mnt/ebs/2015/MIDDLE
자동 마운트가 포함되어있구요.
이게 crontab 편집하는것보다 더 잘 되더라구요.(제 경우 크론탭 설정해도 계속 그 시간에 녹음 안되던 버그가 있었어요)
(도전과제군요^^)
제가 따라할 수 있는 수준이 아니네요.
아무튼, 좋은 정보 고맙습니다. :)
+1 ㅜㅜ
#CLiOS
전 해커스 AP News 도 스크립트하고 녹음하고 있습니다만.....
녹음해 놓고 시간 없다는 핑계로 안듣고 공부 안한다는거~~~ ㅡㅡ;
from CV
스크립트 테스트를 하면 아래와 같이 오류 메세지가 나타나는데 어떤 문제 인지 알수 있을까요?
mv: cannot stat ?쁷_20160120-1147.m4a?? No such file or directory
rtsp://new_iradio.ebs.co.kr/iradio/iradiolive_m4a
RADIO_ADDR="rtmp://ebsandroid.ebs.co.kr:1935/fmradiofamilypc/familypc1m"
두 조소 모두 잘되니 원하는대로 골라쓰면 될것같습니다.
apt-get install ffmpeg
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package ffmpeg is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'ffmpeg' has no installation candidate
혹시 몰라 답변 답니다. 저도 좀전에 ffmpeg이 안 깔려서 설치방법 찾다가 링크의 3번항목부터 따라해서 성공했습니다.
https://www.assetbank.co.uk/support/documentation/install/ffmpeg-debian-squeeze/ffmpeg-debian-jessie/
시간이 많이 지났어도 해결 못 했었고요, 현재 나스가 사망해서.... ㅠㅠ
다음에 살려낸 뒤 시도해 보겠습니다. 다시 한 번 감사합니다.
5. chroot 실행에서 Synocommunity에서 패키지 설치하신 분들은 /var/packages/debian-chroot/scripts/start-stop-status chroot 이렇게 하셔야 chroot 실행이 됩니다.
6. mount할 때 DS 6.0이상에서는 mount --bind /경로 이렇게 하셔야 mount가 되네요.