查看: 33654|回复: 29
收起左侧

[项目方案] 图文并茂,从0开始:将树莓派用作BT下载机,并通过OS X甚至手机上的终端及浏览器管理

2013-1-31 06:07:04 | 显示全部楼层 |阅读模式
本帖最后由 wei1000 于 2013-1-31 06:09 编辑

转自Monsterchen.me



随着高清视频的普及,在这个网络带宽同计算机配置增速极度不同步的的神奇地方,原本不太耗系统资源的下载却成为了一项艰巨且费时费电的任务.然而,凭借仅5W左右的功率,将树莓派用作下载机绝对是个不错的选择.

下面小怪兽将向您从0开始介绍,如何将一台安装了Raspbian系统的树莓派设置成一台合格的BT下载机(Raspbian系统如何在树莓派上安装可以参看这里),并通过OS X甚至手机上的终端及浏览器来管理它.

主要分为一下六个部分完成:

  • 1.在OS X上通过SSH连接并远程操控树莓派;
  • 2.装载U盘或者移动硬盘;
  • 3.下载并安装Transmission;
  • 4.配置Transmission;
  • 5.添加下载任务;
  • 6.使用经验.

1.在OS X上通过SSH连接并远程操控树莓派;

(本步骤前提是在第一次开机的系统设置中将SSH设置为打开,
         否则请在树莓派的Terminal中输入sudo raspi-config进入设置.)后悔之前为树莓派专门买了显示器,鼠标键盘,,连接显示器的HDMI线缆等配件.原来,用Mac自带的终端通过SSH连接树莓派才是操控它最好的方式.具体方法为打开应用程序中的"终端"(找不到的话请直接右上角Spotlight搜索),然后输入 ssh pi@***.***.***.***(此处为树莓派所在局域网的IP地址,不知道的话请在树莓派的终端中输入ipconfig命令查看,并且最好在路由器中为树莓派设置固定IP以方便日后管理).之后会出现"pi@***.***.***.***'s password:" 这时输入用户密码即可登陆(默认的为raspberry) .连接成功后会显示"Linux raspberrypi 3.2.27+ #250 PREEMPT Thu Oct 18 19:03:02 BST 2012 armv6lThe programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed Jan 30 00:59:07 2013 from ***.***.***.***"之类的一段话,然后就可以像在树莓派的LXterminal中那样,直接输入命令啦. 2.装载U盘或者移动硬盘;这个主要是用来当保存下载数据的容器.Linux正常是不会自动装载插入的U盘的,因此第一次的装载需要我们人工来完成.插上U盘或者移动硬盘,并在OS X的终端输入 sudo fdisk -l查看U盘所在的位置 .
         
图中箭头所指向的就是我U盘的位置:  /dev/sda1

control+x退出.

然后通过以下命令在系统根目录中创建名为usb的文件夹,用作只后作为U盘的装载点.

sudo mkdir /home/pi/usb

接下来的命令是表示装载位置在/dev/sda1的U盘到/home/pi/usb

uid=pi,gid=pi表示用户"pi"有读写权限(FAT32文件系统本身不支持权限,只能通过这种指派的方式控制读取权限)

sudo mount -o uid=pi,gid=pi /dev/sda1 /home/pi/usb

用完之后卸载U盘的命令为

sudo umount /home/pi/usb


当然,每次开机都要重新装载一次U盘是相当的麻烦,我们可以通过修改fstab表来实现U盘今后的自动装载.

输入 sudo nano /etc/fstab 以超级用户权限打开fstab





如图在下面添加一行

/dev/sda1       /home/pi/usb    vfat    rw,defaults,uid=pi,gid=pi       0         0  (中间的间距最好跟上方保持一致)

然后 control+x 再按y并回车保存即可.

今后就可以实现该U盘的自动挂载啦.


3.下载并安装Transmission;

Transmission是一种BitTorrent客户端,特点是一个跨平台的后端和其上的简洁的用户界面。Transmission以MIT许可证GNU通用公共许可证双许可证授权,因此是一款自由软件[1]

支持一下特性:

  • 数据加密
  • 损坏修复
  • 来源交换 (支持Vuze和μTorrent)
  • 低资源使用
  • 选择种子中要下载的文件
  • Magnet支持
  • 制作种子
  • 远程操纵
  • 快速继续
  • 黑名单,可以按时升级(资料来自PeerGuardian和PeerBlock)
  • 单一监听端口
  • 带宽计划
  • 速度限制(全局或单一)
  • 整理(过滤)
  • HTTPS tracker支持
  • IPv6
  • DHT

(以上转自Wikipedia)

它就是我们下载机运转的核心要素!

输入

sudo apt-get install transmission-daemon

安装Transmission中途遇到yes/no请按y确认.


4.配置Transmission;

首先输入以下命令配置Transmission的权限

sudo usermod -a -G debian-transmission pi

之后是重要的步骤!

首先sudo nano /etc/transmission-daemon/settings.json进入软件的配置文件

将里面 "umask": 18, 的18改成0 --不然后面会出现下一下就Permission denied的权限问题

还有下面的几项

"rpc-authentication-required": true, --远程管理认证需要:是
"rpc-enabled": true, -- 远程管理功能打开:是
"rpc-password": "monsterchen.me", --远程管理的账号(自定义输入)
"rpc-username": "monsterchen.me", --远程管理的密码(自定义输入)
"rpc-whitelist": "*.*.*.*", --白名单IP,全部改为*
"rpc-whitelist-enabled": false,--使用白名单:否

其他的配置可按照需求,自行修改.


settings.json参数设置详细说明
---由于过长无法发布省略,需要观看可前往原帖

改好了以后control+x然后按Y并回车保存.

