k2hyun
디링크 dir-868L Tomatousb Transmission 설치하기 본문
디링크 dir-868L tomatousb 에 transmission 설치하기
원래는 dd-wrt 버전을 사용했는데 무선이 자주 죽어 최신버전 사용해 볼려고 펌업~
그러나 Transmisson으로 파일만 받으면 공유기가 뻗어버려서 다른 펌 찾기 시작....
정펌 2.0 버전 사용한뒤부터는 ddwrt를 정상적으로 사용이 안되는거 같습니다.
장비 종류를 dir-880L로 인식해서 그런게 아닌가 싶습니다.
찾아보니 advancetomato 가 있고 그냥 tomatousb 펌이 있는데
advancetomato펌(tomato-DIR868L-AT-ARM-3.1-136-special)은
ui가 깔금하고 좋은데 설정값 저장후 복원이 안되는 문제로
그냥 tomatousb 펌 tomato-DIR868L-ARM--132-special.trx 버전을 설치했습니다.
펌웨어 다운로드 사이트 http://tomato.groov.pl/download/K26ARM/
외장USB매체 ext 포멧하는 법은 맨 아래 참고사이트를 확인해주세요.
트랜스미션을 설치하려면 opt라는 파티션이 필요합니다.
참고사이트에 opt 파티션 생성하는 법도 있긴 하지만, 이미 ddwrt 사용할때 외장하드 통째로 ext4로 포멧해서 사용중이라... opt 파티션을 따로 또 만들기도 귀찮아서 /dev/sda1 파티션을 이중으로 /opt로 마운트 했습니다.
남들은 쉽게 한거 같은데 정보 찾기가 쉽지가 않더군요.
asus나 netgear쪽은 정보도 많고 펌도 많은데 dlink 868은 .... 좀 빈약하죠.
혹시나 나중에 공유기 초기화 된 후 다시 하게 될때 기억안날까봐 적어둡니다.ㅎ
이글을 보고 따라하시게 될 분이 계실지 모르겠지만...
아래 설정값은 제 장비를 기준으로 작성된것이라서 실제 본인장비 상황에 따라
제대로 적용이 안 될 수도 있으니 참고만 하시길 바랍니다.
최초 설치후 기본 web id, pw는 admin , admin 텔넷 id, pw는 root, admin
xshell5(학교/학생) 버전 또는 Putty 를 이용해서 192.168.0.1 텔넷 접속을 합니다.
Connecting to 192.168.0.1:23...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
kzone login: r // 처음에는 바로 로그인이 안됩니다. 아무거나 입력해주세요.
Password: r
Login incorrect
kzone login: root // 2번째 시도 성공
Password: admin
Tomato v1.28.0000 -132 K26ARM USB special
========================================================
Welcome to the D-Link DIR868L [TomatoUSB]
Uptime: 03:29:19 up 3:00
Load average: 0.16, 0.04, 0.05
Mem usage: 15.9% (used 39.81 of 249.64 MB)
WAN : 11x.20x.12x.20x/24 @ 00:90:xx:0x:Fx:1x
LAN : 192.168.0.1/24 @ DHCP: 192.168.0.100 - 192.168.0.151
WL0 : kzone 2G @ channel: 6 @ 00:90:xx:0x:Fx:xx
WL1 : kzone 5G @ channel: auto @ 00:90:xx:0x:Fx:xx
========================================================
root@kzone:/tmp/home/root#
본격적으로 셋팅 시작~~
root@kzone:/tmp/mnt/sda1# mount /dev/sda1 /opt // /opt 마운트하기
root@kzone:/tmp/home/root# df //마운트 상태 확인
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/root 8192 8192 0 100% /
devtmpfs 127816 0 127816 0% /dev
tmpfs 127816 872 126944 1% /tmp
devfs 127816 0 127816 0% /dev
/dev/sda1 961432904 238085284 674509580 26% /tmp/mnt/sda1
/dev/sda1 961432904 238085284 674509580 26% /opt
root@kzone:/tmp/mnt/sda1#
wget
http://tomatousb.org/local--files/tut:optware-installation/optware-install.sh
-O - | tr -d '\r' > /tmp/optware-install.sh
Connecting to tomatousb.org (107.20.139.176:80)
Connecting to tomatousb.wdfiles.com (52.90.174.192:80)
-
100%
|***********************************************************************************************************|
2826 0:00:00 ETA
root@kzone:/tmp# chmod 755 optware-install.sh
root@kzone:/tmp# sh /tmp/optware-install.sh
Checking system config ...
Using 114.205.127.1 as the default gateway.
Using the following nameserver(s):
nameserver 127.0.0.1
Installing package uclibc-opt_0.9.28-13_mipsel.ipk ...
Some newer versions of DD-WRT does not show download progress bar,
so just be patient - or check STATUS -> BANDWIDTH tab for download
activity in your routers Web-GUI, and then still wait a minute or two.
Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
uclibc-opt_0.9.28-13
100%
|***********************************************************************************************************|
832k 0:00:00 ETA
Updating /opt/etc/ld.so.cache
/opt/sbin/ldconfig: line 1: syntax error: unexpected "("
Installing package ipkg-opt_0.99.163-10_mipsel.ipk ...
Some newer versions of DD-WRT does not show download progress bar,
so just be patient - or check STATUS -> BANDWIDTH tab for download
activity in your routers Web-GUI, and then still wait a minute or two.
Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
ipkg-opt_0.99.163-10
100%
|***********************************************************************************************************|
75850 0:00:00 ETA
/opt/sbin/ldconfig: line 1: syntax error: unexpected "("
/opt/bin/ipkg: line 1:EL@4? found
/opt/bin/ipkg: line 2: syntax error: unexpected "("
/opt/bin/ipkg: line 1:EL@4? found
/opt/bin/ipkg: line 2: syntax error: unexpected "("
/opt/bin/ipkg: line 1:EL@4? found
/opt/bin/ipkg: line 2: syntax error: unexpected "("
설치가 안되는데....
다음 경로로 이동해서 진행하면 됩니다.
root@kzone:/# cd /usr/sbin
root@kzone:/usr/sbin#
root@kzone:/usr/sbin# sh optware-install.sh
Checking system config ...
Using 114.205.127.1 as default gateway.
Using the following nameserver(s):
nameserver 127.0.0.1
Warning: /opt partition not empty!
Installing package uclibc-opt_0.9.28-1_arm.ipk ...
Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
uclibc-opt_0.9.28-1_
100%
|***********************************************************************************************************|
241k 0:00:00 ETA
Installing package ipkg-opt_0.99.163-10_arm.ipk ...
Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
ipkg-opt_0.99.163-10
100%
|***********************************************************************************************************|
72910 0:00:00 ETA
Successfully terminated.
Nothing to be done
An error ocurred, return value: 4.
Collected errors:
Cannot find package uclibc-opt.
Check the spelling or perhaps run 'ipkg update'
Nothing to be done
An error ocurred, return value: 4.
Collected errors:
Cannot find package ipkg-opt.
Check the spelling or perhaps run 'ipkg update'
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/Packages.gz
Inflating http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/Packages.gz
Updated list of available packages in /opt/lib/ipkg/lists/nslu2
Downloading http://tomato.groov.pl/repo-arm/Packages
Updated list of available packages in /opt/lib/ipkg/lists/shibby
Successfully terminated.
root@kzone:/usr/sbin# sleep 5
root@kzone:/usr/sbin# ipkg update
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/Packages.gz
Inflating http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/Packages.gz
Updated list of available packages in /opt/lib/ipkg/lists/nslu2
Downloading http://tomato.groov.pl/repo-arm/Packages
Updated list of available packages in /opt/lib/ipkg/lists/shibby
Successfully terminated.
root@kzone:/usr/sbin# sleep 5
root@kzone:/usr/sbin# cd /
root@kzone:/# ipkg install transmission
Installing transmission (2.84-1) to /opt/...
Downloading http://tomato.groov.pl/repo-arm/transmission_2.84-1_arm.ipk
Installing openssl (0.9.8v-2) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/openssl_0.9.8v-2_arm.ipk
Installing libcurl (7.24.0-1) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/libcurl_7.24.0-1_arm.ipk
Installing zlib (1.2.5-1) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/zlib_1.2.5-1_arm.ipk
Installing libevent (2.0.20-1) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/libevent_2.0.20-1_arm.ipk
Installing gettext (0.14.5-2) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/gettext_0.14.5-2_arm.ipk
Configuring gettext
Configuring libcurl
Configuring libevent
Configuring openssl
Configuring transmission
Configuring zlib
Successfully terminated.
이제 Transmission 데몬 활성화 하기
root@kzone:/tmp/home/root# /opt/bin/transmission-daemon -g /opt/.config/transmission-daemon/
/opt/bin/transmission-daemon: '/opt/lib/libdl.so.0' is not an ELF executable for ARM
/opt/bin/transmission-daemon: '/opt/lib/libdl.so.0' is not an ELF executable for ARM
/opt/bin/transmission-daemon: '/opt/lib/libdl.so.0' is not an ELF executable for ARM
root@kzone:/tmp/home/root#
데몬이 정상적으로 올라갔는지 확인하기
root@kzone:/tmp/home/root# ps
923 root 0 SW< [ext4-dio-unwrit]
962 root 5064 S /opt/bin/transmission-daemon -g /opt/.config/transmission-daemon/
963 root 5064 S /opt/bin/transmission-daemon -g /opt/.config/transmission-daemon/
964 root 5064 S /opt/bin/transmission-daemon -g /opt/.config/transmission-daemon/
965 root 5064 S /opt/bin/transmission-daemon -g /opt/.config/transmission-daemon/
988 root 1520 S telnetd -p 23
Transmisson 활성화 된 후 settings.json 을 수정하면되는데 경로는
root@kzone:/# cd /opt/.config/transmission-daemon/
root@kzone:/opt/.config/transmission-daemon# ls
blocklists resume settings.json stats.json torrents
root@kzone:/opt/.config/transmission-daemon# vi settings.json
바로 편집할경우...
root@kzone:# vi /opt/.config/transmission-daemon/settings.json
i // 편집 시작
{
"alt-speed-down": 50,
"alt-speed-enabled": false,
"alt-speed-time-begin": 540,
"alt-speed-time-day": 127,
"alt-speed-time-enabled": false,
"alt-speed-time-end": 1020,
"alt-speed-up": 50,
"bind-address-ipv4": "0.0.0.0",
"bind-address-ipv6": "::",
"blocklist-enabled": false,
"blocklist-url": "http://www.example.com/blocklist",
"cache-size-mb": 4,
"dht-enabled": true,
"download-dir": "/mnt/sda1/dlna/dwon", //다운로드폴더
"download-queue-enabled": false,
"download-queue-size": 1, //동시다운로드 갯수
"encryption": 1,
"idle-seeding-limit": 30,
"idle-seeding-limit-enabled": false,
"incomplete-dir": "/mnt/sda1/dlna/dwon", //임시다운로드폴더
"incomplete-dir-enabled": false,
"lpd-enabled": false,
"message-level": 2,
"peer-congestion-algorithm": "",
"peer-id-ttl-hours": 6,
"peer-limit-global": 200,
"peer-limit-per-torrent": 50,
"peer-port": 51413, //UPnP 활성화된 포트
"peer-port-random-high": 65535,
"peer-port-random-low": 49152,
"peer-port-random-on-start": false,
"peer-socket-tos": "default",
"pex-enabled": true,
"port-forwarding-enabled": true,
"preallocation": 1,
"prefetch-enabled": 1,
"queue-stalled-enabled": true,
"queue-stalled-minutes": 30,
"ratio-limit": 2,
"ratio-limit-enabled": false,
"rename-partial-files": true,
"rpc-authentication-required": false,
"rpc-bind-address": "0.0.0.0",
"rpc-enabled": true,
"rpc-password": "패스워드",
"rpc-port": 9091,
"rpc-url": "/transmission/",
"rpc-username": "아이디",
"rpc-whitelist": "127.0.0.1",
"rpc-whitelist-enabled": false, // false 변경
"scrape-paused-torrents-enabled": true,
"script-torrent-done-enabled": false,
"script-torrent-done-filename": "",
"seed-queue-enabled": false,
"seed-queue-size": 10,
"speed-limit-down": 5000, //다운속도. 868공유기 usb 최대속도는 4.7Mbps 이기 때문에 5000 으로 설정하면 됩니다
"speed-limit-down-enabled": true, //사용여부
"speed-limit-up": 10, //업속도
"speed-limit-up-enabled": true, //사용여부
"start-added-torrents": true,
"trash-original-torrent-files": false,
"umask": 18,
"upload-slots-per-torrent": 14,
"utp-enabled": true
}
esc // 편집 종료
:wq // 저장후 종료
settings.json파일이 /opt/.config/transmission-daemon/ 폴더 말고도 다른경로에도 있을 수 있는데
ps 명령어로 transmission-daemon 이 마운드된 경로를 확인하고, 그 폴더안에 .config/settings.json 파일을 수정하면 됩니다.
간혹 root@kzone:/# vi /opt/data/torrents/.config/transmission-daemon/settings.json 또는,
root@kzone:/# vi /opt/data/transmission/settings.json /// 이 경로에 있는 파일은 수정해봐야 계속 원본값으로 돌아가니 수정하지 마세요.
수정이 끝났다면
http://192.168.0.1(셋팅된 주소에 따라서) 웹 ui 접속해서 다음 메뉴를 수정하세요.
USB and NAS -> USB Support ->
// Run after mounting
mount /dev/sda1 /opt
/opt/bin/transmission-daemon -g /opt/.config/transmission-daemon/
//Run before unmounting
killall transmission-daemon
//Administration - Scripts - Firewall 스크립트 추가
iptables -I INPUT -p tcp --dport 65534 -j ACCEPT
iptables -I INPUT -p udp --dport 65534 -j ACCEPT
iptables -I INPUT -p tcp --dport 51413 -j ACCEPT
iptables -I INPUT -p tcp --dport 9091 -j ACCEPT
설정이 다 끝났다면 장비 Reboot를 시키고
http://192.168.0.1:9091/transmission/web/ 가 접속되는지 확인하고 다운로드 경로와 Network에 포트가 정상적으로 오픈되었는지만 확인하면 끝~...
이제 dlink dir-868L 공유기를 간이 토렌트 머신으로 사용하면 됩니다.
참고 사이트
http://www.clien.net/cs2/bbs/board.php?bo_table=lecture&wr_id=173414
http://yjpark.tistory.com/146
https://www.reddit.com/r/DDWRT/comments/2o7dku/trouble_installing_optware_help_please/
http://tomatousb.org/tut:how-to-set-up-nas-optware-etc-for-total-noobs
https://klseet.com/index.php/242-tomato/tomato-d-link/337-d-link-dir-868l-a1-flash-to-tomato-by-shibby