• 用树莓派做一个离线下载机


    用树莓派可以做很多有意思的东西,它相当于一个小型的电脑,装上系统完全可以作为一个家用的小型服务器。

    通过这个小型服务器,可以实现一个“离线”下载机。不过这里的离线下载不是真的离线,因为树莓派还是在线的——既然树莓派当做了小型服务器,那应该长期保持在线状态了——不过由于树莓派的功耗很小,而且占用空间也很小,所以当做家用服务器还是很可以的。

    这个树莓派的离线下载器是使用aria搭建的,aria是一个开源的多线程下载工具,可以完成很多种类的下载任务。通过aria2我们就可以很轻松的完成下载任务,包括wget这类工具做不了的。

    首先是安装aria2,我们可以通过aria2的官网下载安装:http://aria2.github.io/

    同样,如果你的树莓派和我用的一个系统——debian,也可以使用debian的命令安装:

    $sudo apt install aria2

    只需要等待片刻,就可以安装成功。

    之后,我们就可以使用aria2进行下载任务,aria2的下载命令很简单,例如,我们想要下载一个mp3,则只用输入:

    $aria2c XXXX/abc.mp3

    具体的aria2的使用方式,我们可以参考aria2的官方文档:http://aria2.github.io/manual/en/html/index.html

    这样就可以了吗?当然不行,这还不够一个离线下载工具的易用性。

    接下来就是给aria2安装图形界面,aria2官方推荐有很多图形界面,并且,aria2也提供了rpc接口可以供我们进行调用,下面我们就使用一个开源的界面给aria2安装图形工具。

    我们选用的图形工具是Aria2 WebUI,这个工具可以在aria2的官网上找到,我们进入它的github,把项目clone下来:

    git clone https://github.com/ziahamza/webui-aria2.git

    拿到代码后,只用输入

    node node-server.js

    图形界面就可以跑起来了,不过在此之前你需要安装nodejs环境,通过以下命令:

    $sudo apt install nodejs

    这样跑起来并不能使用,我们需要先配置以下启动项,将aria2 webui下的configconfiguration.js打开,将

    host: location.protocol.startsWith('http') ? location.hostname : 'localhost'

    这一行改成:

    host: location.protocol.startsWith('http') ? location.hostname : '0.0.0.0'

    不然在服务器之外没办法访问的。

    然后我们可以在其他主机上输入树莓派的内网IP地址,比如树莓派的IP位192.168.1.122,在和树莓派的路由器同意网段的主机上,访问192.168.1.122:8888,我们就可以看到web页面了。

    但是,这个只是一个页面而已,这个页面和aria2是通过rpc交互的,所以我们需要启动aria2的rpc:

    aria2c --enable-rpc --rpc-listen-all

    这样我们的图形界面就可以访问aria2的服务了。

    这样就访问到了界面,如果平时我们有什么大文件需要下载的时候,我们就可以睡觉前点击下载,然后把电脑关了,第二天起床就下载到了树莓派上了。接下来我们可以将树莓派的数据通过路由器内网下载到电脑硬盘,这个过程就很快了,如果想要一个简单的方式建立一个http文件访问的话,我们可以在aria2的下载目录下,使用python3的命令快速建立一个http访问文件,进行下载:

    python3 -m http.server

    点击文件,就可以快速下载了,感觉是不是很棒呢?

  • 相关阅读:
    浅谈localStorage本地存储
    前端代码中经常遇到的问题
    http状态码
    Transition 所支持的css属性
    ie8下的透明 问题
    #event.initMouseEvent
    svg 文字
    前端工作流程转变
    理解javascript 回调函数
    不要被npm、NodeJs、npm、webpack、vue-cli 这些名词搞晕
  • 原文地址:https://www.cnblogs.com/Summer7C/p/9478773.html
Copyright © 2020-2023  润新知