refer to:?https://www.freehao123.com/raspberry-pi-nas/
手里有一個(gè)樹(shù)莓派Raspberry Pi 2,正好還有一個(gè)空閑的移動(dòng)硬盤(pán),尋思著把這樹(shù)莓派Raspberry Pi 和移動(dòng)硬盤(pán)給利用起來(lái)熊咽,搭建一個(gè)低成本的NAS靴拱。正好前段時(shí)間折騰著Nextcloud離線下載搭建方法铁材,Aria2安裝在樹(shù)莓派Raspberry Pi 也是一個(gè)很簡(jiǎn)單的事情碗暗。
然后探熔,在樹(shù)莓派Raspberry Pi 掛載移動(dòng)硬盤(pán)亩鬼,利用Aria2離線掛機(jī)下載資源到硬盤(pán)中殖告,再利用Kodi播放器可以讀取SFTP、FTP或Http服務(wù)器里的文件的特點(diǎn)辛孵,直接播放樹(shù)莓派Raspberry Pi 硬盤(pán)中的視頻丛肮。這樣一個(gè)簡(jiǎn)單的家庭影視共享NAS存儲(chǔ)就這樣完成了。
實(shí)際使用的過(guò)程中還是插不錯(cuò)的魄缚,沒(méi)錢(qián)購(gòu)買(mǎi)專業(yè)的NAS存儲(chǔ)設(shè)備宝与,綜合利用一下正在“吃灰”的樹(shù)莓派、移動(dòng)硬盤(pán)冶匹、網(wǎng)線等還是挺不錯(cuò)的习劫。樹(shù)莓派Raspberry Pi 安裝過(guò)程還是挺簡(jiǎn)單的,這篇主要是整理一下自己在操作過(guò)程中遇到一些問(wèn)題嚼隘,例如移動(dòng)硬盤(pán)掛載诽里、USB無(wú)線網(wǎng)卡、讀取權(quán)限等飞蛹。
更多的有關(guān)于搭建網(wǎng)絡(luò)存儲(chǔ)和云盤(pán)的文章谤狡,有興趣的朋友還可以看看:
Nextcloud離線下載搭建方法-整合Aria2和AriaNg、Aria2 WebUI實(shí)現(xiàn)離線下載
Lsyncd搭建同步鏡像-用Lsyncd實(shí)現(xiàn)本地和遠(yuǎn)程服務(wù)器之間實(shí)時(shí)同步
Linux VPS掛載Google Drive和Dropbox-實(shí)現(xiàn)VPS主機(jī)數(shù)據(jù)同步備份
一卧檐、樹(shù)莓派軟件安裝卸載命令
樹(shù)莓派官方系統(tǒng)Raspbain Jessie With PIXEL 墓懂,就是基于Debain 8深度定制的,所以直接使用我們?cè)贚inux VPS上用的命令即可霉囚,例如LNMP環(huán)境搭建都沒(méi)有問(wèn)題捕仔。這里整理出一些常用的命令:
常用apt命令列表
apt-cache search # ------(package 搜索包)
apt-cache show #------(package 獲取包的相關(guān)信息,如說(shuō)明盈罐、大小榜跌、版本等)
sudo apt-get install # ------(package 安裝包)
sudo apt-get install # -----(package - - reinstall 重新安裝包)
sudo apt-get -f install # -----(強(qiáng)制安裝?#"-f = --fix-missing"當(dāng)是修復(fù)安裝吧...)
sudo apt-get remove #-----(package 刪除包)
sudo apt-get remove -purge # ------(package 刪除包,包括刪除配置文件等)
sudo apt-get autoremove --purge # ----(package 刪除包及其依賴的軟件包+配置文件等(只對(duì)6.10有效盅粪,強(qiáng)烈推薦))
sudo apt-get update #------更新源
sudo apt-get upgrade #------更新已安裝的包
sudo apt-get dist-upgrade # ---------升級(jí)系統(tǒng)
sudo apt-get dselect-upgrade #------使用 dselect 升級(jí)
apt-cache depends #-------(package 了解使用依賴)
apt-cache rdepends # ------(package 了解某個(gè)具體的依賴?#當(dāng)是查看該包被哪些包依賴吧...)
sudo apt-get build-dep # ------(package 安裝相關(guān)的編譯環(huán)境)
apt-get source #------(package 下載該包的源代碼)
sudo apt-get clean && sudo apt-get autoclean # --------清理下載文件的存檔 && 只清理過(guò)時(shí)的包
sudo apt-get check #-------檢查是否有損壞的依賴
如果使用 apt-get 遇到速度慢或者源不存在等錯(cuò)誤钓葫,可能需要更換源,請(qǐng)參考(wzfou.com)本文的第二部分湾揽。
aptitude 命令
aptitude 與 apt-get 一樣瓤逼,是 Debian 及其衍生系統(tǒng)中功能極其強(qiáng)大的包管理工具笼吟。與 apt-get 不同的是,aptitude 在處理依賴問(wèn)題上更佳一些霸旗。舉例來(lái)說(shuō)贷帮,aptitude 在刪除一個(gè)包時(shí),會(huì)同時(shí)刪除本身所依賴的包诱告。這樣撵枢,系統(tǒng)中不會(huì)殘留無(wú)用的包,整個(gè)系統(tǒng)更為干凈精居。以下是筆者總結(jié)的一些常用 aptitude 命令锄禽,僅供參考。
aptitude update 更新可用的包列表
aptitude upgrade 升級(jí)可用的包
aptitude dist-upgrade 將系統(tǒng)升級(jí)到新的發(fā)行版
aptitude install pkgname 安裝包
aptitude remove pkgname 刪除包
aptitude purge pkgname 刪除包及其配置文件
aptitude search string 搜索包
aptitude show pkgname 顯示包的詳細(xì)信息
aptitude clean 刪除下載的包文件
aptitude autoclean 僅刪除過(guò)期的包文件
當(dāng)然靴姿,你也可以在文本界面模式中使用 aptitude沃但。
deb軟件包
dpkg -i xxx.deb #安裝deb軟件包
dpkg -r xxx.deb #刪除軟件包
dpkg -r –purge xxx.deb # 連同配置文件一起刪除
== dpkg -P xxx.deb # 徹底的卸載,包括軟件的配置文件
dpkg -info xxx.deb # 查看軟件包信息
dpkg -L xxx.deb # 查看軟件安裝到什么地方
dpkg -l # 查看系統(tǒng)中已安裝軟件包信息
dpkg -s package # 查看軟件包的詳細(xì)情況,包括版本,依賴之類(lèi)的
dpkg -S keyword #搜索所屬的包內(nèi)容
dpkg -c package.deb #列出 deb 包的內(nèi)容
dpkg -C #查找只有部分安裝的軟件包信息
dpkg -p package-name #顯示包的具體信息
dpkg –unpack package.deb #解開(kāi) deb 包的內(nèi)容
dpkg –configure package #配置包
dpkg-reconfigure xxx # 重新配置軟件包
# 清除所有已刪除包的殘馀配置文件
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
# 如果報(bào)如下錯(cuò)誤佛吓,證明你的系統(tǒng)中沒(méi)有殘留配置文件了宵晚,無(wú)須擔(dān)心。
dpkg: –purge needs at least one package name argument
dpkg –clear-avail #刪除軟件包的Avaliable信息
dpkg –help #顯示幫助信息
dpkg –compare-versions ver1 op ver2 #比較同一個(gè)包的不同版本之間的差別
dpkg –licence (or) dpkg –license #顯示dpkg的Licence
dpkg –version #顯示dpkg的版本號(hào)
dpkg -b direc×y [filename] #建立一個(gè)deb文件
dpkg安裝的可以用apt卸載维雇,反之亦可淤刃。
二、樹(shù)莓派更換更新源方法
樹(shù)莓派 Raspberry Pi自帶的更新源在國(guó)內(nèi)打不開(kāi)吱型,我們可以更換為國(guó)內(nèi)的鏡像逸贾。首先編輯 /etc/apt/sources.list 文件,這里推薦就用系統(tǒng)自帶的 nano 命令編輯津滞,命令如下:
sudo nano /etc/apt/sources.list
進(jìn)入編輯界面铝侵,刪除原有的內(nèi)容,粘貼如下內(nèi)容:
deb http://mirrors.aliyun.com/raspbian/raspbian/ jessie main non-free contrib rpi
deb-src http://mirrors.aliyun.com/raspbian/raspbian/ jessie main non-free contrib rpi
更新軟件索引清單
sudo apt-get update
比較索引清單更新依賴關(guān)系
sudo apt-get upgrade -y
補(bǔ)充:完成上述操作后你還需要把sources.list.d文件夾內(nèi)raspi.list的源注釋掉触徐。更多的鏡像源可以在這里找到:http://www.raspbian.org/RaspbianMirrors
三哟沫、樹(shù)莓派啟用root登陸賬戶
樹(shù)莓派更換更新源可以解決軟件依賴問(wèn)題,但是有時(shí)我們需要用到Root權(quán)限才可以安裝某些軟件锌介。當(dāng)需要root權(quán)限時(shí),由默認(rèn)賬戶經(jīng)由sudo執(zhí)行猾警,Raspberry pi 系統(tǒng)中的Raspbian孔祸。默認(rèn)主機(jī)名是 raspberrypi 默認(rèn)用戶是 pi 密碼為 raspberry
為了方便折騰,建議第一時(shí)間啟用 ROOT 賬號(hào)发皿,只需要執(zhí)行一下兩句命令即可:
// 重新開(kāi)啟root賬號(hào)崔慧,可由pi用戶登錄后,執(zhí)行此命令后系統(tǒng)會(huì)提示輸入兩遍的root密碼穴墅,輸入你想設(shè)的密碼即可惶室。
pi@raspberrypi:~$ sudo passwd root
Enter new UNIX password: #輸入第一遍密碼
Retype new UNIX password: #輸入第二遍密碼
// 啟用 root 賬號(hào)登錄
pi@raspberrypi:~$ sudo passwd --unlock root
passwd: password expiry information changed.
輸入上面第一行代碼 第二行是提示錯(cuò)誤的代碼温自。原因是 新版本s-s-h默認(rèn)關(guān)閉root登陸 你可以修改一下s-s-h的配置文件。
pi@raspberrypi:~$ sudo nano /etc/ssh/sshd_config
Ctrl + W 快捷鍵 搜索 PermitRootLogin without-password皇钞,修改 PermitRootLogin without-password 為 PermitRootLogin yes悼泌,Ctrl + O 快捷鍵 保存,Ctrl + O 快捷鍵 退出 Nano 編輯器夹界。 執(zhí)行完之后馆里,用 reboot 命令重啟,這樣就可以解鎖root賬戶可柿。
四鸠踪、樹(shù)莓派手動(dòng)掛載移動(dòng)硬盤(pán)或U盤(pán)
Raspberry Pi 官網(wǎng)提供的操作系統(tǒng)目前已經(jīng)可以自動(dòng)掛載移動(dòng)硬盤(pán)或者U盤(pán)了,如果你使用的是其它的操作系統(tǒng)無(wú)法自動(dòng)識(shí)別并掛載硬盤(pán)或U盤(pán)复斥,你可以采用手動(dòng)掛載的方式营密。通常我們?cè)?/mnt 或 /media 目錄下新建一個(gè)目錄作為掛載點(diǎn)。比如:
sudo mkdir /mnt/1GB_USB_flash
sudo mount -o uid=pi,gid=pi /dev/sda1 /mnt/1GB_USB_flash // 用完之后卸載
sudo umount /mnt/1GB_USB_flash
sda1 是取決于你的實(shí)際情況目锭,a表示第一個(gè)硬盤(pán)评汰,1表示第一個(gè)分區(qū)。
掛載exFAT格式的硬盤(pán)
FAT 格式U盤(pán) mount 本身就能支持侣集,但如果你的U盤(pán)或移動(dòng)硬盤(pán)使用的是 exFAT 格式键俱,mount 會(huì)說(shuō)不支持。沒(méi)關(guān)系世分,安裝 exfat-fuse 軟件之后 mount 就支持了编振。
sudo apt-get install exfat-fuse
如果想開(kāi)機(jī)自動(dòng)掛載,而不是每次手工執(zhí)行臭埋,可以編輯 /etc/fstab 文件。比如在末尾添加一行:
/dev/sda1 /mnt/usbdisk vfat rw,defaults 0 0
掛載NTFS格式的硬盤(pán)(讀寫(xiě)方式掛載)
默認(rèn)掛載NTFS格式的硬盤(pán)只有只讀權(quán)限瓢阴,需要借助其它工具實(shí)現(xiàn)。
#安裝所需軟件包
sudo apt-get install fuse-utils ntfs-3g
#加載內(nèi)核模塊
modprobe fuse
#編輯fstab讓移動(dòng)硬盤(pán)開(kāi)機(jī)自動(dòng)掛載
sudo nano /etc/fstab
#在最后一行添加如下內(nèi)容
/dev/sda1 /mnt/myusbdrive ntfs-3g defaults,noexec,umask=0000 0 0
#保存重啟荣恐,即可生效
掛載FAT32格式的硬盤(pán)
#創(chuàng)建掛載點(diǎn)
sudo mkdir /mnt/myusbdrive
#編輯fstab讓移動(dòng)硬盤(pán)開(kāi)機(jī)自動(dòng)掛載
sudo nano /etc/fstab
#在最后一行添加如下內(nèi)容
/dev/sda1 /mnt/myusbdrive auto defaults,noexec,umask=0000 0 0
#保存重啟,即可生效
說(shuō)明:
sda1是取決于你的實(shí)際情況叠穆,a表示第一個(gè)硬盤(pán),1表示第一個(gè)分區(qū)硼被。
umask=0000 0 0
前面四個(gè)0就是對(duì)所有人,可讀可寫(xiě)可執(zhí)行,
后面兩個(gè)0,第一個(gè)代表dump,0是不備份
第二個(gè)代表fsck檢查的順序,0表示不檢查
卸載:sudo umount /mnt/myusbdrive
查看掛載情況可使用以下命令。 cd /mnt/myusbdrive 嚷硫,然后:ls
五始鱼、樹(shù)莓派移動(dòng)硬盤(pán)供電不足
我在使用樹(shù)莓派2接移動(dòng)硬盤(pán)時(shí)出現(xiàn)了供電不足的問(wèn)題,主要表現(xiàn)就是掛載不穩(wěn)定脆贵,移動(dòng)硬盤(pán)出現(xiàn)“咔咔”的吃虧医清。目前的解決辦法有:
硬件法:
買(mǎi)一個(gè)USB-HUB,相當(dāng)于給移動(dòng)硬盤(pán)提供一個(gè)電流源丹禀。
軟件法1:
更改樹(shù)莓派配置状勤,路徑是:boot/config.txt,這里面包含了一些樹(shù)莓派的初始配置。只要在最后面加上max_usb_current=1就行了双泪。打開(kāi)終端持搜,進(jìn)入到boot文件夾下,執(zhí)行如下:sudo nano config.txt
然后添加max_usb_current=1,ctrl+x保存焙矛。 輸入reboot重啟葫盼,插上移動(dòng)硬盤(pán),如果沒(méi)識(shí)別出來(lái)村斟,就多插幾次贫导。
軟件法2:
在軟件法1中的文件末尾添加 safe_mode_gpio=4蟆盹。
軟件法3:
把你的移動(dòng)硬盤(pán)格式化成ext格式的峰档,ext3或4都可以。這樣插上樹(shù)莓派就可以被識(shí)別。
格式化方法如下:
首先抬驴,如果移動(dòng)硬盤(pán)已經(jīng)掛載,先取消掛載:sudo umount /xxxmnt/xxxusb_flash。接著執(zhí)行sudo fdisk -l查看你的u盤(pán)的序號(hào)墩莫,通常是/dev/sdb之類(lèi)的灌侣,U盤(pán)分區(qū)通常是/dev/sdb1。
最后,執(zhí)行格式化操作:
sudo mkfs.ext4 /dev/sda1 # 格式化為ext4分區(qū)
sudo mkfs.ext3 /dev/sda1 # 格式化為ext3分區(qū)
sudo mkfs.ext2 /dev/sda1 #格式化為ext2分區(qū)
特別注意:格式化后你的移動(dòng)硬盤(pán)時(shí)面的東西就都清除了哪审,在格式化以前最好做好備份。
六、樹(shù)莓派整合Aria2和AriaNg離線下載
Raspberry Pi 整合Aria2和AriaNg、Aria2 WebUI實(shí)現(xiàn)離線下載方法很簡(jiǎn)單膀篮,參考:在VPS上安裝Aria2。
七、樹(shù)莓派搭建FTP服務(wù)器(vsftpd)
如果使用Kodi這樣的播放器是可以直接使用SFTP登錄并瀏覽文件的,但是我們也可以使用FTP登錄的方式來(lái)讀取文件扼倘。首先在樹(shù)莓派安裝vsftpd服務(wù)器 (約400KB)
sudo apt-get install vsftpd
啟動(dòng)ftp服務(wù)
sudo service vsftpd start
編輯vsftdp的配置文件
sudo nano /etc/vsftpd.conf
找到以下行爪喘,定義一下
anonymous_enable=NO
表示:不允許匿名訪問(wèn)
local_enable=YES
設(shè)定本地用戶可以訪問(wèn)
write_enable=YES
設(shè)定可以進(jìn)行寫(xiě)操作
local_umask=022
設(shè)定上傳后文件的權(quán)限掩碼
chroot_local_user=YES
修改訪問(wèn)目錄,新增一行
local_root=/var/www/
# anon_root=/var/www/tmp
# local_root 針對(duì)系統(tǒng)用戶侦鹏;anon_root 針對(duì)匿名用戶
注:FTP用戶根目錄權(quán)限是555(dr-xr-xr-x)匹耕,權(quán)限設(shè)置成777登陸不了
重啟vsftpd服務(wù)
sudo service vsftpd restart
測(cè)試一下, OK驶赏。通過(guò)ftp連接樹(shù)莓派系統(tǒng),用戶名:pi嘱蛋,密碼是raspberry
八龄恋、樹(shù)莓派搭建NAS服務(wù)器(Samba)
安裝 samba 和 samba-common-bin
sudo apt-get install samba samba-common-bin
sudo apt-get install netatalk (可選,用于支持AFP)
sudo apt-get install avahi-daemon(可選金拒,用于支持網(wǎng)內(nèi)的計(jì)算機(jī)自動(dòng)發(fā)現(xiàn))
配置/etc/samba/smb.conf文件
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
sudo vi /etc/samba/smb.conf
[share]
#共享文件的名稱轿衔,將在網(wǎng)絡(luò)上以此名稱顯示
path = /samba #共享文件的路徑
valid users = root pi #允許訪問(wèn)的用戶害驹,比如我的raspi有
#root 和 pi 兩個(gè)用戶
browseable = yes #允許瀏覽
public = yes #共享開(kāi)放
writable = yes #可寫(xiě)
啟動(dòng) 重啟
sudo smbd
sudo smbd restart
九宛官、樹(shù)莓派啟用USB無(wú)線網(wǎng)卡
Raspberry Pi 2使用Raspbain Jessie With PIXEL 樹(shù)莓派官方系統(tǒng)瓦糕,基于Debain 8,帶PIXEL圖形界面亥揖,下載最新版:https://downloads.raspberrypi.org/raspbian_latest费变。
經(jīng)過(guò)我的測(cè)試圣贸,最新版的Raspbain Jessie 操作系統(tǒng)支持360 / 小米 / 百度 隨身wifi,如果你正好有一個(gè)的話插上去就可以使用 USB無(wú)線網(wǎng)卡了滑负。
十矮慕、總結(jié)
我在樹(shù)莓派Raspberry Pi 打造低成本NAS存儲(chǔ)操作過(guò)程中啄骇,首先遇到的問(wèn)題移動(dòng)硬盤(pán)掛載的問(wèn)題,默認(rèn)的NFT格式雖然可以掛載到Raspberry Pi 上夏跷,但是由于是Windows硬盤(pán)格式槽华,無(wú)法在Linux中修改權(quán)限趟妥,最終導(dǎo)致Aria2離線下載無(wú)法往硬盤(pán)中寫(xiě)數(shù)據(jù)。
繞好大一個(gè)圈亲雪,終于決定將移動(dòng)硬盤(pán)格式為Ext4,這樣Raspberry Pi 就可以直接識(shí)別并掛載了虾标。Windows上讀取Ext4格式的移動(dòng)硬盤(pán)可以使用Ext2 Volume Manager璧函,Ext2Fsd等軟件基显,支持在Windowsext2/ext3文件系統(tǒng)的讀寫(xiě)。