2017年2月13日 星期一

CentOS 7.2 安裝 SAMBA

# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)

SELinux 已關閉

安裝 samba
#yum install samba
samba-4.4.4-12.el7_3.x86_64

複製備份設定檔
#cp /etc/samba/smb.conf /etc/samba/smb.conf.backup

編輯設定檔
# vi /etc/samba/smb.conf

[global]
workgroup = OFFICE (改群組名稱)

以下加設定
browseable = yes
unix charset    = cp950 (中文BIG5)
dos charset     = cp950 (中文BIG5)

[public]
       comment = Public Stuff
       path = /backup/s/cnes
       public = yes
       writable = no (因為暫時掛載備份檔,所以設為唯讀)
       printable = no
       write list = +staff

啟動 NMB、SMB
# systemctl start nmb
# systemctl start smb

設定 NMB、SMB 開機自動啟動
systemctl enable  nmb
systemctl enable  smb

遇到的問題
  1. 無法連線,錯誤代碼:0x80004005、0x80070035、0x80070043,有的是因為防火牆未開,有的是因為 samba 設定檔使用了錯誤的參數。
  2. 防火牆問題:剛開始即使輸入 IP 也無法連線,後來關閉防火牆測試,才可以輸入帳密,確認防火牆問題後,重開防火牆,並開通 SAMBA 服務。
    1. 關閉防火牆
      # systemctl stop firewalld
    2. 開啟防火牆
      # systemctl start firewalld
    3. 暫時開通 samba 服務
      firewall-cmd --zone=public --add-service samba
    4. 永久開通 samba 服務
      firewall-cmd --zone=public --permanent --add-service samba 
    5. 暫時關掉 samba 服務
      firewall-cmd --zone=public --add-service samba
    6. 永久關掉 samba 服務
      firewall-cmd --zone=public --permanent --add-service samba
    7. 查看zone
      firewall-cmd --get-default-zone
    8. 查看此 zone 所開的服務
      firewall-cmd --zone=public --list-all
    9. 參考網頁:
      http://zmesinformation.blogspot.tw/2016/02/centos7-firewalld.html
  3. 錯誤參數的問題:
     "rlimit_max:... " 問題參考:http://blog.ilc.edu.tw/blog/blog/25793/post/78474/648901。舊版 SAMBA 參數有一些不能用在新版,不能全複製以前的參數。可用 testparm 檢查是否有錯誤的參數。否則明明對的帳密,仍然無法登入。
    1. 錯誤樣態:顯示參數 "display charset" 有問題。
      # testparm
      Load smb config files from /etc/samba/smb.conf
      rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
      Unknown parameter encountered: "display charset"
      Ignoring unknown parameter "display charset"

      Processing section "[public]"
      Loaded services file OK.
      Server role: ROLE_STANDALONE
      Press enter to see a dump of your service definitions
      ...
    2. 正確樣態
      # testparm
      Load smb config files from /etc/samba/smb.conf
      Processing section "[public]"
      Loaded services file OK.
      Server role: ROLE_STANDALONE
      Press enter to see a dump of your service definitions
      ...

2 則留言:

  1. 學長:
    沒有打算轉換編碼為 UTF-8 嗎?

    回覆刪除
    回覆
    1. 有機會跟你請教一下會有什麼影響?再來考慮什麼時候轉換。

      刪除