樹莓派-家庭NAS(1)

樹莓派-家庭NAS(1) http://m.itdecent.cn/p/9be7ada37863
樹莓派-家庭NAS(2) http://m.itdecent.cn/p/91405ca824b8
樹莓派-家庭NAS(3) http://m.itdecent.cn/p/80777ed85246

需求

本人是一個(gè)軟件行業(yè)從業(yè)者,在平常會(huì)關(guān)注各式各樣的電子設(shè)備、也會(huì)了解各種各樣的技術(shù)。經(jīng)過(guò)多年的學(xué)習(xí)和實(shí)踐后發(fā)現(xiàn)自己有各種各樣的資料需要保存。還有自己在學(xué)習(xí)過(guò)程中總結(jié)出的各式的內(nèi)容。所以,就一直在研究怎么把這些東西存儲(chǔ)起來(lái)。

最開始我非常討厭有自己的電腦,因?yàn)楹芏鄷r(shí)候網(wǎng)絡(luò)的誘惑會(huì)非常的大。我沒有那么強(qiáng)大的能力去抵制這些誘惑,所以一直就不準(zhǔn)備給自己購(gòu)買電腦,電視,游戲機(jī)等等電子設(shè)備。但會(huì)持續(xù)的關(guān)注。(現(xiàn)在使用的電腦,還是我老婆的電腦(^-^)!)

沒有電腦,就意味著沒有地方去存儲(chǔ)資料。最開始的時(shí)候,大概是2012年左右從零擔(dān)上買了一塊300G的硬盤。那時(shí)候硬盤還很貴,這塊硬盤應(yīng)該是500塊大洋。一直就存著各種各樣的文件。后來(lái)用百度云(最早的時(shí)候百度云盤叫百度云,后來(lái)百度為了開展自己的云產(chǎn)品才改了名),那時(shí)候用了很多方法去免費(fèi)的增大自己的百度云盤。但后來(lái),百度云盤開始對(duì)版權(quán),敏感信息進(jìn)行過(guò)濾。很多東西都沒有辦法存儲(chǔ)到百度云盤上。并且國(guó)內(nèi)的環(huán)境越來(lái)越差,國(guó)外的Dropbox、Google Drive、Microsoft OneDrive……國(guó)內(nèi)的360云盤(已掛)、華為網(wǎng)盤(已掛)、UC網(wǎng)盤(已掛)、金山快盤(已掛)、新浪微盤(已掛)、迅雷快盤(已掛)。所以說(shuō)不定哪天百度云盤也掛了。所以一直在探索個(gè)人/家庭存儲(chǔ)解決方案。

后來(lái)慢慢的了解到有很多的廠商已經(jīng)想到并已經(jīng)解決了個(gè)人/家庭存儲(chǔ)的問(wèn)題,甚至還能解決部分家庭計(jì)算的需求。所以,了解了一些這方面的商業(yè)化廠商或產(chǎn)品。

群暉、威聯(lián)通、鐵威馬。家用NAS設(shè)備的三大廠商。小米路由器 HD,華為榮耀立方,華三魔術(shù)家等帶硬盤的路由器。這些廠商和設(shè)備都能幫我們解決存儲(chǔ)的問(wèn)題,并且還有其他的功能加入。為我們的"家庭計(jì)算中心",提供了可能。為之后智能家庭提供了最基礎(chǔ)的硬件支持。

功能分析

上面提到了很多廠商和設(shè)備。如果機(jī)遇這些設(shè)備提供的功能的去評(píng)估設(shè)備的價(jià)值/價(jià)格是非常合適的。如果有經(jīng)濟(jì)能力、或者沒有很多的閑暇時(shí)間,購(gòu)買這樣的設(shè)備覺得是物超所值的。

但是,本人是一個(gè)喜歡折騰的人。并且從前一篇文章可以知道我為了"折騰"買了樹莓派。所以,就想怎樣基于樹莓派搭建《家用NAS》或者《個(gè)人網(wǎng)盤》。下面大概的分析一下《家用NAS》平臺(tái)所需要的功能:

