參考文章:《linux就該這樣學》 samba多用戶、多組的訪問 RedHat7下Samba服務搭建配置實例
需求:20多臺裝有win7系統的計算機訪問,有可以共同訪問的目錄,有各自部門各自訪問的目錄
實驗環境:一臺筆記本,虛擬機中安裝RHEL7
本來是打算用域環境,比較方便,但是是別人的分公司,所以沒辦法安裝域。查了一會,最後還是選擇linux系統中使用samba來操作。
安裝samba:
yum install samba -y
安裝完成後,可以查看samba配置文件(初始配置文件註釋很多,可以先備份一下,然後把註釋去掉再保存一分文件)
mv /etc/samba/smb.conf /etc/samba/smb.conf.bak cat /etc/samba/smb.conf.bak |grep -v "#"|grep -v ";"|grep -v "^$" >/etc/samba/smb.conf vim /etc/samba/smb.conf
添加共享目錄,smb.conf配置文件添加配置(如上圖:[smb])
mkdir /mnt/smb
重啓samba服務
systemctl restart smb.service systemctl enable smb.service (開機啓動) systemctl status smb.service (服務狀態)
一開始訪問服務器IP會無法訪問,是因爲系統的防火牆沒有設置,CentOS 7 是自帶的firewall,CentOS 6 好像是iptables。關閉防火牆命令如下:
firewall-cmd --permanent --zone=public --add-service=samba firewall-cmd --reload
關閉防火牆
systemctl disable firewalld.service
再訪問需要輸入賬號密碼,這就需要添加smb賬號了,pdbedit命令用於管理SMB服務的獨立賬號信息,格式:pdbedit [選項] 用戶賬戶
首先創建一個系統用戶
useradd smb2 pdbedit -a -u smb2
再登錄可以進入目錄了,但是卻不能訪問,這是selinux的原因
setsebool -P samba_enable_home_dirs on semanage fcontext -a -t samba_share_t /home/smb1 chown -Rf smb1:smb1 /home/smb1
關閉selinux
vim /etc/selinux/config SELINUX=disabled
這樣子就可以訪問了。每個用戶可以看到自己的專用目錄,還有其他的一些共享目錄。
登錄文件服務器時選擇保存憑據,以後就不用再輸入賬號密碼了,如果不選擇保存憑據,在關機前都默認保存密碼,關機後就無效了。如果你想換賬號登錄,可以用以下方法,然後稍等一分鐘左右再打開,就可以重新填寫賬戶登錄了