我们已经将您的DD-WRT路由器置于一档,并具有Opkg包管理器的强大功能。是时候安装变速箱和换档装置了。 How-To Geek解释了如何在DD-WRT上安装BiTorrent客户端传输。

图片来自Nathan E和Aviad Raviv

如果您还没有,请务必查看系列中以前的文章:

  • 使用DD-WRT将您的家庭路由器变成超级供电的路由器
  • 如何在家庭路由器上安装附加软件(DD-WRT)
  • 如何在DD-WRT上使用Pixelserv删除广告

假设您熟悉这些主题,请继续阅读。请记住,本指南更具技术性,初学者在修改路由器时应该小心。

普雷洛格

虽然Transmission不是唯一可以从OpenWRT OPKG存储库安装的BiTorrent客户端,但由于它是所有主要Linux发行版(例如Ubuntu和Mint)的事实标准,因此它是稳定的,主动的保持和非常多才多艺。作为其多功能性的一部分,它可以通过许多程序进行远程控制,包括至少两个Windows程序和一个Web界面。

在本指南中,我们将:在路由器上安装传输,让它在路由器启动时自动加载,并通过Windows机器和Web界面在本地网络上进行远程控制。

先决条件和假设

  • 假设您没有随机访问本文,并且您已经按照“如何在家庭路由器上安装附加软件(DD-WRT)”中描述的过程,在此过程中满足该指南的先决条件。
  • 它是 非常 建议您将HardDrive(HD)连接到路由器,并且根据以下说明,假设您有。
  • 假设所述HD已经格式化。 注意:在分区+格式化(1,2)时,HD超出了本指南的范围,因为版本17798的DD-WRT支持所有常见的文件系统,如FAT32 + ext2 / 3和NTFS,您不应该做任何特别的事。

随着那个...

让我们开始吧

启用UPnP

UPnP是一种机制,通过该机制,网络上的程序可以请求路由器自动将端口转发给它们。这样做可以免除您自己打开/转发路由器上的端口到传输守护进程。

要做到这一点,请转到路由器的web-gui:

  • 转到“NAT / QoS” - “UPnP”。
  • 对于“UPnP服务”,选择“启用”单选按钮。
  • (可选)选择“启用”单选按钮“启动时清除端口转发”。

  • 保存并应用设置。

安装HardDrive(HD)

如果您还没有,请使用路由器的web-gui安装HD。要做到这一点,请转到路由器的web-gui:

  • 在“服务”选项卡下,转到“USB”选项卡。
  • 选择“核心USB支持”,“USB存储支持”和“自动驱动器安装”的“启用”单选按钮。

  • 保存并应用设置。

安装包

我们将通过从终端发出来安装守护程序包:

opkg update; opkg install transmission-daemon

包配置

现在安装了传输,运行守护程序一次,以便为我们创建默认设置文件模板。我们将在前台运行它(“-f”标志),以便在稳定后更容易看到它并且一旦它已经退出。问题:

transmission-daemon -f

一旦程序启动了大约10秒钟,就可以通过点击“Ctrl + C”来退出。

目录

创建将保存torrent指针,部件,配置和下载的目录。对于我的设置,这是:

mkdir -p /mnt/sda_part1/torrents/parts/ mkdir -p /mnt/sda_part1/torrents/config/

注意:上面假设一个HD连接到路由器,并且它在第一个分区上有一个带有文件系统的分区布局。虽然这是一种非常常见的默认设置,但根据HD的分区和格式布局, 这可能会有所变化.

复制第一次运行守护程序创建的配置文件:

cp /tmp/root/.config/transmission-daemon/settings.json /mnt/sda_part1/torrents/config

注意:尽管有代表性,但这是一个继续的路线。

下面的命令将“192.168.11。*”网络添加到rpc-whitelist参数。这将允许我们从本地网络上的任何计算机(使用远程gui程序)连接到路由器上的守护程序。

sed -i 's/127.0.0.1/127.0.0.1,192.168.11.*/g' /mnt/sda_part1/torrents/config/settings.json

