首先經過此次教訓,讓我養成一個好習慣:備份 備份 備份 無論作什麼配置或者更改什麼東西以前先作好備份! 還有我自己的一個壞毛病:眼高手低!linux
工廠有一臺服務器,由之前的運維裝的Samba ,由於系統中病毒了,因此我直接重裝系統了,想着好配置呢 事先也沒有看配置文件,也沒有備份配置文件,結果最後在權限這一塊吃了大虧,耗了兩天多!vim
首先咱們工廠內網需求很簡單:就是共享就行 沒有用戶目錄權限設置 均可以隨便讀寫服務器
一、下面是安裝命令:運維
yum -y install samba samba-client samba-commontcp
還會有一些依賴包 會自動安裝編碼
二、而後進入/etc/samba/ 目錄下 會有三個文件spa
三、全部的配置選項都在smb.conf裏面,下面是個人配置文件內容截圖unix
詳細配置選項
[global]
workgroup = WORKGROUP //這是工做組,能夠添加本身的工做組,我用的是默認的WORKGROUP
security = user
map to guest = Bad User //這是samba 4.0版本之後必須設置爲user用戶,設置爲share 而後用testparm檢測smb.conf 會報錯的 服務也啓動不起來
log file = /var/log/samba/log.%m //log日誌及路徑 裏面記載的用戶的登陸操做日誌
max log size = 50 //日誌文件存儲的文件最大的大小
unix charset = UTF-8 //在Linux服務器上面的顯示編碼 若是不知道本身的編碼 能夠查看下本身的系統編碼
display charset = UTF-8 //本身服務器上面的顯示編碼 通常都是和unix charset查到的同樣
guest account = nobody //訪問的用戶範圍
dos charset = cp936 //Windows端顯示的編碼
create mask = 777 //賦予權限
directory mask = 777 //賦予權限
[resource] //這個是Windows上顯示的文件夾的名字(共享文件夾)
comment = All Printers //這個是共享文件夾的說明
path = /home/resource //共享文件夾的路徑
browseable = yes //是否讓全部的使用者都看到這個項目
guest ok = yes //是否讓來賓用戶訪問
writable = yes //是否爲能夠寫入
read only = no //是否設置爲只讀
四、而後經過testparm檢測下smb.conf配置文件的正確性rest
五、這個地方是會出錯的第一個地方:用testparm檢測配置文件的正確性,有可能會出現下面的錯誤日誌
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
解決方法:編輯配置文件 vim /etc/security/limits.conf 在裏面加入一行配置
root - nofile 16384
root指root用戶 若是想都全部用戶生效,把root替換爲 * 便可!我是設置的 * 下面是配置文件內容
六、建立共享目錄
mkdir /home/resource
七、給共享目錄賦予各類權限(這裏設置好了 就沒有權限問題了!)
chmod 777 /home/samba
chown 777 /home/samba
八、firewall加入端口
firewall-cmd --zone=public --add-port=137/udp --permanent
firewall-cmd --zone=public --add-port=138/udp --permanent
firewall-cmd --zone=public --add-port=139/tcp --permanent
firewall-cmd --zone=public --add-port=445/tcp --permanent
九、selinux這裏也是容易出現錯誤的地方
setsebool -P samba_export_all_rw on 添加這一條
十、啓動samba服務
systemctl start smb //啓動smb服務
systemctl stop smb //中止smb服務
systemctl restart smb //重啓smb服務
systemctl status smb //查看smb服務狀態
十一、over 如今能夠盡情的使用啦!