Raspberry Pi 筆記(十六):製作多媒體伺服機:使用 Samba 及 minidlna

[2014/3/27]
大約在半年前購置一部Pioneer 藍光播放機,主要購買的目的是要能使用外接硬碟碟播放影片。在選單中,除了USB選項外,還多了一個名為DLNA的選項,對於這個功能是毫無所悉。搜尋一下網路資訊,才知道「DLNA是數位生活網路聯盟 (Digital Living Network Alliance ,DLNA)的簡稱,他是由一般消費性電子、行動電話,以及電腦廠商組成的聯盟,該組織的目標在於建立一套可以使得各廠商的產品互相連接,互相適應的工業標準,從而為消費者實現數位化生活。」(來源:維基百科)如果能使用Raspberry Pi 安裝Samba做網路檔案分享,進行影音檔案管理,並結合DLNA Server,方便影音播放機遠端播放串流影音。於是就將一個1T的3.5"外接硬碟,透過USB接到Raspberry Pi,以下就是軟體安裝程序與步驟:


步驟一:安裝Samba軟體
$ sudo apt-get install samba samba-common-bin

如果外掛硬碟是NTFS系統,還要安裝以下套件,才能對檔案或資料夾有寫入權限,不然會出現:mount: warning: /home/pi/shares seems to be mounted read-only.的警告訊息。
$ sudo apt-get install ntfs-3g

NTFS-3G  的功能主要是為 Linux 提供 NTFS 的的驅動程式。讓Linux系統可以讀取NTFS的檔案格式。

步驟二:備份並修改設定檔 /etc/samba/smb.conf
$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old
$ vi /etc/samba/smb.conf 

修改以下幾個地方:
(1) 將 security = share前的#刪掉, 將 user 改成 share
 security = share

(2) 將以下整段文字加入檔案內[homes]之後或適當位置
[myusb]
   comment = Public Storage
   path = /home/pi/shares
   writeable = yes
   browseable = yes
   create mask = 0777
   directory mask = 0777
   read only = no
   guest only = yes
   guest ok = yes

步驟三:重新啟動Samba
$ sudo /etc/init.d/samba stop
$ sudo /etc/init.d/samba start

步驟四:掛載外接硬碟到smb.conf內path指定目錄
$ sudo mount -t ntfs /dev/sda1 /home/pi/shares

這樣就可以透過網路芳鄰對外接硬碟進行檔案存取。


網路芳鄰只是方便檔案複製,並不能直接播放分享資料夾的檔案,如果要遠端播放媒體,必須安裝DLNA Server軟體,我使用的是 minidlna,以下是安裝步驟:

步驟一:安裝minidlna
$ sudo apt-get install minidlna

步驟二:備份並修改設定檔 /etc/minidlna.conf
$ sudo cp /etc/minidlna.conf /etc/minidlna.conf.old
$ sudo vi /etc/minidlna.conf

修改媒體目錄如下:
media_dir=V,/home/pi/shares/Media/Movies
media_dir=P,/home/pi/shares/Media/Picture
media_dir=A,/home/pi/shares/Media/Music

我將USB外接硬碟 mount 到 /home/pi/shares,在硬碟建立 Media 目錄,分成三個子資料夾,分別存放影片、照片及音樂檔。修改後存檔,重新啟動 minidlna。

步驟三:重新啟動 minidlna服務
$ sudo service minidlna force-reload   或
$ sudo service minidlna stop
$ sudo service minidlna start

minidlna設定檔中指定的Port 是 8200,如果你要看媒體目錄可以透過瀏覽器連線到http://<Raspberry IP>:8200,以我的Pi 為例:
http://192.168.1.107:8200

顯示畫面如下:

Pioneer 藍光播放機的選單已經加入Raspberrypi:minidlna,可用遙控器進行播放媒體。

[參考資料]

elinux.org: R-Pi_NAS
TechSwamp: Setting Up a Raspberry Pi-powered Headless Media Server and NAS
Share on Google Plus

1 意見 :