另外:下载目录最好都设置在U盘中并且最好使用"incomplete-dir"功能方便将完成,未完成的任务区分开.

具体方法为:

创建下载目录,一个是下载完成的目录,一个是未完成的目录,具体目录根据你的情况决定:

mkdir -p /home/pi/usb/incomplete # for incomplete downloads
mkdir /home/pi/usb/complete # finished downloads

并再次修改/etc/transmission-daemon/settings.json

incomplete-dir-enabled设置为true

"download-dir": "/home/pi/complete",

"incomplete-dir": "/home/pi/incomplete",


保险起见(不知道到底是以下这步还是刚刚上面的umask改为了0解决了闹心的下载一下就permission denied的闹心问题 )

最好给Transmission设置最高权限

sudo chmod 777 -R /var/lib/transmission-daemon

以上都配置好之后重启 transmission,分别输入一下命令

sudo service transmission-daemon reload

sudo service transmission-daemon restart


5.添加下载任务.

这一步相对上面的命令行操作就显得生动了起来,

打开浏览器访问树莓派IP加9091端口(刚刚设置中没改默认端口的情况):比如: http://192.168.1.3:9091/ 。访问时输入用户名和密码,刚刚设置时默认没更改的话均为transmission

之后就是类似迅雷的熟悉友好的的下载界面啦






如图.

接下来就可以上传你需要下载的Bt种子们或者直接输入种子文件所在的url更或者磁力链地址.

这是一个美好的过程,喂给它种子,它就开始不知倦怠的帮你没日没夜的自动下载

另外界面下的小扳手图标点击进去后也可以进行一些相关简单的设置,比如限速,下载路径等等.

小乌龟的图标表示开启限速模式.

更多的等待您亲自去探索.


6.使用经验(持续更新)

a.本来之前打算的是用Samba共享文件,直接通过网络将下载好的内容传回Mac或者干脆直接远程在线观看的,后来发现由于网速的原因(我树莓派用的是150M的802.11n无线网卡)基本是很难实现(传输速度慢甚至造成死机).

所以实在的解决方案应该还是通过树莓派下载,然后等任务完成关机.拨出U盘连接并拷回电脑来的实在.然后再树莓派开机前将U盘再插回去.

b.上传下载都最好限速,不然速度超过500k/s的话貌似很容易造成树莓派的死机.

死机的貌似ssh也会失去对树莓派的控制,似乎只有拔插头解决

c.附上常用的控制命令

关机

sudo shutdown -h now (或者 sudo halt)

重启

sudo reboot

重启transmission

sudo service transmission-daemon restart

d.手机也可以进行完全的操控

如图:

一下为iPhone自带浏览器Web管理Transmission的截图










以下为iOS免费应用iTerminal连接树莓派的截图




















e.树莓派+Transmission下载大部分资源甚至比我Mac+迅雷更快!

转自Monsterchen.me

评分

参与人数 1 +1 收起 理由
树老大 + 1 很给力!

查看全部评分

回复

使用道具 举报

2013-1-31 17:04:47 | 显示全部楼层
赞一个哦。
回复 支持 反对

使用道具 举报

2013-2-1 09:35:48 | 显示全部楼层
回复 支持 反对

使用道具 举报

2013-2-1 10:53:12 | 显示全部楼层
回头看
回复 支持 反对

使用道具 举报

2013-2-1 11:24:25 | 显示全部楼层
一次非法关机后,Transmission就不在读取 /etc/transmission-daemon/settings.json,转而读取home/.config/transmission-daemon/settings.json,比较奇怪

而且目前发现的问题是,Transmission开启之后,
sudo shutdown -r now不被执行....pi重启不了。

回复 支持 反对

使用道具 举报

2013-2-2 17:15:56 | 显示全部楼层
专程过来顶贴
回复 支持 反对

使用道具 举报

 楼主| 2013-2-4 06:48:58 | 显示全部楼层
kingfin 发表于 2013-2-2 17:15
专程过来顶贴

哈哈 谢谢支持
回复 支持 反对

使用道具 举报

2013-2-8 14:41:44 | 显示全部楼层
fat32的问题是不能支持大于4G的文件,这几乎是致命的缺点,我把一个USB3.0的1T硬盘(NTFS)用ntfs-3g的方式挂载,可是下载过程中mount.ntfs-3g进程一直保持着极高的CPU占用率,transmission几乎无法抢得CPU。一晚上才下了2G,可是按我10M光纤,一小时就应该下4G以上。没辙只好把一个大U盘格式化成ext4插在上面当存储的地方。大家对移动硬盘的文件系统有什么好的办法吗?

ps 电脑上的NTFS硬盘用uTorrent下载时,也会遇到提示硬盘繁忙的情况,感觉应该是在分配空间。
回复 支持 反对

使用道具 举报

 楼主| 2013-2-9 23:35:16 | 显示全部楼层
focker.v 发表于 2013-2-1 11:24
一次非法关机后,Transmission就不在读取 /etc/transmission-daemon/settings.json,转而读取home/.config/ ...

sudo halt --这个是关机
sudo reboot --这个是重启 我用着都ok的
回复 支持 反对

使用道具 举报

 楼主| 2013-2-9 23:36:20 | 显示全部楼层
focker.v 发表于 2013-2-1 11:24
一次非法关机后,Transmission就不在读取 /etc/transmission-daemon/settings.json,转而读取home/.config/ ...

不再读取 /etc/transmission-daemon/settings.json的问题我到现在一次都还没遇到过..
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注我们,了解更多

官方微信

服务时间:10:00-16:00

13714503811

公司地址:深圳市龙岗区南湾街道东门头路8号

Copyright © 2012-2020 Powered by 树莓派论坛 2019.4  粤ICP备15075382号-1
快速回复 返回列表 返回顶部