楊晨 北京信息科技大學
樹莓派NAS系統(tǒng)的設計與實現(xiàn)
楊晨 北京信息科技大學
本文介紹了個人的NAS的一種實現(xiàn)方案,該系統(tǒng)以樹莓派為核心,通過samba和minidlna為支持,在網絡連接的條件下,可以進行文件的傳輸與備份,同時用戶可以通過電視等媒體設備播放音視頻等內容,本系統(tǒng)具有一定的實用性
樹莓派 NAS DIY linux服務器
由于linux系統(tǒng)及軟件的大力發(fā)展,樹莓派受到越來越多的人的青睞,樹莓派周邊的商品,也吸引著眾多的用戶,所以,有著低功耗的電子墨水屏受到很多人的喜愛,同時,用樹莓派進行個性開發(fā)的人也越來越豐富。
隨著近年來,互聯(lián)網的凈網活動,使得我們在云盤(如百度云等)的安全性和可靠性并不夠高,同時,隨著 寬帶的發(fā)展,用戶也更加習慣于通過網絡來傳輸數(shù)據,來代替u盤,智能手機的強大,也使智能手機的數(shù)據備份成為必須,因此,人們通常會選用NAS系統(tǒng)來滿足日常的需求;反觀市面上的NAS系統(tǒng),大多價格昂貴,且耗電量較大,所以,對于學生和大部分家庭而言,并不劃算,這里,將以樹莓派為例,具體說明如何基于樹莓派搭建NAS系統(tǒng)。
樹莓派的系統(tǒng)是基于linux,有著豐富的軟件包,其實,樹莓派的操作系統(tǒng)Raspbian的來歷可不簡單。它誕生的前提是,每周60個小時的工作量,處理一大堆自建的ARM計算機以及重建19000組Linux軟件包。而這一切,都是由兩名志愿者完成的。他們是:麥克·湯姆森(Mike Thompson)和彼得·格林(Peter Green)。
正像樹莓派機器本身一樣,它的操作系統(tǒng)也是一次意外的成功。
適合于樹莓派的OS有很多,盡管如此樹莓派基金會還是要為你指定一個最兼容的來用。當一年前樹莓派誕生的時候,首選的OS是紅帽為ARM處理器特別訂制的Fedora;而幾個月后Fedora就失寵被Raspbian取代。
Raspbian的基礎是Debian操作系統(tǒng)。兩位志愿者針對樹莓派硬件對Debian進行了專門的優(yōu)化和移植。而Raspbian不僅僅是一個OS,它附帶著35000個軟件包以及預編譯的軟件。正是因為這些工程師的努力,我們才得以體驗到如此美妙的功能。
NAS(Network Attached Storage)網絡存儲基于標準網絡協(xié)議實現(xiàn)數(shù)據傳輸,為網絡中的Windows/Linux/Mac OS等各種不同操作系統(tǒng)的計算機提供文件共享和數(shù)據備份。
樹莓派主板上沒有BOIS,而且沒有時鐘芯片,默認從TF卡引導啟動系統(tǒng)。官方推薦使用Win32DiskImager.exe直接將Raspbian系統(tǒng)的*.img鏡像寫入TF卡即可完成安裝過程。詳細過程如下:
解 壓2016-05-27-raspbian-jessie.zip得 到2016-05-27-raspbian-jessie.img;
運行Win32DiskImager.exe,將上述 *.img系統(tǒng)鏡像寫入TF卡即可。
安裝完成后,TF卡被分成兩個分區(qū):
67MB vfat格式的引導分區(qū)(系統(tǒng)啟動后被掛載在/boot目錄)
TF卡剩余空間ext4格式的磁盤分區(qū)
引導進入Raspbian系統(tǒng)后,查看分區(qū)情況如下(*tmpfs格式為內存分區(qū)):
由于Windows下不識別ext4格式的磁盤,在資源管理器中查看TF卡只顯示一個67MB大小、名字為boot的盤符。若想恢復TF卡整個空間為windows可識別的fat32/exfat格式,需要使用低級格式化工具HDD Low Level Format Tool(windows磁盤管理器無法處理ext4格式磁盤)。
另外,樹莓派官網也為需要安裝多個操作系統(tǒng)的群體提供了NOOBS的安裝方式。在安裝完系統(tǒng)后,我們就可以進行接下來的配置了。
步驟如下:
(SSH為Secure Shell的縮寫,由IETF的網絡小組(Network Working Group)所制定;SSH為建立在應用層基礎上的安全協(xié)議。SSH是目前較可靠,專為遠程登錄會話和其他網絡服務提供安全性的協(xié)議。利用SSH協(xié)議可以有效防止遠程管理過程中的信息泄露問題。)
(1)查看路由器的新增IP,或者使用AdvandIPScanner來搜索局域網ip
(2)在得到ip地址后,可以使用Putty(開源軟件)或xshell來連接樹莓派進行控制為了安全起見,默認情況下Raspbian是不允許root用戶進行SSH遠程登錄的。修改SSH配置如下:
nano /etc/ssh/sshd_config
默認PermitRootLogin without-password
改為PermitRootLogin yes
重啟SSH服務
service sshd restart或者/etc/initd.d/sshd restart
測試ROOT用戶登陸SSH
'更新軟件源,國外的軟件源安裝速度較慢,所以,我們選擇國內的軟件源;這里以中國科學技術大學的軟件源為例:
編輯nano/etc/apt/sources.list文件。刪除原文件所有內容,用以下內容取代:
deb http://mirrors.ustc.edu.cn/raspbian/raspbian/wheezy main non-free contrib
deb-src http://mirrors.ustc.edu.cn/raspbian/raspbian/ wheezy main non-free contrib
編輯此文件后,
使用sudo apt-get update命令,更新軟件列表。
使用sudo apt-get upgrade命令,更新軟件。
為了保證樹莓派可以實現(xiàn)nas功能,我們可以通過外接硬盤或者使用大容量存儲卡來實現(xiàn),這里,為了演示的方便,采用大容量存儲卡的解決方案:
安裝samba并配置samba的conf文件:
Sudo apt-get install samba samba-common-bin
Samba-commin-bin是samba的相關依賴文件,只有全部安裝才能實現(xiàn)samba服務器的功能;安裝完成后,使用命令nano/etc/samba/smb.conf 來修改配置文件;在文件的最后添加如下命令:
[share]
Path=/samba #設置共享的路徑
Valid users =root pi #設置可以訪問的用戶
Browsable = yes #允許用戶進行瀏覽
Public = yes #共享開放
Writable=yes#可以進行寫入
完成后,保存并通過命令 sudo /etc/init.d/samba restart
并為samba設置共享用戶:
Smbpasswd-api#這里以pi用戶為例;
最后,設置為開機自動啟動,編輯、etc/rc.local
在最后添加 /etc/init.d/samba.restart此時,完成全部配置
我們可以在pc上進行測試:
在windows計算機上,打開我的電腦,在左下角網絡點右鍵,選映射網絡驅動器
點擊完成會提示輸入用戶名和密碼,這里輸入設置的共享用戶名和密碼。
安裝DLNA服務器,實現(xiàn)流媒體播放:
我們經常會在電視上播放欣賞高清電影,但是,通常優(yōu)盤存儲不夠方便,這里,我們通過dlna服務來實現(xiàn)媒體資源內網共享;
安裝minidlna
sudo apt-get install minidlna
設置配置文件
設置/etc/minidlna.conf文件,在文件尾部添加如下內容:
media_dir=A,/samba/DLNA/Music#A表示這個目錄是存放音樂的,當minidlna讀到配置文件時,它會自動加載這個目錄下的音樂文件
media_dir=P,/samba/DLNA/Picture
media_dir=V,/samba/DLNA/Video
db_dir=/samba/DLNA/db #配置minidlna的數(shù)庫數(shù)據的存放目錄
log_dir=/samba/DLNA/log #配置日志目錄
建立文件夾
在/samba文件夾下,建立以上文件夾,并設置好權限為read and write。
重啟minidlna
/etc/init.d/minidlna restart
測試:
/etc/init.d/minidlna status
返回如下結果為正常。
在電腦上進行播放
先在樹莓派以上對應的video等文件夾內存上一些文件(可利用samba直接從電腦上考入),然后返回到計算機進行操作。
點擊我的電腦下面的網絡,出現(xiàn)媒體設備
雙擊進入媒體播放器,在左邊的列表欄下方其它媒體庫中出現(xiàn)raspberrypi:root,點擊后,可選擇音樂,視頻等。
這時雙擊就可以欣賞了。
手機上進行播放
手機上實現(xiàn)網絡共享,可安裝es file explorer軟件,在其網絡處進行設置,設置方法與電腦基本一樣,這里不再詳述。設置后,文件均可瀏覽,媒體文件雙擊可以在線播放。
也可以直接使用updp播放器,這里我安裝的是moliplayer,可以在其附近設備里,直接找到raspberrypi:root,訪問其媒體問題,注意,這里是訪問的DLNA共享,所以不需要再輸入密碼。
智能電視進行播放
智能電視一般都是用的android系統(tǒng),與手機基本一樣。
安裝aria2實現(xiàn)下載機功能
安裝aria2
更新一下安裝源
sudo apt-get update
安裝aria2
sudo apt-get install aria2
創(chuàng)建配置文件
在/etc目錄下創(chuàng)建aria2目錄用來存放配置文件:
sudo mkdir /etc/aria2
創(chuàng)建空白的aria2.session文件:
sudo touch /etc/aria2/aria2.session
創(chuàng)建配置文件
sudo nano /etc/aria2/aria2.conf
在該文件中輸入以下內容:
#=========文件保存目錄自行修改
dir=/samba
disable-ipv6=true
#打開rpc的目的是為了給web管理端用
enable-rpc=true
rpc-allow-origin-all=true
rpc-listen-all=true
#rpc-listen-port=6800
continue=true
input-file=/etc/aria2/aria2.session
save-session=/etc/aria2/aria2.session
max-concurrent-downloads=3
這里為了方便共享,我直接設置將文件下載到samba共享文件夾。
啟動aria2
sudo aria2c --conf-path=/etc/aria2/aria2.conf
如果沒有提示任何錯誤信息,那就按ctrl+c停止上面的語句,轉為后臺運行:
sudo aria2c --conf-path=/etc/aria2/aria2.conf -D
同時其此句寫到開機啟動中,編輯/etc/rc.local,如下
安裝appache
為了能web管理aria2進行下載,需要安裝yaaw和apache環(huán)境。
安裝appach
sudo apt-get install apache2
修改/var/www的權限
chmod 777 /var/www
安裝yaaw
從 https://github.com/binux/yaaw下載 yaaw,點擊右下角的,下載后將解壓后的文件夾內內容拷貝到/var/www文件夾下。這時輸入樹莓派IP,如果出現(xiàn)以下頁面,則表示已經正常工作了。
這里可以點add添加下載任務,具體方法不再詳述。
本文介紹了基于樹莓派的NAS系統(tǒng)的一種可行方案,基于這種方案,我們可以輕松的搭建出NAS系統(tǒng),并且實現(xiàn)功能,且功耗低,功能實用,但是在某些方面,本系統(tǒng)還是不夠完善,本系統(tǒng)在未來,還會有更好的體驗和更實用的功能。
[1]Raspbian最小的操作系統(tǒng)是怎樣煉成的http://www.eeworld.com.cn/qrs/2013/0315/article_13996.html
[2]樹莓派開發(fā)實戰(zhàn)(第2版) [英]Simon Monk 蒙克 人民郵電出版社
[3]Raspberry Pi 3安裝配置Raspbian過程http://blog.csdn.net/yss28/article/details/51874104
本文由北京信息科技大學2017年人才培養(yǎng)質量提高經費(5111723400)支持。