這裡介紹如何使用樹莓派 Raspberry Pi 安裝 Deluge,自己打造一個 BT 下載專用機,既經濟又省電。
許多人都會使用 BT 來下載各種檔案,但是長時間的開機對於一般的電腦來說會造成很大的負擔,大量的資料存取也會造成硬碟的耗損,另外電費也是一個需要考量的問題,這也是很多人雖然想用 BT 但又不敢用太多的原因之一。
由於我們要將樹莓派打造成一個 headless 的 BT 專用設備,這樣的設備通常都只會接一條網路線與一條電源線,不接任何螢幕、鍵盤與滑鼠,所有的控制都是透過 SSH 連線的方式遠端操作,而 Raspbian 預設會使用 DHCP 的方式自動取得 IP,為了讓連線方便,我們可以把 DHCP 關閉,直接設定一個固定 IP 位址,這樣每次連線時就不用老是需要從 IP 分享器上查樹莓派的 IP 位址。
首先將 DHCP 的服務關閉:
update-rc.d dhcpcd disable
編輯 /etc/network/interfaces
,設定固定的 IP 位址:
#iface eth0 inet manual
auto eth0
iface eth0 inet static
address 192.168.0.200
network 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameservers 168.95.192.1 168.95.1.1
接著可以重新啟動樹莓派,測試看看新的網路設定是否可以正常運作。
Raspbian 預設會開啟 SSH 伺服器,我們可以使用 service
指令檢查一下伺服器的狀態:
service ssh status
輸出會像這樣:
● ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled) Active: active (running) since Sun 2015-12-13 08:51:35 CST; 1h 39min ago Main PID: 439 (sshd) CGroup: /system.slice/ssh.service └─439 /usr/sbin/sshd -D
接著可以測試一下 SSH 的連線:
ssh pi@192.168.0.200
只要確定樹莓派可以正常透過網路連線,就可以把螢幕、鍵盤與滑鼠等設備拔掉了,之後所有的動作就可以遠端透過 SSH 連線來操作。
安裝之前,先更新一下系統:
sudo apt-get update sudo apt-get upgrade
使用 apt 安裝 Deluge:
sudo apt-get install deluged deluge-console deluge-web
Deluge 有好幾種使用者介面(UI)可以選擇,要使用哪一種就看個人喜好,我這裡是同時安裝終端機(deluge-console
)與網頁(deluge-web
)兩種版本,正常的時候會使用網頁來控制,而終端機的版本則是當作備用。
裝好了之後,啟動 Deluge 的 daemon:
deluged
接著再啟動網頁的操作介面:
deluge-web
deluge-web
預設會使用 8112
這個連接埠,而網頁介面的預設密碼是 deluge
,輸入密碼後就可以登入使用。
第一次登入時,它會問你要不要變更密碼。
接著選擇要連線的 Deluge 伺服器,一般來說只會有一個可以選,然後按下「Connect」就可以連線了。
這個網頁的操作介面都很直覺,只要加入 BT 的種子就可以進行下載了,至於下載檔案的存放路徑與各種相關設定都可在網頁的介面上設定,非常方便。
當我們把種子上傳到上面,讓它開始進行下載的動作之後,我們就可以把網頁關掉,甚至把之前執行的 deluge-web
網頁伺服器關閉也沒有關係,所有的下載工作是由 deluged
這個背景 daemon 所負責的,網頁介面可以在需要看下載進度的時候再開啟就可以了。
如果想要讓 deluge-web
網頁介面的伺服器放在背景執行,可以使用 --fork
參數:
deluge-web --fork
另外 deluge-web
也支援 HTTPS 加密的網頁:
deluge-web --ssl
除了網頁介面之外,我們也可以透過 SSH 連線,在連線到樹莓派之後,用終端機來看下載的進度:
deluge-console
在這個介面中,可以進行一些簡單的操作與查詢。
在這個介面中所有的操作都要透過指令,例如查詢各個 BT 種子下載的狀態,可以執行 info
,若要查詢其他指令的使用方式,可以執行 help
。
參考資料:HTG、makeuseof、Noeit Geeks、MelGrubb