# porpose: Shareing file system between windows and linux using network
protocol:
smb(Service Message Block): Shareing linux file system to windows
cifs(Common Internet File System): Shareing windows file system to linux
software for smb: samba
samba is using 137/udp, 138/udp, 139/tcp, 445/tcp
NetBIOS: Windows基於於主機實現互相通信的機制;
15個字符
samba:
nmbd: netbios
smbd: cifs
winbindd:
UNC路徑:\\SERVER\shared_name
交互式數據訪問:
# smbclient -L HOST -U USERNAME
獲取到共享信息之後,
# smbclint //SERVER/shared_name -U USERNAME
基於掛載的方式訪問:
mount -t cifs //SERVER/shared_name /mount_point -o username=USERNAME,password=PASSWORD
服務器:
# yum -y install samba
服務腳本:
/etc/rc.d/init.d/nmb
/etc/rc.d/init.d/smb
主配置文件:
/etc/samba/smb.conf
samba用戶:
賬號:都是系統用戶, /etc/passwd
密碼:samba服務自有密碼文件,
將系統用戶添加爲samba的命令:smbpasswd
smbpasswd:
-a Sys_User: 添加系統用戶爲samba用戶
-d :禁用
-e: 啓用
-x: 刪除
配置文件:
smb.conf
全局設定
特定共享的設定
私有家目錄
打印機共享
自定義共享
自定義共享:
[shared_name]
path = /path/to/share_directory
comment = Comment String
guest ok = {yes|no}
public = {yes|no}
writable = {yes|no}
read only = {yes|no}
write list = +GROUP_NAME
測試配置文件是否有語法錯誤,以及顯示最終生效的配置:
# testparm
建立samba共享,共享目錄爲/data,要求:
1)共享名爲shared,工作組爲magedu;
2)添加組develop,添加用戶gentoo,centos和ubuntu,其中gentoo和centos以develop爲附加組,ubuntu不屬於develop組;密碼均爲用戶名;
3)添加samba用戶gentoo,centos和ubuntu,密碼均爲“mageedu”;
4)此samba共享shared僅允許develop組具有寫權限,其他用戶只能以只讀方式訪問;
5)此samba共享服務僅允許來自於172.16.0.0/16網絡的主機訪問;