接到運營人員需要共享文件的需求,考慮到簡單易用的原則,這裏選用Samba來做文件共享服務。
先介紹下Samba服務,Samba是SMB/CIFS 網絡協議的重新實現, 它作爲 NFS 的補充使得在 Linux 和 Windows 系統中進行文件共享、打印機共享更容易實現。
一,安裝Samba服務
1, CentOS7上直接使用yum安裝samba, samba-client即可。
# yum install samba samba-client
2,安裝完成後,檢查下結果
# rpm -qa samba-client samba
samba-client-4.7.1-9.el7_5.x86_64
samba-4.7.1-9.el7_5.x86_64
二,服務端配置
1,創建共享目錄(這裏使用邏輯卷的方式)
# lvcreate -n smb -L 20G centos #創建lv邏輯卷
# mkfs.xfs /dev/mapper/centos-smb #格式化xfs文件系統
# mkdir /smb #創建掛載點
# echo '/dev/mapper/centos-smb xfs defaults 0 0' >> /etc/fstab #設置開機自動掛載
# mount -a #執行掛載
2,創建用戶組
# groupadd yunying
# grep yunying /etc/group #查看
yunying:x:1008:
# chown :yunying /smb #修改共享目錄權限
3,修改Samba配置文件
# cd /etc/samba/
# cp smb.conf smb.conf.bak #備份原配置文件
修改爲如下:
[global]
workgroup = WORKGROUP #定義工作組
security = user #定義安全級別(user, share, server)share代表不驗證用戶,user爲samba服務器驗證,server則代表認證工作由其他服務器完成
passdb backend = tdbsam #密碼存儲方式
printing = cups
printcap name = cups
load printers = yes
cups options = raw
[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
write list = @printadmin root
force group = @printadmin
create mask = 0664
directory mask = 0775
[運營共享]
path = /smb #共享目錄
valid users = @yunying #允許的用戶,@代表組
write list = @yunying #可寫
4,創建Samba用戶(Samba依賴於系統用戶)
useradd -g yunying -M -s /sbin/nologin test
5,將用戶加入到Samba服務器中
# pdbedit -a test
new password: #輸入密碼,並確認
retype new password:
...
6,檢查配置文件語法
# testparm -s
Load smb config files from /etc/samba/smb.conf
Processing section "[printers]"
Processing section "[print$]"
Processing section "[運營共享]"
Loaded services file OK. #語法檢查ok
Server role: ROLE_STANDALONE
7,啓動Samba服務,並設置開機自啓動
# systemctl start smb.service
# systemctl enable smb.service
8,檢查服務運行狀態
# netstat -tnlp | grep smbd
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 18782/smbd
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 18782/smbd
三,客戶端配置
Windows客戶端(Win7爲例):
win + r 打開運行窗口,鍵入服務器地址
輸入用戶名密碼
點擊確定即可登錄
Linux客戶端配置:
linux下連接samba服務器使用smbclient命令,因此要確保samba-client安裝完成。
查看服務器的共享目錄
# smbclient -L 172.16.100.188 -U test -W WORKGROUP
# smbclient -L 172.16.100.188 -U test%password -W WORKGROUP
進入共享目錄
# smbclient //172.16.100.188/運營共享 -U test%111111 -W WORKGROUP
Try "help" to get a list of possible commands.
smb: \>
使用-c選項可以一次性使用smbclient命令
# smbclient -c 'ls ' //172.16.100.188/運營共享 -U test%111111 -W WORKGROUP
四,Windows斷開與Samba服務器的連接方法
開始 -> 運行 -> cmd,執行net use * /del,然後根據提示按Y是取消遠程連接,N是放棄。執行net use 可以查看所有的遠程連接。