注1:尽管有代表,但这是一个继续的路线。 注意2:如果您的网络子网不同,则必须进行相应调整。

再次执行守护进程,这次指示它使用备用配置目录(“-g”标志)。

transmission-daemon -f -g /mnt/sda_part1/torrents/config

您应该看到守护程序已经启动,如果仔细观察,您应该看到程序使用的路径也已更改为新路径。让守护进程暂时保持打开状态,我们将需要它并运行GUI段。

远程GUI

有两个Windows程序可以远程控制守护进程,它们是:Transmisson-remote-gui和Transmission-remote-dotnet。两者似乎都是全功能和积极维护。虽然您可以选择其中任何一个,但为了本文的目的,我们将使用“transmission-remote-dotnet”,因为除了其他外观上的差异,它们几乎完全相同。

我们将安装客户端,然后使用它来更改服务器上的设置,因为这样更容易手动编辑设置文件。

配置本地设置

  • 从项目的站点下载最新的Transmission-remote-dotnet,并正常安装。
  • 启动程序并从“选项”菜单或扳手图标进入“本地设置”。

  • 转到“服务器设置”选项卡。

  • 单击“添加服务器”。
  • 然后单击刚刚添加的“服务器0”名称,以便我们更改其设置。
  • 在主机字段中输入路由器的IP。
  • 点击“保存”。

  • 单击“文件” - >“连接”或连接图标,连接到路由器上运行的守护程序。

配置远程守护程序
  • 单击“选项”选择“远程设置”。

  • 在下载到文本框中放置:“/ mnt / sda_part1 / torrents”
  • 选中“不完整下载到”复选框。
  • 在不完整的文本框中输入:“/ mnt / sda_part1 / torrents / parts”
  • 更改加密下拉列表以选择“首选”。

  • 点击“保存”。

就是这样,您应该能够像在计算机上安装的任何其他BiTorrent客户端一样使用该程序。

启用Web界面(可选)

虽然使用上面的一个远程gui程序已经足够了,但您可能需要一种方法来访问守护进程,而不必绑定到特定设备上的程序。这是因为今天的个人设备的胸膜,跟踪可用的内容变成了一项艰巨的任务,简单地将网络浏览器指向路由器应该是(如果你是忠诚的DD-WRT用户)第二天性到现在为止。此外,还有一个网络界面,可以让您在“随时随地”添加下载内容。虽然可以公开访问Web-GUI超出了本指南的范围,但我们将展示如何安装和配置Web界面,以后您可以凿开公共可访问性。

通过在终端中发布来安装包:

opkg update; opkg install transmission-web

传输将自动在多个默认位置查找Web界面。我们在最后一步中以“前台”模式(-f标志)运行传输,以便在尝试访问Web界面时可以看到这些位置。现在,你会失败,你会看到其中一个位置是“/tmp/root/.local/share/transmission/”。对我们来说幸运的是,这个位置位于可读写的路由器RAM上。因此,我们实际需要做的就是在RAM中的这个位置与Web界面已安装到的位置之间创建一个符号链接,作为JFFS上的包的一部分。要执行此操作,请通过发出以下命令创建位置(现在手动):

mkdir -p /tmp/root/.local/share/transmission/

现在再次手动创建符号链接,方法是:

ln -s /jffs/opt/usr/share/transmission/web/ /tmp/root/.local/share/transmission/web

注意:尽管有代表性,但这是一个继续的路线。

尝试再次访问Web界面:http:// your-router's-ip-or-dns:9091。对于我的设置,这将是,IP:“http://192.168.11.1:9091”或本地DNS名称:“http://buffalo.aviad.lan:9091”。

如果一切顺利并且您添加了要下载的内容,您应该看到类似的内容:

创建和使用交换文件(可选)

