openwrt下的samba設定

2021-07-13 01:14:35 字數 3172 閱讀 2654

** 

openwrt下samba設定起作用的機制是這樣的:

openwrt在/etc/config/下面有乙個samba的設定,注意:這個設定不符合samba軟體本身的設定檔案規範。openwr啟動時,會用這個設定去替換掉相應的模板裡的字段,生成乙個符合samba設定檔案規範的檔案放到/tmp目錄下。

設定非常簡單,三步,一是設定/etc/config/samba,二是設定用smbpasswd設定密碼,三是修改samba模板。

一、設定/etc/config/samba

設定前:

config samba

option 'name' 

'openwrt'

option 'workgroup' 

'openwrt'

option 'description' 

'openwrt'

option 'homes'  

'1'config sambashare

option 'name' 

'tmp'

option 'path' 

'/tmp'

option 'read_only' 

'no'

option 'guest_ok' 

'no'

option 'create_mask' 

'0700'

option 'dir_mask' 

'0700'

#option 'users' 

'abc'

設定後:

config samba

option 'name' 

'openwrt'

option 'workgroup' 

'openwrt'

option 'description' 

'openwrt'

option 'homes'  

'1'config sambashare

option 'name' 

'home'

共享目錄名

option 'path' 

'/home'

要共享的目錄

option 'read_only' 

'no'

option 'guest_ok' 

'no'

option 'create_mask' 

'0700'

option 'dir_mask' 

'0700'

#option 'users' 

'abc'

#我多加了乙個共享目錄

config sambashare

option 'name' 

'root'

option 'path' 

'/'option 'read_only' 

'no'

option 'guest_ok' 

'no'

option 'create_mask' 

'0700'

option 'dir_mask' 

'0700'

#option 'users' 

'abc'

二、用smbpasswd設定samba密碼:

smbpasswd root ***x

注意,這個root是使用者名稱,使用者名稱必須是系統裡已經曾在的使用者,openwrt好像只有乙個root,乙個nobody,兩個使用者?如果要新增其他使用者, 可以用busybox的使用者管理(adduser/deluser,需要在編譯時新增此部分功能),或者直接編譯/etc/passwd來新增使用者,這兩個我都沒試過,所以,我是直接用root訪問samba。

useradd -m jing  //增加使用者

smbpasswd -a jing //設定使用者密碼

ps:命令要用類似putty的程式執行。winscp自帶的命令列貌似不行。

三、修改samba模板

/etc/samba/smb.conf.templet

設定前:

[global]

netbios name = |name| 

workgroup = |workgroup|

server string = |description|

syslog = 10

encrypt passwords = true

passdb backend = smbpasswd

obey pam restrictions = yes

socket options = tcp_nodelay

unix charset = iso-....

preferred master = yes

os level = 20

security = user

guest account = nobody

invalid users = root

smb passwd file = /etc/samba/smbpasswd

設定後:

[global]

netbios name = |name| 

workgroup = |workgroup|

server string = |description|

syslog = 10

encrypt passwords = true

passdb backend = smbpasswd

obey pam restrictions = yes

socket options = tcp_nodelay

# 設定成utf-8可解決中文問題

unix charset = 

utf-8

preferred master = yes

os level = 20

security = user

guest account = nobody

# 啟用root賬號,預設為了安全,不允許root訪問samba

#  invalid users = root

smb passwd file = /etc/samba/smbpasswd

大家可以用winscp把/etc/config/下的檔案備份下來,(對samba而言,再把/etc/samba目錄複製下來),刷機後,直接把備份的檔案按原位置覆蓋回去,重啟,就ok了,這也是我漸漸習慣直接編輯配置檔案,而不用web設定的原因。

最後要重啟samba服務

openwrt設定samba共享

簡單介紹 openwrt的samba配置是先讀取 etc config samba,結合 etc samba smb.conf.template檔案,生成配置檔案 etc samba smb.conf,使用者只需修改 etc config samba和 etc samba smb.conf.temp...

openwrt設定samba共享

openwrt設定samba共享 簡單介紹 openwrt的samba配置是先讀取 etc config samba,結合 etc samba smb.conf.template檔案,生成配置檔案 etc samba smb.conf,使用者只需修改 etc config samba和 etc sa...

openwrt使用samba服務

1 編譯 執行make menuconfig 選中networking samba server。執行編譯命令 make package samba36 v sc 編譯版本,生成samba36 server ipk檔案。2 安裝 opkg install samba36 server ipk 3 使...