2013年5月29日 星期三

RaspberryPi : Samba Server

在內網中,Raspberry Pi 要和 Windows 傳輸檔案,還是以支援 SMB/CIFS 的 Samba 最方便。而如果只是自己要用, Samba 的安裝與設定也是照表操課,兩三下就解決了。當然囉!甚至對於玩 Raspbmc 的人來說就更容易了,因為它已內建,直接在圖形化的選單中啟用或停用即可。如果是使用類似 "wheezy" 這樣的版本,就得手動來新增服務了。


安裝 Samba

Samba 最精簡的安裝就是執行底下的指令:
sudo apt-get install samba

不過,它並不會安裝像是「smbpasswd」、「testparm」、「net」......這些工具,如果想使用這些指令,就必須再安裝「samba-common-bin」,可以執行底下的指令來安裝:
sudo apt-get install samba-common-bin


修改設定

Samba 的設定檔預設路徑是「/etc/samba/smb.conf」,所以我們可以執行底下的指令來修改內容:
sudo nano /etc/samba/smb.conf

如果只是要讓「pi」這個帳號可以在 Windows 中管理 Raspberry Pi 家目錄中的檔案,我們可以修改底下的幾個參數設定:

  • workgroup:這個是指定要加入的群組,也可以使用預設值不改。
  • server string:這個參數是在網路芳鄰瀏覽時會看到的字串,可以使用預設值不改。
  • security:這個參數會決定 Samba 所要扮演的角色,設成「security=user」即可。
  • [homes] 裡的 read only:[homes] 的區塊中所設定的所有使用者「家目錄」的參數,而「read only」如果設成「yes」,使用者在連線後就只能讀取 Raspberry Pi 上的資料,而無法寫入。為了要讓 Windows 端能讀寫資料,我們將它設定為「read only=no」。
上述的設定修改完畢後,將檔案儲存好。


啟動 Samba 服務


設定檔修改好了,我們就可以執行底下的指令來啟動 Sabma 服務:
sudo service samba start

或是用底下的指令來重新啟動 Samba
sudo service samba restart

新增帳號

不過,如果系統是首次安裝 Samba ,別忘了幫使用者新增 Sabma 的帳號,並設定密碼。我們可以先執行底下的指令來查查看帳號是否己存在:
sudo pdbedit -L

如果想新增帳號則執行底下的指令(以新增名為 pi 的帳號為例):
sudo pdbedit -a pi

下完指令,只要再依指示輸入密碼,該帳號就可以在 Windows 中用來登入 Raspberry Pi 了。


存取資料

假設 Raspberry Pi 的 IP 是 192.168.1.100 ,我們可以用這樣的網址來存取 pi 這個帳號的 Homes:
\\192.168.1.100\pi

出現認證的對話框就輸入前一小節,新增 Samba 帳號時的帳密資訊。

那為什麼當我們用類似「\\192.168.1.100\」來存取時,看不到 pi 這個帳號的 Homes?
因為按照預設的 /etc/samba/smb.conf 設定檔中的設定 [Homes] 資源是不開放瀏覽的,可以打開設定檔,[Homes] 應該有底下的設定值:

  • browseable = no

如果覺得這樣不方便,可以將它改為「browseable = yes」,並重新啟動 Samba ,讓設定生效即可。

關於 smb.conf 中可設定的項目有很多,這部份可以參考網路上 Samba 的相說明,邊設邊試來驗證各個選項,就不在此贅述了。


沒有留言:

張貼留言

 
© 2009. Design by Pocket