zoukankan      html  css  js  c++  java
  • 树莓派实现一个下载机


    这回又买了一块树莓派,这次用的是B+。树莓派做BT下载器的特性就是省电啊。

    原来想买一个路由器刷openwrt,后来觉得路由器可能性能有限,而且稍有不慎会刷坏uboot,所以暂且不考虑了。



    搭建过程网上都有,但是很零碎,这里整理一下步骤,下面分为几个步骤吧:


    准备工作

    拿到树莓派后,烧写官方的镜像(2014-09-09-wheezy-raspbian.zip)到一张TF卡(我用的8GB的sandisk)。

    然后插到树莓派卡槽,最后加电启动。



    开机启动后树莓派会自动打开SSH的功能,将树莓派用网口插到路由器上,然后从路由器上看树莓派的IP地址,

    最后用电脑连接到树莓派(SSH)。

    一开始要运行一下配置,扩大树莓派的根目录的空间,不然所有软件装完之后空间会只剩几百兆。

    sudo raspi-config

    一般选择第一项就可以了。


    另外要提一下,树莓派默认的登录名和密码是:

    username:pi
    password:raspberry


    另外,需要升级一下软件源,并且安装vim:

    sudo apt-get update
    sudo apt-get install vim



    格式化U盘

    格式化U盘为ext4格式,以提高性能。

    第一次挂载U盘时请使用 


    sudo fdisk -l


    格式化:

    mkfs.ext4 -m 1 /dev/sda1

    其中/dev/sda1 是找到的U盘,一般在Ubuntu下面找到的是/dev/sdb,不知道为什么这里会显示sda


    先找到U盘,然后将它挂到你需要的目录里面去。



    自动挂载U盘

    目前移动硬盘不够用,先用U盘来试水。将U盘重命名为U1,然后编辑/etc/fstab:

    proc            /proc           proc    defaults          0       0
    /dev/mmcblk0p1  /boot           vfat    defaults          0       2
    /dev/mmcblk0p2  /               ext4    defaults,noatime  0       1
    LABEL=U1	/home/pi/HDD	ext4	defaults	0	0
    可以看出最后多加了一行,用label的好处就是如果要将U盘换成移动硬盘的话设置好卷标就行了。

    其中/home/pi/HDD这个目录不要忘记创建了,而且挂载上去后设置好777权限。

    建立samba


    如果要从树莓派拷贝文件,必须建立一个文件共享的方案。这里建立起一个samba(感觉ftp也可以)

    sudo apt-get install samba samba-common-bin 


    其中,samba-common-bin 是用来检测samba是否正常的软件,也可以不安装。

    编辑samba的配置文件:
    sudo vim /etc/samba/smb.conf 

    在最后添加一项自己的定义项:
    [mydata]
            comment = my own data
            path = /home/pi/HDD
            browseable = yes
            read only = no

    然后新建一个samba用户:

    注意,samba用户必须是一个linux用户,samba用户的密码和linux用户的密码不一样。

    这里偷个懒,直接将pi添加为samba用户:

    pi@raspberrypi /etc/samba $ sudo smbpasswd -a pi
    New SMB password:
    Retype new SMB password:
    Added user pi.

    最终的效果如下,可以用windows访问树莓派了(用户名和密码是上面自己设置的):





    安装下载工具

    sudo apt-get install aria2 

    装好之后就开始准备配置文件(按需要自己修改吧,目前我自行修改成这个样子):

    #允许rpc
    enable-rpc=true
    #允许所有来源, web界面跨域权限需要
    rpc-allow-origin-all=true
    #允许非外部访问
    rpc-listen-all=true
    #最大同时下载数(任务数), 路由建议值: 3
    max-concurrent-downloads=20
    #断点续传
    continue=true
    #同服务器连接数
    max-connection-per-server=5
    #最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要
    min-split-size=10M
    #单文件最大线程数, 路由建议值: 5
    split=10
    #下载速度限制
    max-overall-download-limit=0
    #单文件速度限制
    max-download-limit=0
    #上传速度限制
    max-overall-upload-limit=30K
    #单文件速度限制
    max-upload-limit=0
    #断开速度过慢的连接
    #lowest-speed-limit=0
    #验证用,需要1.16.1之后的release版本
    #referer=*
    input-file=/home/pi/HDD/aria2/aria2.session
    save-session=/home/pi/HDD/aria2/aria2.session
    #定时保存会话,需要1.16.1之后的release版
    save-session-interval=60
    #文件保存路径, 默认为当前启动位置
    dir=/home/pi/HDD/download
    #文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用, 需要1.16及以上版本
    #disk-cache=0
    #另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?)
    #enable-mmap=true
    #文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长
    #所需时间 none < falloc ? trunc << prealloc, falloc和trunc需要文件系统和内核支持
    file-allocation=prealloc
    
    #启用本地节点查找
    bt-enable-lpd=true
    
    
    #单种子最大连接数
    #bt-max-peers=55
    #强制加密, 防迅雷必备
    #bt-require-crypto=true
    #当下载的文件是一个种子(以.torrent结尾)时, 自动下载BT
    follow-torrent=true
    #BT监听端口, 当端口屏蔽时使用
    #listen-port=6881-6999
    
    disable-ipv6=true
    
    
    log=/home/pi/HDD/aria2/aria2.log
    log-level=notice
    
    #添加额外的tracker
    bt-tracker=
    http://121.14.98.151:9090/announce,
    http://121.14.98.151:9090/announce,
    http://anisaishuu.de:2710/announce,
    http://bigfoot1942.sektori.org:6969/announce,
    http://bt.careland.com.cn:6969/announce,
    http://bt2.careland.com.cn:6969/announce,
    http://exodus.desync.com/announce,
    http://exodus.desync.com:6969/announce,
    http://hdreactor.org:2710/announce,
    http://i.bandito.org/announce,
    http://open.nyaatorrents.info:6544/announce,
    http://shadowshq.yi.org:6969/announce.php,
    http://siambit.org/announce.php,
    http://tracker.bestxl.com:8077/announce,
    http://tracker.nwps.ws:6969/announce,
    http://tracker.trackerfix.com/announce,
    http://tracker.trackerfix.com:80/announce,
    http://tracker1.torrentino.com/announce,
    http://tracker1.wasabii.com.tw:6969/announce,
    http://tracker2.torrentino.com/announce,
    http://tracker3.torrentino.com/announce,
    udp://12.rarbg.me:80/announce,
    udp://9.rarbg.com:2710/announce,
    udp://9.rarbg.me:2710/announce,
    udp://bt.rutor.org:2710,
    udp://coppersurfer.tk:6969/announce,
    udp://eddie4.nl:6969/announce,
    udp://exodus.desync.com:6969,
    udp://explodie.org:6969/announce,
    udp://open.demonii.com:1337,
    udp://open.demonii.com:1337/announce,
    udp://shadowshq.yi.org:6969/announce,
    udp://tracker.coppersurfer.tk:6969/announce,
    udp://tracker.ex.ua:80/announce,
    udp://tracker.istole.it:6969,
    udp://tracker.istole.it:80,
    udp://tracker.istole.it:80/announce,
    udp://tracker.istole.it:80/announcea,
    udp://tracker.leechers-paradise.org:6969/announce,
    

    其中,tracker不知道有没有生效,我将此配置文件放在/home/pi/HDD/aria2

    从windows里面看就是这个样子:




    开启aria2:

    sudo aria2c --conf-path=/home/pi/HDD/aria2/aria2.conf
    

    这里让它在前台运行,要在后台运行的话请在后面加一个'&'


    安装LAMP Web server


    安装这些软件是为了aria2准备一个服务器环境。

    sudo apt-get install apache2
    sudo apt-get install mysql-server
    sudo apt-get install php5
    sudo apt-get install php5-mysql
    

    实际上,mysql用不着安装


    安装完之后就可以用浏览器直接访问树莓派的IP地址,看到

    “It works!” 

    这个字样就可以了。

    安装aria2 前端


    实际上,上面安装的aria2是命令行运行的,用起来不方便,这里下载一个做好的前端:

    http://github.com/ziahamza/webui-aria2

    一般人download zip就可以了,用不着用git下载。

    然后将此物传到samba,再解压到/var/www。
    比如解压好的是/var/www/myweb, 这样就可以访问树莓派的IP地址,后面再加上/myweb 就可以访问了。



    使用aria2

    使用过程就不用详谈了,这里可以添加三种下载的方式:





    这篇博客是搭建完毕之后写的,不知道有没有的漏的,有的话请提出来。


  • 相关阅读:
    Digital Video Stabilization and Rolling Shutter Correction using Gyroscope 论文笔记
    Distortion-Free Wide-Angle Portraits on Camera Phones 论文笔记
    Panorama Stitching on Mobile
    Natural Image Stitching with the Global Similarity Prior 论文笔记 (三)
    Natural Image Stitching with the Global Similarity Prior 论文笔记(二)
    Natural Image Stitching with the Global Similarity Prior 论文笔记(一)
    ADCensus Stereo Matching 笔记
    Efficient Large-Scale Stereo Matching论文解析
    Setting up caffe on Ubuntu
    Kubernetes配置Secret访问Harbor私有镜像仓库
  • 原文地址:https://www.cnblogs.com/tanhangbo/p/4282597.html
Copyright © 2011-2022 走看看