4回答

0收藏

使用 Raspberry Pi 和 aria2 打造低功耗下载机

Raspberry Pi Raspberry Pi 10264 人阅读 | 4 人回复 | 2013-12-03

本帖最后由 haothree 于 2013-12-3 09:06 编辑

树莓派(Raspberry Pi)是一款基于 Linux 系统的只有一张信用卡大小的单板机电脑,详细介绍见维基百科。利用树莓派廉价、低功耗、可扩展的特性,我们可以用它打造下载机、开关、小型服务器,甚至是电话。

一. 准备

树莓派,红板(Made in China)比较便宜, 也没发现有什么质量问题

4G 以上 SD 卡,推荐 class 10,树莓派支持的 SD 卡列表

5V 电源,最低 700mA,推荐 1A 以上

有源 USB Hub,推荐使用有隔离的,即不能向树莓派反向供电的

移动硬盘、网线、USB 键鼠(可选)、HDMI 线或 HDMI 转 DVI 线(可选)

二. 安装及配置系统

1.官方的下载页面提供了四种镜像供选择,我推荐 Linux 初学者使用 Raspbian “wheezy”,有一定经验的 Linux 用户使用 Arch Linux ARM,本文以 Arch Linux ARM 为例。

2.Windows 下使用 Win32 Disk Imager 写入镜像到 SD 卡,Linux 下使用 dd 命令写入。Raspberry Pi 和 Arch Linux 的官方 wiki 都有详细说明,不再赘述。

注意:引导在镜像中就已经配置好了,直接把镜像写入 SD 卡中就可以使用,不需要其他操作。

3.Arch Linux 的官方 wiki 有安装系统的详细说明,这里亦不再赘述。如果只是用 Raspberry Pi 当下载机的话,配置好 ip 就可以了,如果路由器使用 DHCP 自动分配 ip,则插上电源和网线就行了。

4.为了方便,本文使用 ssh 管理 Raspberry Pi。

初次使用你需要以类似 ssh root@192.168.1.3 来登录 Raspberry Pi。为了不每次登录时都输入密码,你可以使用 ssh-keygen -t rsa 生成密钥对,并把公钥加入到 ~/.ssh/authorized_keys 中。然后编辑本机上的 ~/.ssh/config,加入
  1. Host pi
  2.     HostName 192.168.1.3
  3.     User root
  4.     StrictHostKeyChecking no
  5.     UserKnownHostsFile=/dev/null
复制代码
然后你就可以使用 ssh pi 来登录 Raspberry Pi 了。

5.编辑 /etc/pacman.d/mirrorlist(可选),默认国内用户使用清华大学的源,但那个源经常挂,推荐使用美国加利福尼亚的源。

注意:Arch Linux 和 Arch Linux ARM 的源不一样,不要混用!

6.配置开机自动登录 root,参见官方 wiki。

7.编辑 /etc/fstab,实现开机自动挂载移动硬盘,比如
  1. UUID=000AE1FF0005EA71 /media/System ntfs-3g defaults,nofail 0 0
  2. UUID=000A675F0001C38E /media/Files ntfs-3g defaults,nofail 0 0
复制代码
关于 fstab 的详细说明及挂载选项,参见官方 wiki。


三. 安装及配置 aria2

1.安装 aria2、nginx 和 git(nginx 和 git 一会要用到),设置 nginx 开机自启动
  1. pacman -S aria2 nginx git
  2. systemctl enabel nginx
复制代码
2.配置 aria2,编辑 ~/.aria2/aria2.conf,所有选项见官方文档,以下是一些示例
  1. # 断点续传
  2. continue=true
  3. # 以后台程序运行
  4. daemon=true
  5. # 下载目录,没有该目录用 mkdir 命令新建,不然会报错
  6. dir=/media/Files/Downloads/
  7. # 开启 rpc 模式
  8. enable-rpc=true
  9. # 关闭文件预分配,建议关闭,不然下个大文件得等半天
  10. file-allocation=none
  11. # 命令行模式下多任务下载
  12. force-sequential=true
  13. # 读取下载进度文件,没有该文件用 touch 命令新建,不然会报错
  14. input-file=/media/Files/Downloads/aria2.session
  15. # 保存日志到文件,没有该文件用 touch 命令新建,不然会报错
  16. log=/var/log/aria2.log
  17. # 日志级别
  18. log-level=notice
  19. # 最大同时下载任务数
  20. max-concurrent-downloads=3
  21. # 同服务器最大连接数
  22. max-connection-per-server=5
  23. # 开启命令行模式下的参数化模式,比如 http://{sv1,sv2,sv3}/foo.iso 或 http://host/image[000-100:2].img
  24. parameterized-uri=true
  25. # YAAW 需要
  26. rpc-allow-origin-all=true
  27. # rpc 模式下,允许从外部访问
  28. rpc-listen-all=true
  29. # 保存 BT 种子和磁力链接的元数据
  30. rpc-save-upload-metadata=true
  31. # 保存下载进度到文件,没有该文件用 touch 命令新建,不然会报错
  32. save-session=/media/Files/Downloads/aria2.session
  33. # 自动保存下载进度到文件的时间
  34. save-session-interval=60
  35. # 单文件最大线程数
  36. split=5
复制代码
3.配置 aria2 开机自启动,编辑 ~/.bash_profile
  1. if [ ! -d "/media/Files/Downloads/" ]; then
  2.     mkdir '/media/Files/Downloads/'
  3. fi
  4. if [ ! -f "/media/Files/Downloads/aria2.session" ]; then
  5.     touch '/media/Files/Downloads/aria2.session'
  6. fi
  7. if [ ! -f "/var/log/aria2.log" ]; then
  8.     touch '/var/log/aria2.log'
  9. fi

  10. aria2=ps -ef | grep 'aria2c' | grep -v 'grep aria2c'
  11. if [ -z "$aria2" ]; then
  12.     /usr/bin/aria2c
  13. fi
复制代码
4.aria2 本身没有 GUI,为方便使用,我们需要使用基于 rpc 模式的前端。比较好的有 ziahamza 的 webui-aria2 和 binux 的 yaaw,本文以 webui-aria2 为例。

删除 /usr/share/nginx/html/,下载 webui-aria2

  1. rm -rf /usr/share/nginx/html/
  2. git clone https://github.com/ziahamza/webui-aria2.git /usr/share/nginx/html/
复制代码
现在我们能通过 http://192.168.1.3/ 访问 webui-aria2 了。

注意:每次升级 nginx 都会修改 index.html,不要忘记 git checkout index.html。

5.修改 Setting – Connection Settings – Aria2 RPC host and port 中的 Enter the host: 为 192.168.1.3,成功连接到 aria2。


6.SinoSky 离线下载用户可以参考这篇文章使用 rpc 模式导出,迅雷会员可以使用 ThunderLixianExporter 的 YAAW 导出功能。
分享到:
回复

使用道具 举报

回答|共 4 个

倒序浏览

沙发

suyong_yq

发表于 2013-12-3 09:53:43 | 只看该作者

利用树莓派的低功耗完成耗时的下载是非常不错的。赞!
板凳

ukonline2000

发表于 2013-12-4 11:05:18 | 只看该作者

不错不错,
博客站点:http://ukonline2000.com
网店:http://ukonline2000.taobao.com
地板

haothree

发表于 2013-12-10 10:25:11 | 只看该作者

suyong_yq 发表于 2013-12-3 09:53
利用树莓派的低功耗完成耗时的下载是非常不错的。赞!

多谢支持!!!
5#

haothree

发表于 2013-12-10 10:25:43 | 只看该作者

ukonline2000 发表于 2013-12-4 11:05
不错不错,

欢迎UK大神前来指点!
您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条