“交换文件”就像Windows“页面文件”一样,实际上过去微软过去也把它称为“交换文件”。在起草本文时,我发现一种情况,即守护程序会遇到内存泄漏和崩溃(请参阅备注部分)。为了尝试克服这个问题,我设置了Swap(作为分区和文件)。虽然这只会延长不可避免的时间,但就内存泄漏而言,因为我已经投入了努力使这个过程变得简单,我认为没有理由不传递信息。话虽如此,正如标题中所述,这一步骤是 可选的,我可以保证守护进程已经运行了一个多星期并且在至少5种不同的种子上工作时没有中断。但话说回来,我的路由器有128MB的RAM(在路由器圈子中被认为很多),所以如果你的路由器缺乏内存,你可能需要执行这一步。如果您决定实施Swap,尽管没有“需要”,也不应该受到惩罚,因为Linux不应该仅因为它存在而使用Swap(与Windows不同)。

虽然在Linux中习惯使用Swap“分区”,但这样做需要先进行分区,或者更糟糕的是,更改当前布局。如果您已经拥有HD上的数据,这可能会带来不便,在已有的驱动器格式上使用文件会更容易。此外,在比较两个交换利用率模式时,我没有发现性能上的任何显着差异。

我们将创建一个256MB的文件来处理。为此,通过在终端中发出“DD”文件:

dd if=/dev/zero of=/mnt/sda_part1/swap.page bs=1M count=256

警告:此命令(“DD”)非常强大且可能有害。不应轻视“输出文件”(of)指令,因为此处的错误参数可能会导致数据丢失。

安装包,使我们能够通过发出以下命令来创建掉期:

opkg update; opkg install swap-utils

安装swap-utils后,通过发出以下命令创建交换文件:

mkswap /mnt/sda_part1/swap.page

现在通过使用“free”命令检查内存使用情况来测试系统是否能够暗示交换文件。

free

请注意,“交换”行中的参数都是零。

现在通过发出以下命令激活交换文件

swapon /mnt/sda_part1/swap.page

并再次发出免费命令:

free

您现在应该看到“交换”行中的参数已更改,以反映现在总共有256MB的可用交换空间。

自动启动守护程序

为了让Transmission守护进程自动启动路由器的重启,只需要将它添加到OPKG文章中安装的“geek-init”脚本中。在您选择的编辑器中打开geek-init脚本:

vi /jffs/geek/etc/geek-init.sh

如果您已按照本指南中的所有步骤(包括可选步骤),则可以将以下脚本片段附加到geek-init文件的末尾:

logger_general 'transmission setup-er: setting 'home'' export HOME='/tmp/root' logger_general 'transmission setup-er: Creating the directory and symbolic-link for the web interface' mkdir -p /tmp/root/.local/share/transmission/ [ ! -L /tmp/root/.local/share/transmission/web/web ] && ln -s /jffs/opt/usr/share/transmission/web/ /tmp/root/.local/share/transmission/web logger_general 'activating swap' swapon /mnt/sda_part1/swap.page logger_general 'transmission setup-er: Starting the transmission-daemon with the alternate configuration directory.' /opt/usr/bin/transmission-daemon -g /mnt/sda_part1/torrents/config logger_general 'transmission executed'

但是,如果你跳过了可选步骤,虽然按原样保留上述“代码”应该没有任何问题,你可能想要删除任何多余的东西。实际上,如果您已跳过两个可选步骤并放弃注释,则只需要附加:

/opt/usr/bin/transmission-daemon -g /mnt/sda_part1/torrents/config

最后的评论

  • 虽然这可能只是FUD,但最好记住BiTorrent已经成为诉讼的目标,而且一再说过,网络正在受到审查。例如网站http://www.youhavedownloaded.com/。因此,建议您仅使用此torrent客户端,因为我们有合法的种子。
  • 在写这篇文章的过程中,我发现一个torrent会导致传输守护程序进程因内存泄漏而崩溃。我在OpenWRT论坛上描述了这个问题,但在撰写本文时,我的冰雹没有答案。

愿你顺利过渡到传输:)


因为我们知道它是暂时的,当下......我们知道它会转向ASH。

重要提示:
编辑点评: