赞
踩
一般情况下,下载来自 downloads.openwrt.org
的文件时,将 URL 中的这部分域名替换为 mirrors.ustc.edu.cn/openwrt
即可。
如要使用本镜像作为 OpenWRT/LEDE 系统 opkg 软件仓库,SSH 登录路由器编辑 /etc/opkg/distfeeds.conf
文件,同样按照上面的方法替换域名即可。可以使用如下命令操作:
sed -i 's/downloads.openwrt.org/mirrors.ustc.edu.cn\/openwrt/g' /etc/opkg/distfeeds.conf
如果原来是腾讯的话
sed -i 's/mirrors.cloud.tencent.com/mirrors.ustc.edu.cn\/openwrt/g' /etc/opkg/distfeeds.conf
之后运行 opkg update 更新软件索引,注意检查是否出现错误。具体可参考OpenWRT/LEDE 源使用帮助。
ssh登录openwrt路由器,执行以下命令。
opkg update
opkg install transmission-daemon
opkg install transmission-cli
opkg install transmission-web
opkg install transmission-remote
opkg install luci-app-transmission
opkg install luci-i18n-transmission-zh-cn
随系统启动/etc/init.d/transmission enable
,启动/etc/init.d/transmission start
,
停止/etc/init.d/transmission stop
,状态/etc/init.d/transmission status
注意,配置文件在cat /etc/config/transmission
,你需要修改config_dir
目录,download_dir
目录,incomplete_dir
目录(在文件完成之前存储文件的位置)。
有一个option enabled 0
的选项,你要把它改为option enabled 1
。
安装transmission-web-control
获取脚本
wget https://gitee.com/culturist/transmission-web-control/raw/master/release/install-tr-control-gitee.sh
安装,执行安装脚本(如果系统不支持 bash 命令,请尝试将 bash 改为 sh ):
bash install-tr-control-cn.sh
出现这个问题的原因是配置的config文件夹权限不对,一定要指定所有者为 transmission 这个账号,如果不是的话,就算你设置成0777也未必有用。
设置的方法为 chown transmission.transmission config_dir -R
,其中的config_dir为你自己的配置路径。
“dht-enabled”: false,
打开http://你的路由器IP地址:9091/transmission/
,后面的transmission一般不用加,加端口就可以自动跳转。在没有用迅雷和百度网盘的情况下,下载速度达到了600kB/s,挺不错的。
There are several implementations of the BitTorrent peer-to-peer file sharing protocol. Transmission is only one of them. After installation (opkg install transmission-daemon
) there should be a config file in the uci directory.
A few more details about configuration file (/etc/config/transmission) can be found here.
You’ll probably need to set up USB support and format your drives for storage first, see the articles here and here.
the daemon: transmission-daemon
is a daemon that runs in the background and is designed to not have any form of visual interface, consult transmission
opkg update
opkg install transmission-daemon
a control instance:
transmission-cli
: to control the transmission daemon via [CLI (Command-line interface)](https://en.wikipedia.org/wiki/Command-line interface) on the server, consult transmissioncli
opkg install transmission-cli
transmission-web
to control the transmission daemon over [HTTP (Hypertext Transfer Protocol)](https://en.wikipedia.org/wiki/Hypertext Transfer Protocol) from a remote host machine with a web browser
opkg install transmission-web
transmission-remote
to control the transmission daemon over the transmission JSON-[RPC (Remote Procedure Call)](https://en.wikipedia.org/wiki/Remote procedure call) from a remote host machine with a GUI program, e.g. transmission-gtk/transmission-qt or a python-transmissionrpc or transmisson-remote-gui for OS other then Debian
opkg install transmission-remote
To enable Transmission at all, put option enable 1
into /etc/config/transmission
.
If you want to start Transmission on boot, run
/etc/init.d/transmission enable
To start Transmission, run
/etc/init.d/transmission start
If you wish to use the web server, besides installing the package (see above), you might need to whitelist your IP address (if it is not in 192.168.1.0/24) via option rpc_whitelist '127.0.0.1,192.168.1.*,your_ip_address
’ in the transmission configuration. By default, the server listens on port 9091. ie. 192.168.0.1:9091
To control transmission remotely via RPC, install Transmission Remote GUI and set it up just like the webserver above. The RPC interface uses the same port as the web interface.
There is only one section: /etc/config/transmission
.
You’ll probably want to change the config_dir, download_dir, and incomplete_dir variables to point to locations on external storage.
您可能需要更改config_dir、download_dir和incomplete_dir变量以指向外部存储上的位置
config transmission
option enable 1
option config_dir '/etc/transmission'
option alt_speed_down 50
option alt_speed_enabled false
option alt_speed_time_begin 540
option alt_speed_time_day 127
option alt_speed_time_enabled false
option alt_speed_time_end 1020
option alt_speed_up 50
option bind_address_ipv4 '0.0.0.0'
option bind_address_ipv6 '::'
option blocklist_enabled false
option dht_enabled true
option download_dir '/mnt/sda4/'
option encryption 1
option incomplete_dir '/mnt/sda4/incomplete'
option incomplete_dir_enabled false
option lazy_bitfield_enabled true
option lpd_enabled false
option message_level 2
option open_file_limit 32
option peer_limit_global 240
option peer_limit_per_torrent 60
option peer_port 51413
option peer_port_random_high 65535
option peer_port_random_low 49152
option peer_port_random_on_start false
option peer_socket_tos 0
option pex_enabled true
option port_forwarding_enabled false
option preallocation 1
option proxy ""
option proxy_auth_enabled false
option proxy_auth_password ''
option proxy_auth_username ''
option proxy_enabled false
option proxy_port 80
option proxy_type 0
option ratio_limit 2.0000
option ratio_limit_enabled false
option rename_partial_files true
option rpc_authentication_required false
option rpc_bind_address '0.0.0.0'
option rpc_enabled true
option rpc_password ''
option rpc_port 9091
option rpc_username ''
option rpc_whitelist '127.0.0.1,192.168.1.*'
option rpc_whitelist_enabled true
option script_torrent_done_enabled false
option script_torrent_done_filename ''
option speed_limit_down 100
option speed_limit_down_enabled false
option speed_limit_up 40
option speed_limit_up_enabled true
option start_added_torrents false
option trash_original_torrent_files false
option umask 18
option upload_slots_per_torrent 14
option watch_dir_enabled false
option watch_dir ''
Name | Type | Required | Default | Option | Description |
---|---|---|---|---|---|
config_dir | path | Where the configuration files are | |||
bind_address_ipv4 | IP Address | ||||
bind_address_ipv6 | IPv6 Address | ||||
download_dir | path | Where to store you downloaded files | |||
incomplete_dir_enabled | boolean | Whether to store incomplete files somewhere else | |||
incomplete_dir | path | Where to store files untill they are finished | |||
dht_enabled | boolean | Whether to enable dht (distributed hash tables) | |||
blocklist_enabled | boolean | Whether to make use of the blocklist defined in config_dir | |||
encryption | integer | Whether to use encrypted connections only (allow encryption: 0, prefer encryption: 1, require encryption: 2) | |||
pex_enabled | boolean | ||||
speed_limit_down_enabled | boolean | Whether transmission should limit its download speed | |||
speed_limit_down | integer | in KByte/s | |||
speed_limit_up_enabled | boolean | Whether transmission should limit its download speed | |||
speed_limit_up | integer | in KByte/s | |||
alt_speed_enabled | boolean | Whether transmission should use two speed limit settings | |||
alt_speed_down | integer | in KByte/s | |||
alt_speed_up | integer | in KByte/s | |||
alt_speed_time_enabled | boolean | Whether to switch between the two speed-setting on a time table | |||
alt_speed_time_day | 7-bit bitmask, 0000001=sunday, 1000000=saturday | ||||
alt_speed_time_begin | default = 540, in minutes from midnight, 9am | ||||
alt_speed_time_end | default = 1020, in minutes from midnight, 5pm | ||||
upload_slots_per_torrent | how many peers can download a torrent at a time | ||||
open_file_limit | integer | remember the low system memory | |||
peer_limit_global | integer | the max number of peers globaly | |||
peer_limit_per_torrent | integer | the max number of peers with connection per torrent | |||
peer_port | integer | the fixed port transmission listens to incomming connections | |||
peer_port_random_high | integer | highest port of the port range | |||
peer_port_random_low | integer | lowest port of the port range | |||
peer_port_random_on_start | boolean | whether to use random ports instead of a fixed one from the beginning | |||
peer_socket_tos | boolean | whether type of service is enabled | |||
port_forwarding_enabled | boolean | ||||
preallocation | boolean | whether to fill the space for chunks not yet downloaded with “0” (helps avoiding fragmentation) | |||
ratio_limit_enabled | boolean | whether to use a limit ratio | |||
ratio_limit | integer | automaticaly stop seeding a torrent when it reaches this ratio (with a GUI you can enable this for every torrent separately) | |||
rename_partial_files | boolean | ||||
rpc_enabled | boolean | Whether transmission-daemon should be remote controlled by a GUI on a host machine | |||
rpc_bind_address | IP Address | the address on which transmission-daemon listens to rpcs | |||
rpc_port | IP Port | the port on which transmission-daemon listens to rpcs | |||
rpc_authentication_required | boolean | whether rpc needs authentication | |||
rpc_username | string | user name | |||
rpc_password | string | password | |||
rpc_whitelist_enabled | boolean | whether to make use of the whitelist | |||
rpc_whitelist | IP Addresses | the IPs of the hosts allowed | |||
watch_dir_enabled | boolean | Whether to check a directory for new torrents put there. Leave this disabled It requres inotify enabled in kernel to works, which is not enabled by default in openwrt. | |||
watch_dir | path | Path to the directory | |||
script_torrent_done_enabled | boolean | ||||
script_torrent_done_filename | |||||
start_added_torrents | boolean | ||||
trash_original_torrent_files | |||||
umask | integer | Sets file mode creation mask. The mask should be in base 10 due to the json markup language used by Transmission. For instance, the standard umask octal notation 022 is written as 18 . If you want to save downloaded torrents to be world-writable (equivalent to chmod 777 or chmod a+rwx ) set this value to 0 . | |||
lazy_bitfield_enabled | boolean | ||||
lpd_enabled | boolean | ||||
message_level | integer | ||||
proxy_enabled | boolean | whether to use a proxy | |||
proxy | IP address | IP adress of the proxy | |||
proxy_port | integer | IP port of the proxy | |||
proxy_type | integer | Type of the proxy (http: 0, socks4: 1, socks5: 2) | |||
proxy_auth_enabled | boolean | Whether proxy needs authentication | |||
proxy_auth_username | string | username for the proxy | |||
proxy_auth_password | string | password for the proxy |
A video demonstration of how Transmission 2.84 can be installed on OpenWrt 14.07 Barrier Breaker: https://www.youtube.com/watch?v=_R1Kcpy4pj4 (video removed)
A script for adding alternative trackers to the select torrent searching it from its name or number. Source
#!/bin/ash
# Source: https://github.com/oilervoss/openwrt/tree/transmission
TRANSMISSION_REMOTE='/usr/bin/transmission-remote'
# Below is a command that will generate a tracker list with one tracker per line. Using live updated https://github.com/ngosang/trackerslist
# You can use /some/path/trackers.txt for a static list
LIVE_TRACKERS_LIST_CMD='curl -s --url https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_best_ip.txt'
TORRENTS=`$TRANSMISSION_REMOTE -l 2>/dev/null`
PARAMETER=$1
if [ $? -ne 0 ]; then
echo -e "\n\e[0;91;1mFail on transmission. Aborting.\n\e[0m"
exit 1
fi
if [ $# -eq 0 ]; then
echo -e "\n\e[31mThis script expects one parameter\e[0m"
echo -e "\e[0;36maddtracker \t\t- list current torrents "
echo -e "addtracker \$number\t- add trackers to torrent of number \$number"
echo -e "addtracker \$name\t- add trackers to first torrent with part of name \$name"
echo -e "\n\e[0;32;1mCurrent torrents:\e[0;32m"
echo "$TORRENTS" | sed -n 's/\(^.\{4\}\).\{64\}/\1/p'
echo -e "\n\e[0m"
exit 1
fi
# return number by searching
# transmission-remote -l | grep -i "Blueray" | sed -n 's/ *\([0-9]\+\).*/\1/p'
if [ "${PARAMETER//[0-9]}" != "" ] ; then
PARAMETER=`echo "$TORRENTS" | grep -i "$PARAMETER" | sed -n 's/\([0-9]\+\).*/\1/p'`
if [ "${PARAMETER//[ ]}" != "" -a "${PARAMETER//[0-9 ]}" = "" ] ; then
echo -e "\n\e[0;32;1mI found the following torrent:\e[0;32m"
echo "$TORRENTS" | sed -n 's/\(^.\{4\}\).\{64\}/\1/p' | grep -i "$1"
fi
fi
NUMBERCHECK=`echo "$TORRENTS" | sed -n '1d;s/\(^.\{4\}\).*/\1/;/Sum/!p'|grep "$PARAMETER"`
if [ "${PARAMETER//[0-9 ]}" != "" -o "${NUMBERCHECK//[ ]}" = "" ] ; then
echo -e "\n\e[0;31;1mI didn't find a torrent with text/number: \e[21m$1"
echo -e "\n\e[0;32;1mCurrent torrents:\e[0;32m"
echo "$TORRENTS" | sed -n 's/\(^.\{4\}\).\{64\}/\1/p'
echo -e "\e[0m"
exit 1
fi
echo
$LIVE_TRACKERS_LIST_CMD | while read TRACKER
do
if [ "$TRACKER" != "" ]; then
echo -ne "\e[0;36;1mAdding $TRACKER\e[0;36m"
$TRANSMISSION_REMOTE -t $PARAMETER-td $TRACKER 1>/dev/null 2>&1
if [ $? -eq 0 ]; then
echo -e " -> \e[32mSuccess! "
else
echo -e " - \e[31m< Failed > "
fi
fi
done
echo -e "\e[0m"
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。