1、安裝samba服務
切換到root用戶(非root用戶用sudo)
apt install samba
2、配置文件
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
vi /etc/samba/smb.conf
在文件最後添加以下內容
[devdata]
comment = dev data
path = /data
browseable = true
read only = no
guest ok = yes
writeable = yes
public = yes
available = yes
create mode = 0644
force create mode = 0644
directory mode = 0755
force directory mode = 0755
samba的全局配置文件,在此不再贅述,網上很多,部分配置項,下文會備註一些
然後重啓服務
samba restart
3、匿名登錄
到這裏,基本上就可以打開共享目錄了
windows下,直接打開
linux下面,使用mount.cifs
sudo mount.cifs '//10.2.4.123/devdata' /data
其中/data爲掛載本地的目錄
4、添加用戶鑑權
修改samba配置文件,加上valid users配置,多個用戶,使用逗號(,)隔開
[devdata]
comment = dev data
path = /data
browseable = true
read only = no
guest ok = yes
writeable = yes
public = yes
available = yes
valid users = ubuntu
create mode = 0644
force create mode = 0644
directory mode = 0755
force directory mode = 0755
爲ubuntu用戶設置samba密碼
smbpasswd -a ubuntu
重啓服務
samba restart
重新打開,windows提示需要輸入密碼,輸入剛剛設置的密碼即可
linux下:
sudo mount.cifs -o username='ubuntu',password='123456' '//192.168.1.5/devdata' /data
這裏需要注意幾點:
- samba設置的用戶密碼,必須在系統下存在對應的用戶,否則會提示:Failed to add entry for user xxx,但是設置的密碼跟系統用戶無關
- 打開的共享目錄能否在目錄下面創建文件,取決於登錄用戶在文件夾的權限如何
- 如果需要多用戶可讀寫同一個文件夾,可把多用戶放在同一個系統用戶組,文件夾授權用戶組可讀寫權限。
5、samba部分配置項
共享資源訪問控制參數
browseable #指定共享的路徑是否可瀏覽(默認可以) browseable = no
available #指定共享的資源是否可用 available = no
read only #指定共享的路徑是否只讀 read only = yes
writable #指定共享的路徑是否可寫 writable = yes
read list #設置只讀訪問用戶列表 read list = tom,@stuff
write list #設置讀寫訪問用戶列表 write list = tom,@stuff
public #指定是否可以允許guest帳號訪問 public = yes
guest accout #指定一般性客戶的帳號 guest accout = nobody
guest ok #指定是否可以允許guest帳號訪問 guest ok = yes
guest only #指定是否只允許guest帳號訪問 guest only = yes
valid users #指定允許使用服務的用戶列表 valid users = tom,@stuff
invalid users #指定禁止使用服務的用戶列表 invalid users = tom,@stuff
wide links #設置是否允許共享外連接 wide links = no
veto files #參數阻止客戶端上傳含有特定關鍵字的文件或目錄到Samba服務器共享資源
create mask = 0664
directory mask = 0775