編號(hào) 功能 描述 備注
1 家庭部署 1.設(shè)備管理權(quán),數(shù)據(jù)歸屬權(quán)全部都由個(gè)人負(fù)責(zé)。
2.設(shè)備所處的網(wǎng)絡(luò)也需要控制。
3.數(shù)據(jù)安全有控制方法。
2 文件共享 1.需要在家庭內(nèi)各種設(shè)備上都能訪問(wèn)文件。
2.可以控制訪問(wèn)權(quán)限。不同的成員訪問(wèn)不同的目錄。
3 存儲(chǔ)能力 1.有存儲(chǔ)能力,并可以進(jìn)行存儲(chǔ)的擴(kuò)展。
2.可以支持?jǐn)?shù)據(jù)的備份與故障恢復(fù)。
4 遠(yuǎn)程同步 1.可以在外面的時(shí)候(公司、旅游等),將數(shù)據(jù)同步到家用NAS上。
2.可以在外面的時(shí)候訪問(wèn)家用NAS上的數(shù)據(jù)。
5 遠(yuǎn)程管理 1.支持遠(yuǎn)程管理,可以在外面的時(shí)候?qū)Σ榭醇矣肗AS的狀態(tài)。
2.可以支持?jǐn)U展接入其他家用設(shè)備,并控制。
6 離線下載 1.可以在家用NAS設(shè)備上進(jìn)行離線下載操作。
2.查看離線下載進(jìn)度,控制下載到目錄等。
7 各種終端 1.需要支持PC端管理功能。
2.需要支持手機(jī)端管理功能。
8 影音中心 1.可以進(jìn)行DLNA,WebDav等協(xié)議
9 很多應(yīng)用 可以支持很多應(yīng)用,如:百度網(wǎng)盤同步,家用監(jiān)控存儲(chǔ),遠(yuǎn)程家用設(shè)備控制,IFTTT等

因?yàn)槭羌矣迷O(shè)備,所以這里考慮安全,可用性方面的內(nèi)容少一些。家用NAS基本上可以上傳下載,可以看視頻基本上就夠用了。所以其他方面的內(nèi)容不再這里考慮。所以這個(gè)方案不適用與公司內(nèi)部文件共享,網(wǎng)站文件存儲(chǔ)等方面。

開源軟件研究

有了上面的需求,就有了目標(biāo)。開始研究開源軟件,使用開源軟件把整體的環(huán)境搭建起來(lái)。因?yàn)槭腔跇漭傻募矣肗AS解決方案,所以,都會(huì)基于樹莓派上的一些解決方案進(jìn)行。

樹莓派上又多種方式開源項(xiàng)目,或者免費(fèi)項(xiàng)目。可以簡(jiǎn)單的分為:樹莓派操作系統(tǒng)鏡像,應(yīng)用軟件,Docker鏡像。一項(xiàng)一項(xiàng)的看看這些形式的項(xiàng)目的支持:

  • 樹莓派操作系統(tǒng)鏡像:

    LibreELEC,KODI,OSMC是樹莓派官方上能找到的幾個(gè)影音系統(tǒng)的樹莓派鏡像。這幾個(gè)系統(tǒng)都是國(guó)外的大神開發(fā)的,所以對(duì)國(guó)內(nèi)的情況支持較少。例如之前使用LibreELEC想看個(gè)Bilibili都沒有插件進(jìn)行擴(kuò)展,國(guó)內(nèi)的各大視頻網(wǎng)站的支持也很弱。操作起來(lái)比較像是一個(gè)機(jī)頂盒,所以必須把設(shè)備放在電視附近使用HDMI進(jìn)行連接。比較限制使用方式,所以在這里不考慮這幾個(gè)系統(tǒng)。

    Raspbian是樹莓派基于Debian的一個(gè)純凈版本??梢允褂貌僮飨到y(tǒng)界面,也可以使用命令行方式安裝。

    CentOS也有專門的樹莓派版本,不過(guò)支持的比較差。在使用一段時(shí)間后莫名其妙的啟動(dòng)不了,不支持ntfs-3g文件系統(tǒng),安裝軟件各種不支持樹莓派版本。所以,CentOS的樹莓派支持還是差一些的。

  • 樹莓派應(yīng)用:

    樹莓派上有些應(yīng)用層的軟件,例如:OpenMediaVault,F(xiàn)reeNAS,RaspNAS。這些應(yīng)用層軟件可以使用多種方式安裝,有些大神已經(jīng)把這些系統(tǒng)生成了樹莓派鏡像,可以直接下載刷到SD卡上就可以用。也可以根據(jù)安裝步驟進(jìn)行應(yīng)用層的安裝。

    在樹莓派上安裝這些軟件之后,使用時(shí)發(fā)現(xiàn)一些問(wèn)題。在使用OpenMediaVault時(shí)發(fā)現(xiàn),這個(gè)系統(tǒng)支持RAID。厲害了支持RAID方式的磁盤管理,不過(guò)要支持RAID就需要多塊硬盤。在沒有多塊硬盤的情況下使用這些軟件完成NAS的部署,比較困難。并且,在樹莓派上運(yùn)行這些程序事也會(huì)發(fā)現(xiàn)一些不穩(wěn)定的問(wèn)題,并且對(duì)終端支持的種類也有限,要不就是終端軟件是收費(fèi)的了。所以,整體考慮這幾個(gè)應(yīng)用系統(tǒng)不可用。不過(guò)有一些大神也使用這幾個(gè)系統(tǒng)去實(shí)現(xiàn)NAS,可能大神們對(duì)這些系統(tǒng)進(jìn)行了改造。

    Seafile - 開源的企業(yè)私有網(wǎng)盤。國(guó)產(chǎn)的私有化部署網(wǎng)盤系統(tǒng),不過(guò)對(duì)樹莓派的支持稍差一些。因?yàn)镾eafile是使用Python語(yǔ)言開發(fā)的,可以使用Sqlite3作為數(shù)據(jù)庫(kù)。但是在安裝過(guò)程中會(huì)和其他的軟件依賴發(fā)成沖突,并且不支持樹莓派上使用Docker作為環(huán)境隔離。
    Pydio | Enterprise File Sharing & Sync Platform。也是一個(gè)不錯(cuò)的應(yīng)用軟件,比較遺憾的是不支持樹莓派。

  • 樹莓派Docker鏡像:

    NextCloud,ownCloud,Samba,aria2等等??梢詽M足家用NAS的基本要求。但是需要進(jìn)行組裝工作。還可以進(jìn)行環(huán)境隔離,不影響其他軟件的運(yùn)行。

