IE/Firefox에서 링크된 파일을 간단한 방법(마우스 클릭 세 번)으로 Synology Download Station에서 받도록 하는 방법을 설명합니다.

제가 테스트한 환경은 다음과 같습니다.
———————————————-
ds: ds-106e
IE: 6.0
Firefox: 2.0

설치 방법은 크게 세 단계로 구분됩니다.
———————————————-
1. 데이터베이스 사용자 추가 -> 필요없음. 바로 2번부터 진행하세요.(2008/12/13)
2. 서버 프로그램 환경 설정
3. IE 컨텍스트 메뉴 수정 및 등록

각 단계별로 같은 색상으로 된 부분을 주의해서 보시기바랍니다. 같은 색상은 같은 값으로 설정해야됩니다.

1. 데이터베이스 사용자 추가

먼저 텔넷 또는 ssh로 DiskStation(이하 ds)에 접속합니다.

telnet 192.168.0.2

아래 명령으로 admin 사용자로 접속합니다.

su – admin

Download Station에서 사용하는 데이터베이스 download에 연결합니다.

/usr/syno/pgsql/bin/psql download

php 프로그램에서 접근할 사용자를 생성하고, 권한을 부여합니다.

사용자 ID 및 암호는 알아서 변경해서 사용하시기바랍니다.

CREATE USER oneclick ENCRYPTED PASSWORD ‘gksqkddpqkewk‘;

update pg_shadow set usesuper = ‘t’ where usename=’oneclick‘;

사용자를 삭제하고자할 경우에는 다음 쿼리로 가능합니다.

drop user oneclick;

2. 서버 프로그램 환경 설정

이제 첨부된 파일을 모두 다운로드합니다.
파일은 총 3개로 구성되어 있습니다.

EzDownloader.reg  – IE 컨텍스트 메뉴에 사용자 메뉴를 추가하는 레지스트리 파일
Remove-EzDownloader.reg  – IE 컨텍스트 메뉴에 사용자 메뉴를 삭제하는 레지스트리 파일
EzDownloader.js    – IE 컨텍스트 메뉴에서 사용자 메뉴 클릭 시 서버측으로 명령을 전송하는 스크립트
EzDownloader.php – Synology Download Station 데이터베이스에 작업을 추가하는 프로그램
database_download.php – Synology Download Station 데이터베이스에 연결하는 함수가 저장된 스크립트

먼저 EzDownloader.php와 database_download.php를 ds의 웹루트 디렉토리 내의 특정 디렉토리로 복사합니다.
이 예에서는 /volume1/web/Ez/에 넣었습니다.

mkdir /volume1/web/Ez
cp /volume1/public/EzDownloader.php /volume1/web/Ez/
mkdir /usr/syno/synoman/phpsrc/EzDownloader
cp /volume1/public/database_download.php usr/syno/synoman/phpsrc/EzDownloader/

EzDownloader.php을 열어서 환경설정값 중 $db_user와 $db_passwd를 위에서 추가한 사용자 ID와 암호로 변경합니다. -> 생략, 2008/12/10

    // 환경 설정값
    $db_name         = “download”;
    $db_user          = “oneclick“;
    $db_passwd     = “gksqkddpqkewk“;
    $db_server        = “localhost”;

3. IE 컨텍스트 메뉴 수정 및 등록

EzDownloader.js와 EzDownloader.reg를 특정 디렉토리로 복사합니다.
EzDownloader.js를 텍스트 편집기로 열어서 13번 라인을 각자의 환경에 맞게 수정합니다.
2번 단계에서 EzDownloader.php를 넣어둔 디렉토리(/Ez/)와 동일하게 설정해야됩니다.

// EzDownloader.js의 내용 중 일부분

function AddLink(url)
{
    var EzDOWNLOAD_SERVICE = “http://fft.kr/Ez/EzDownloader.php?url=”;        // 사용자 환경에 맞게 수정할 것!
    
    win.open(EzDOWNLOAD_SERVICE + url, ”, ‘title=no,left=0,top=0,width=200,height=100’);
}

EzDownloader.reg를 텍스트 편집기로 열어서 EzDownloader.js가 위치한 경로를 수정합니다.
경로에는 \가 반드시 \\처럼 두 개가 있어야됩니다.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\다운로드스테이션에서 받기(&E)]@=”file://X:\\Utility\\IE\\EzDownloader.js

이제 EzDownloader.reg을 더블클릭하여 레지스트리에 등록합니다.

추가된 컨텍스트 메뉴 “다운로드스테이션에서 받기”를 삭제하고자할 경우 Remove-EzDownloader.reg를 더블클릭하면 됩니다.

IE를 실행한 후 특정 웹사이트에 접속 후 링크 걸린 URL에서 마우스 오른쪽 버튼을 누르면 아래 화면에서처럼 “다운로드 스테이션에서 받기(E)“란 메뉴가 나타나며 클릭하게 되면 ds의 다운로드 스테이션에서 자동으로 받게 됩니다.

사용자 삽입 이미지
이상으로… ds의 관리자 페이지의 [다운로드 서비스 – 다운로드 관리]에서 작업이 추가된 것을 확인할 수 있으며, 다운로드 스테이션에서 설정한 디렉토리에 해당 파일이 받아지고 있는 것을 확인할 수 있습니다.

Firefox에서 사용하기

위 설명에서 1. 데이터베이스 사용자 추가, 2. 서버 프로그램 환경 설정까지는 동일합니다.

Firefox Extension(부가 기능)까지 만들려고 했으나 복잡해서 이미 나와 있는 부가 기능을 사용하여 이 팁을 이용하는 방법으로 설명하겠습니다.
먼저 Firefox Extension인 IE View를 설치합니다.
설치 후 Firefox 메뉴 [도구-확장 기능]에서 “IE View”의 설정 버튼을 클릭하여 인수 (선택사항)을 http://fft.kr/Ez/EzDownloader.php?url= 과 같이 설정합니다(url= 다음에는 공백이 없으니 주의하세요). 여기서 EzDownloader.php를 올린 웹서버의 주소와 디렉토리를 정확히 입력합니다.
사용자 삽입 이미지
이제 모든 설정이 완료되었습니다.
Firefox에서 특정 페이지에 접속 후 링크 걸린 URL에서 마우스 오른쪽 버튼을 누르면 아래 화면에서처럼 “이 링크를 IE로 열기“란 메뉴가 나타나며 클릭하게 되면 ds의 다운로드 스테이션에서 자동으로 받게 됩니다.
사용자 삽입 이미지
“IE View”의 원래 기능은 “외부 응용 프로그램으로 링크 열기(X)” 메뉴를 이용하면 됩니다.

주의: EzDownloader.php가 있는 경로는 타인에게 알려지지 않도록 주의하세요.. 혹시나 알려지면 다른 사람이 자신의 넷하드에 파일을 다운로드하게 만들 수도 있습니다.


2008/12/13 변경 사항
——————————————————————————————
펌웨어 DSM 2.0-0728에서 동작되도록 변경