OpenWrt 如何設置 Samba 服務
OpenWrt 如何設置 Samba 服務
不知道 OpenWrt 如何設置 Samba 服務的,可以參考這一篇。( 親測可行 )
寫在前面的話:
OpenWrt 配置 Samba 與可能和其他發行版有所不同,但大同小異,可以提供參考。
分享器型號:WZR-HP-G300NH2
OpenWrt 如何設置 Samba 服務
一、安裝 Samba 服務;
安裝 Samba 服務有兩種方式:
1. 編譯安裝:編輯 OpenWrt 固件的時候,限制 Samba 相關功能。
2. 在線安裝:使用 OpenWrt 包管理工具 opkg 在線安裝。
在此使用在線安裝方式。
PS:其中 ” luci-app-samba ” 主要用於 web 配置,如果不需要可用不安裝,但最好還是安裝。
二、Samba配置
2.1 OpenWrt 下 Samba 服務主要配置文件:
1. /etc/samba/smb.conf.template:存放公共配置
2. /etc/config/samba:UCI 配置
3. /etc/samba/smb.conf:Samba服務運行時加載的文件,由前兩個文件組合而成。
OpenWrt 的 Samba 配置是先讀取 /etc/config/samba,結合 /etc/samba/smb.conf.template 檔案,生成配置檔案 /etc/samba/smb.conf,
因此使用者可以只需修改 /etc/config/samba 和 /etc/samba/smb.conf.template 檔案,然後設定 Samba 使用者與密碼。
PS:
如果 Samba 服務通過 init.d 腳本啓動( /etc/init.d/samba start|restart ),” /etc/samba/smb.conf ” 文件將被重新創建(結合 UCI 配置和 template 文件)
因此只能通過修改 ” /etc/config/samba “(官方推薦使用 LUCI 編輯 UCI 配置,避免出錯,需要安裝 ” luci-app-samba “)或 ” /etc/samba/smb.conf.template ” 進行配置。
2.2 UCI 配置示例如下:
config ‘samba’
option ‘name’ ‘OpenWrt’
option ‘workgroup’ ‘OpenWrt’
option ‘description’ ‘Samba on OpenWrt’
option ‘charset’ ‘UTF-8’
option ‘homes’ ‘0’
option ‘interface’ ‘loopback lan’
config ‘sambashare’
option ‘name’ ‘Shares’
option ‘path’ ‘/path/to/share’
# option ‘users’ ‘sandra’
option ‘guest_ok’ ‘yes’
option ‘create_mask’ ‘0700’
option ‘dir_mask’ ‘0700’
option ‘read_only’ ‘yes’
PS:注意配置節點類型爲 ” sambashare “,系統只能識別 “samba “、” sambashare ” 兩種類型。” samba ” 類型爲全局配置,” sambashare ” 爲具體目錄配置。
2.3 配置項說明:
配置好共享目錄後,重啓 Samba 服務(/etc/init.d/samba restart)即可。
” samba ” 配置項:
名稱 | 類型 | 默認值 | 描述 |
name | string | 主機名稱 ( hostname ) | 服務名稱 |
workgroup | string | 主機名稱 ( hostname ) | 工作組名稱 |
description | string | Samba on hostname or OpenWrt | 服務描述 |
charset | string | UTF-8 | 顯示字符集和 Unix 字符集 |
homes | bool | 0 ( 0 , 1 ) | 是否共享用戶 home 目錄 |
interface | string | loopback lan | 服務監聽的網絡接口語法:” < uci-interface-name > < uci-interface-name > … “ |
” sambashare ” 配置項:( 藍色字體為必填 )
名稱 | 類型 | 默認值 | 描述 |
name | string | ( none ) | 節點名稱,會顯示在文件瀏覽器 |
path | file path | ( none ) | 共享目錄的絕對路徑,對應 Samba 配置項:path |
users | string | 全局配置裏面的訪客帳號 | 允許訪問的 samba 用戶,使用 smbpasswd 添加。用戶之間使用逗號分隔(如:” root , nobody “)。對應 Samba 配置項:valid users |
read_only | string | yes 或者全局 template 文件配置 ( no,yes ) | 只讀模式開關,
對應 Samba 配置:read only |
guest_ok | string | no 或者全局 template 文件配置 ( no,yes ) | 是否允許匿名訪問,
對應 Samba 配置:guest ok |
create_mask | integer | 0744 或者全局 template 文件配置 | 新建文件的掩碼,
對應 Samba 配置:create mask |
dir_mask | string | 0755 或者全局 template 文件配置 | 新建目錄的掩碼,
對應 Samba 配置:directory mask |
三、關於開機啓動
使用 ” /etc/init.d/samba enable ” 啓用開機啓動,” /etc/init.d/samba disable ” 禁止開機啓動。
四、添加登錄用戶和密碼
sudo smbpasswd -a <UserName> <password>
例如:
smbpasswd -a pi
五、不使用 UCI 如何配置
UCI 配置只支持部分 samba 配置。對於 UCI 不滿足需求的情況,可以拋開 UCI 自定義配置。
這種情況下,使用 ” /etc/init.d/samba disable ” 關閉 init.d 開機啓動。取而代之,使用 ” smbd -D “和 ” nmbd -D ” 命令來啓動服務。
如果需要開機啓動,可以把這兩條命令添加在 ” /etc/rc.local ” 文件。這樣 ” /etc/samba/smb.conf ” 就不會重新創建,直接修改該文件進行配置即可。
免責聲明:
1.本影像檔案皆從網上搜集轉載,不承擔任何技術及版權問題。
2.如有下載連結僅供寬頻測試研究用途,請下載後在24小時內刪除,請勿用於商業。
3.若侵犯了您的合法權益,請來信通知我們,我們會及時刪除,給您帶來的不便,深表歉意。