用樹莓派做一個離線下載機


用樹莓派可以做很多有意思的東西,它相當於一個小型的電腦,裝上系統完全可以作為一個家用的小型服務器。

通過這個小型服務器,可以實現一個“離線”下載機。不過這里的離線下載不是真的離線,因為樹莓派還是在線的——既然樹莓派當做了小型服務器,那應該長期保持在線狀態了——不過由於樹莓派的功耗很小,而且占用空間也很小,所以當做家用服務器還是很可以的。

這個樹莓派的離線下載器是使用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

點擊文件,就可以快速下載了,感覺是不是很棒呢?

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM