之前因為 Linux 主機掛點,要重新設定 Samba 時才發現新版 Samba 的帳號密碼檔有了不一樣的改變。




tdbsam 帳號管理


 新版的 Samba 預設已改用 tdbsam 取代 smbpasswd,但如果要繼續延用舊版 smbpasswd 也是可以。




 新版的 tdbsam 需要用 pdbedit 指令來管理帳號密碼。




 新增帳號與密碼


 # pdbedit -a user_name




 顯示該帳號明細


 # pdbedit -v user_name






使用舊版 smbpasswd 管理帳號


 修改 /etc/samba/smb.conf


 # vi /etc/samba/smb.conf


 passdb backend = smbpasswd <- 將 tdbsam 改為 smbpasswd


 encrypt passwords = yes


 smb passwd file = /etc/samba/smbpasswd <- 指定 smbpasswd 路徑




 重啟 Samba 服務


 # service smb restart


 # service nmb restart






將舊版 smbpasswd 匯入 tdbsam


 修改 /etc/samba/smb.conf


 # vi /etc/samba/smb.conf


 passdb backend = tdbsam smbpasswd <- 增加 smbpasswd




 重啟 Samba 服務


 # service smb restart


 # service nmb restart




 將 smbpasswd 匯入


 # pdbedit -i smbpasswd -e tdbsam




 檢查帳號是否有匯入


 # pdbedit -L




 重啟 Samba 服務


 # service smb restart


 # service nmb restart


 



 注意1:在 Samba 3.0.7 以後的版本,nmb 不會隨著 smb 啟動,nmb 服務與 NetBIOS Name 名稱解析有關,沒有啟動會造成 Windows 端找不到 Linux 主機。




 注意2:SELinux 若啟動,有可能會造成 samba 無法進入,若對 SELinux 不了解如何設定,建議將它關閉。