離線下載之前使用過(guò)迅雷的linux版本,但是及其不穩(wěn)定,而且已經(jīng)停止維護(hù)了。所以在樹莓派上沒有比較好的離線下載工具。

解決方案設(shè)計(jì)

綜上的開源軟件的調(diào)研,發(fā)現(xiàn)沒有現(xiàn)成的、完善的解決方案可以滿足我們上面提到的軟件需求。需要進(jìn)行組裝才能完成。俗話說(shuō)的自己動(dòng)手豐衣足食,所以先整一個(gè)整體方案。

整體解決方案

分幾個(gè)部分:訪問(wèn)側(cè),設(shè)備側(cè),設(shè)備。其中各部分的意義為:

  • 訪問(wèn)側(cè):

    訪問(wèn)側(cè)主要解決在公網(wǎng)上訪問(wèn)NAS服務(wù)的網(wǎng)絡(luò)可達(dá)。這里因?yàn)榧依锸褂玫氖请娦诺木W(wǎng)絡(luò),所以是有公網(wǎng)IP的。這里只需要解決路由器與樹莓派之間的端口映射以及撥號(hào)后IP的只變更的問(wèn)題既可以。如果是其他網(wǎng)絡(luò),沒有公網(wǎng)IP的情況可以借助于花生殼等類似技術(shù)完成。

  • 設(shè)備側(cè):

    設(shè)備側(cè)主要是運(yùn)行的軟件。負(fù)責(zé)有Samba,NextCloud組成。Samba用于家庭內(nèi)部的文件共享,端口不對(duì)外開放。NextCloud主要完成家庭網(wǎng)盤功能,可以在公網(wǎng)訪問(wèn)。

  • 設(shè)備:

    設(shè)備為上層運(yùn)行的軟硬件環(huán)境。設(shè)備上硬件主要是有路由器、樹莓派和西數(shù)硬盤組成硬件,Raspbian為樹莓派操作系統(tǒng),Docker為軟件運(yùn)行環(huán)境。

以上從需求來(lái)源到調(diào)研軟件,然后在形成整體解決方案。下一篇文章將會(huì)介紹其中的具體操作過(guò)程。

參見

Dietpi玩轉(zhuǎn)SBC
Plex完美個(gè)人影音云盤搭建教程-Plex Media Server安裝與使用方法
利用Pydio搭建免費(fèi)私有云存儲(chǔ)-多終端自動(dòng)同步可在線播放音樂視頻
Oneinstack安裝NextCloud以及使用Aria2離線下載和ocDownloader插件配置
用樹莓派制造一個(gè)像樣的 NAS

推薦幾個(gè)樹莓派 raspbian 系統(tǒng) 可用的 arm docker源

https://nextcloud.com/athome/
https://nextcloud.com/yourdata/

動(dòng)態(tài)二級(jí)域名
動(dòng)態(tài)二級(jí)域名

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容