Synology Auto Indexing tool 소개 : Midiamon

반응형

배경

Synology 에서는 일반적으로 App.에서 파일의 이동, 삭제, 추가시에 자동으로 Indexing 을 수행한다.

이를 통해서, Video, Music, Photo station 에서 파일의 이동을 감시하여,

변경된 파일에 대해서 App.별로 처리를 수행하게 된다.

하지만, Synology의 인덱싱은 파일 변경 추가에 대하여, 너무나 기본적인 기능만을 지원 한다.

Window탐색기 혹은 File Station에서의 변경만 체크하여 수행한다.(일반적 사용자의 경우 충분함)

문제점

예를 들어, 리눅스의 별도 명령어를 통해서 파일을 이동하는 경우에 대해서는 파일의 색인을 올바르게 지원하지 않는다.

전체 풀 색인을 새로 할 수는 있으나, 그런 경우 파일의 정렬 날짜가 올바르게 되지 않는 문제점과 많은 시간이 필요로 하게 된다.

이에 나는 증분방식을 통한 Indexing을 수행하기 위한 방법을 찾았으나,

일반적인 방식은 풀스캔이후에 그것을 정리 하여 반영해주는 원리로, 실시간 적용에 어려움이 있었다.

해결방안

하지만 Mediamon의 경우 파일 변경시 바로 즉각 적으로 확인후 반경 된다.

다운로드 링크 : https://github.com/carljm/synology-mediamon

 

carljm/synology-mediamon

Auto-indexing media files monitor for Synology DiskStation NAS - carljm/synology-mediamon

github.com

1. Synology Package Center에서 python3 설치

Setup Python 3 in synology 

2. Mediamon 다운로드 및 설정

1) Mediamon 다운로드

다운로드 링크 :https://github.com/carljm/synology-mediamon

2) 파일 복사

아래의 경로로 2개의 파일 복사

대상 파일 : mediamon.py , S99mediamon.sh

복사 경로 : /volume1/homes/admin

3) 파일 수정 (감시경로 설정)

- 감시 경로 설정 : mediamon.py 편집기로 열어서, 아래의 부분을 수정 (본인이 원하는 경로를 설정)

watched_paths = ["/volume1/video/KTV", "/volume1/video/MTV", ""]

4) Putty 접속

  1. 관리자 아이디 접속 및 로그인

  2. sudo -i 를 입력하여 root접속 (root 비번은 admin의 비번과 동일)

  3. pyinotify 설치 (putty에서 그대로 입력)

  4. python3 -m ensurepip

  5. python3 -m pip install pyinotify

  6. 올바르게 작동하는지 체크

  7. python3 -m pyinotify -v /tmp

  8. 부팅시 자동으로 작동되도록 파일 복사

    cp /volume1/homes/admin/S99mediamon.sh /usr/local/etc/rc.d/ && chmod 755 /usr/local/etc/rc.d/S99mediamon.sh

3. Synology 셋팅

  1. 옵션 변경

    echo fs.inotify.max_user_watches=100000 | sudo tee -a /etc/sysctl.conf; sudo sysctl -p

  2. 동작 (부팅시에 자동 작동되나, 수동 작동 할시)

    /usr/local/etc/rc.d/S99mediamon.sh start

    저의 경우 Synology 부팅 스크립트에서 한번더 실행 하였습니다.

  1. 로그 확인

    /var/log/mediamon.log

댓글

Designed by JB FACTORY