樹莓派做下載機+Web服務器(Aria2下載+yaaw做UI+nginx)


今天收到了小派,UK產的綠板子,還配了個透明盒子,裝在里面閃亮亮的很好看,而且只有卡片大小,尋思着用它做什么好呢?想來想去,看到人家拿小派作家庭媒體中心,還有人拿它當下載機,於是就萌生了一個家庭媒體中心+下載機二合一的東東,白天看電影,晚上添加任務讓它自己下載到SD卡里,第二天就能看了,接上無線網卡,通過手機控制它,遙控器都省了。下面我們就開始吧。

你需要的東西:

也可能需要的東西:

高大上的奢侈品

需要安裝的軟件如下:

PC端:

  • putty(一個SSH工具,用於遠程連到你的樹莓派上,這樣你就不用把你的小派挪來挪去了)
  • FileZilla(一個開源的ftp客戶端,這樣你可以把你電腦上的文件直接拖到你的小派里了)
  • win32DiskImager-binary(把網上下載的鏡像刷到SD卡里)

前兩款軟件的安裝都非常簡單,直接一路下一步,第三款直接解壓縮,這里就不介紹了

樹莓派端:

  • Raspbmc(Xbmc的樹莓派版,Xbmc是一個流行的媒體中心系統,基於linux,可以方便的播放你各種設備上的音頻視頻圖片拽過來在你的Xbmc上播放,也能播放廣播和在線視頻,這里要贊一下Raspbmc的作者,Sam Nazarko,他還是一個19歲的學生,相當厲害)
  • aria2c(Linux下的命令行下載利器,nani?命令行???你是在逗我么,莫怕,接着往下看)
  • yaaw(基於web的aria2c的UI,可以添加任務,查看任務進度)
  • nginx(http服務器,用於承載yaaw)

我們需要從Raspbmc網站下載鏡像,這里你有兩個選擇,

  1. 安裝的時候比較痛苦:參照這篇教程,點擊頁面上的link鏈接或這里下載windows installer,按照頁面上的指導向SD中刷入boot鏡像(這個鏡像只包含最基本的boot,在啟動后會聯網下載最新的鏡像),完成后插入SD到你的樹莓派中,開機,並為你的樹莓派插上網線(此時無線網卡不可用),用前面提到的線纜連接上顯示器(或電視機),看着藍色的屏幕開始品嘗你的程序員飲料吧,痛苦開始了,視你的網速,我是在等了2個小時之后突然發現它只走了20%然后果斷放棄了
  2. 更新的時候比較痛苦:訪問Raspbmc下載頁面,點擊頁面上的Standalone Image下載完整鏡像,解壓縮得到一個sd.img,然后使用win32DiskImager-binary.exe工具刷入SD卡中(選擇解壓出的sd.img,然后“設備”里選擇你的SD卡,注意一定要是你的SD卡,別選錯了,然后點“寫”),等刷成功之后,把SD插入樹莓派中,啟動,你就可以使用了,這個時候你也可以使用你的無線網卡了,需要配置一下,一會說。win32DiskImager

到此,媒體中心安裝完成,恭喜你獲得了“事倍功半”成就(Why?看了這么久藍屏,就完成了一半,不是事倍功半么),好的,繼續往下看!

我們開始配置下載機。

在PC上打開putty,進你的路由器看你的樹莓派地址是多少,填進puttyHost Name(or IP address)欄里,點Open,
putty

在彈出的窗口中輸入用戶名pi,回車,然后是密碼raspberry(屏幕上不會有任何顯示),回車,你就打開了一個樹莓派的shell,可以遠程操作啦!(nani?又是命令行,這回幫不了你了,只能用命令行了,不過順帶學習一下linux的精髓也是不錯的嘛,對吧)。我們開始安裝軟件。

第一次連接ssh可能還要進行一些配置,根據提示點ok就行了。

進入后先update一下軟件源,使用命令

首先安裝aria2c

在shell窗口使用下面的命令進行安裝

接下來我們做一些配置

在aria2.conf里面輸入如下內容,可以直接復制后在窗口里按鼠標右鍵粘貼

按ctrl+o 保存,回車一下,然后按ctrl+x退出編輯,完了后運行:

測試有沒有錯誤,如果沒有錯誤的話按一下Ctrl + C終止當前程序,繼續往下。

接下來我們讓aria2c成為系統服務並且開機自啟動

粘貼如下內容到窗口,注意格式一定要保持一致

之后按ctrl+o保存,回車一下,再按ctrl+x退出編輯

使用命令進行權限更改

測試服務是否可以啟動:

如果只顯示Starting aria2c,沒有其他錯誤提示的話就成功了

如果提示有錯誤,可重啟系統,執行sudo reboot命令試試。
添加aria2c服務自動運行:

到此aria2c就可以開機自啟動了。

檢查aria2c是否啟動:

1.先確認aria2是否已啟動,命令:ps -ef | grep aria2c,應該可以兩行內容,
其中 aria2c --conf-path=/opt/etc/dm2_aria2/aria2.conf -D  類似的一行內容,說明已經啟動了。
2.配置如果不正確,重點修改/opt/etc/dm2_aria2/aria2.conf 中的配置

下來是安裝nginx web服務器

在shell窗口使用命令進行安裝

由於Raspbmc以及自帶的遠程管理占用了80端口,因此我們需要更改nginx的端口號使他們不相互沖突,通過修改nginx.conf文件實現

使用下面的命令進入修改

進入vi后,輸入

按回車 查找listen,找到

按方向鍵移動光標(nani?不能用鼠標?對不起,不能)到第一個listen的”#”,按del刪除,再移動光標到80,按一下字母i,進入編輯模式,此時就可以自由編輯了,把80改為8080,改完后應該是這個樣子:

按一下esc鍵,回到瀏覽模式,然后按一下冒號鍵(shift + ;鍵),輸入wq,保存退出
edit-nginx-conf

使用如下命令啟動nginx

進入http://樹莓派的ip:8080/你能看到Welcome to nginx!說明安裝成功(OY!)
nginx

再來是安裝yaaw

從https://github.com/binux/yaaw這里 下載 yaaw,可以使用git直接下載到樹莓派上或者在PC端點擊頁面的右下角那個“Download Zip”下載最新版本,解壓縮,再通過FileZilla上傳到你的樹莓派上的,我推薦第二種方式,這樣你就不用命令行了:),你也可以使用命令行現在yaaw。

在提供一個中文版的下載地址:http://github.com/wzhy90/yaaw

第一種方法:

cd /var/www
git clone http://github.com/wzhy90/yaaw

第二種方法:

在PC端解壓縮yaaw的壓縮包,解壓出的文件夾叫yaaw-master,我們把它重命名名為yaaw

我們還需要更改一下nginx的www目錄訪問權限,才能使用ftp把yaaw扔進去

之后打開FileZilla,在”主機”處輸入你的樹莓派的ip,用戶名輸入pi,密碼輸入raspberry,點擊“快速連接”,然后在下面“本地站點里”選擇yaaw所在的本地路徑,在“遠程站點”里定位到/usr/share/nginx/www,把剛才的yaaw拖進去就行了。
FileZilla
然后在你的shell上使用命令

讓yaaw文件夾可以被瀏覽器訪問。

然后在pc的Chrome的地址欄里輸入http://樹莓派IP:8080/yaaw,就能看到任務管理界面了,它看起來大概像這個樣子
yaaw
到此大功告成,OY!!

備注:在其他瀏覽器中使用的時候,在點擊“+ Add”或者“扳手”按鈕的時候,可能會出現灰色的遮罩層,看不到彈出的界面。

別着急,我們還需要一些額外的工作使你以后的使用更方便。有點耐心,就要完了。

一些額外的工作:

  • 首先要把系統語言改成中文,在System-Settings-Appearance-International里把Language改成Chinese(Simple),光標移開就自動換了,然后把字符集改成Chinese Simplified (GBK)
    language setting
  • 無線網的配置,這個需要在樹莓派的UI界面進行,進入程序-Raspbmc Settings-Network Configuratioin
    netword setting
  • 請為你的小派在路由器里分配一個固定的IP地址,這樣可以省去很多麻煩。

遠程控制:

你現在有兩種方式來遠程控制你的樹莓派了,

  • 通過瀏覽器訪問http://你的樹莓派IP 來訪問,他看起來像這樣
    browser remote
  • 通過智能手機,參考這里 Android, IOS

知識加油站:

什么是樹莓派?
樹莓派是一款基於ARM的微型電腦主板,以SD卡為內存硬盤,卡片主板周圍有兩個USB接口和一個網口,可連接鍵盤、鼠標和網線,同時擁有視頻模擬信號的電視輸出接口和HDMI高清視頻輸出接口,以上部件全部整合在一張僅比信用卡稍大的主板上,具備所有PC的基本功能只需接通電視機和鍵盤,就能執行如電子表格、文字處理、玩游戲、播放高清視頻等諸多功能。 Raspberry Pi B款只提供電腦板,無內存、電源、鍵盤、機箱或連線。

最后讓我們的主角亮個像吧:

IMG_20131214_234139[1]

 

出處:http://www.boydwang.com/2013/12/build-your-raspberrypi-as-a-media-center/

=================================================================================================

最近看了很多用樹莓派或者openwrt路由器做下載機的。
但是看那些教程,小白肯定是不會弄了,所以我就做這個教程,應該接近小白了,一步一步。
首先樹莓派的系統要裝好。

首先安裝aria2,apache2

1
sudo apt-get install aria2 apache2

裝好之后設置好apache2的權限:

1
sudo visudo

底部添加這行:

1
www-data ALL=(ALL) NOPASSWD: ALL

Ctrl + O保存,Ctrl + X退出

然后在搞aria2的

1
2
3
mkdir ~/.aria2
touch ~/.aria2 /aria2 .session
nano ~/.aria2 /aria2 .conf

aria2.conf里面寫這些:

1
2
3
4
5
6
7
8
9
10
dir=/home/xbian/Download #下載默認的目錄
disable-ipv6=true
enable-rpc=true
rpc-allow-origin-all=true
rpc-listen-all=true
#rpc-listen-port=6800
continue=true
input-file=/home/xbian/.aria2/aria2.session #剛才touch命令的那個文件,路徑要絕對路徑
save-session=/home/xbian/.aria2/aria2.session #同上,這個文件的作用是保存你的下載列表,不保存的話重啟后所有下載都木有了
max-concurrent-downloads=3

完了后運行:aria2c –conf-path=/home/xbian/.aria2/aria2.conf
測試有沒有錯誤,如果沒有錯誤的話Ctrl + C終止程序繼續下一步,有錯誤會提示你conf文件哪里錯誤。
把aria2做成系統的服務:

1
sudo nano /etc/init .d /aria2c

內容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/bin/sh
### BEGIN INIT INFO
# Provides:          aria2
# Required-Start:    $remote_fs $network
# Required-Stop:     $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Aria2 Downloader
### END INIT INFO
 
case "$1" in
start)
 
echo -n "Starting aria2c"
sudo -u xbian aria2c --conf-path=/home/xbian/.aria2/aria2.conf -D
#sudo -u后面的是你正在使用的用戶名,因為我用的XBian,用debian的是pi(沒改用戶的話)
;;
stop)
 
echo -n "Shutting down aria2c "
killall aria2c
;;
restart)
 
killall aria2c
sudo -u xbian aria2c --conf-path=/home/xbian/.aria2/aria2.conf -D
#同上面的一樣,根據自己的用戶名改xbian。
;;
esac
exit

Ctrl + O 保存后退出
然后設置這個文件的權限。

1
sudo chmod 755 /etc/init .d /aria2c

測試服務是否可以啟動:

1
sudo service aria2c start

如果只顯示Starting aria2c,沒有其他錯誤提示的話就成功了。
添加aria2c服務自動運行:

1
sudo update-rc.d aria2c defaults

Aria2相關的好了,下面開始網頁控制aria2下載。

1
2
cd /var/www
git clone http: //github .com /wzhy90/yaaw

管理器用的是yaaw,網上的是英文的,我已經翻譯好中文了。

用瀏覽器打開yaaw:http://192.168.1.14/yaaw
如果沒提示錯誤就可以了

用迅雷離線需要另外的軟件。
firefox的到這里安裝這個擴展:https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/?src=search
安裝完后打開這個連接安裝迅雷離線插件:ThunderLixianExporter.user.js
chrome到這里安裝擴展:https://chrome.google.com/webstore/detail/thunderlixianassistant/eehlmkfpnagoieibahhcghphdbjcdmen

然后打開迅雷離線,點右上角的設置。

Aria2 JSON-RPC Path寫你自己的ip地址,YAAW網頁里面的設置有,可以復制。
保存后離線下載完的文件,選中后點批量導出,選YAAW。然后你的派就開始下載文件了。

出處:http://shumeipai.nxez.com/2014/07/01/raspberry-pi-do-download-machine-aria2.html

==========================================================================================

常見故障

在參考了網上眾多文章之后,自己動手的過程中,還是不可避免的遇到了一些問題,現在把我遇到的問題及解決方法簡單的羅列一下:

檢查aria2c是否啟動

1.先確認aria2是否已啟動,命令:ps -ef | grep aria2c,應該可以兩行內容,
其中 /opt/bin/aria2c --conf-path=/opt/etc/dm2_aria2/aria2.conf -D
2.配置如果不正確,重點修改/opt/etc/dm2_aria2/aria2.conf 中的配置
3.保證種子有流量

修改aria2下載路徑

1:根據aria2的配置文件。
2:打開進入aria2.conf.
3:修改aria2文件,例如默認路徑是dir=/shares/Public,如果你想將路徑修改到public文件夾下的“A”文件夾。修改如下:dir=/shares/Public/A
4:重啟aria2服務:先執行:/etc/init.d/S90aria2 stop,然后執行:/etc/init.d/S90aria2 start。
5:打開yaaw的web控制界面,查看設置是否已修改完成。

我根據上面的步驟,在web界面查看,一直提示服務器錯誤,但我重啟系統reboot之后,則問題就正常了,或許哪里有緩存的問題吧。


免責聲明!

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



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