現有的 samba server 已經蠻舊的了,也好一陣子沒更新了。還在 2.2.7 的版本。

現在架起新的 Samba server,用的版本是 3.0.14。
差別真的蠻多的。突然覺得好像不會用了。

以前帳號要做修改,直接修改 /etc/samba/smbpasswd 即可。現在預設不是如此了。當然,我相信要繼續用 smbpasswd 也是可以的。不過,用新的也好啦。試試嘛。

現在,可用 pdbedit 來修改 SAM Database (Database is Samba Users)。

既然是要做轉換,總不能叫每個 user 再設一次密碼吧?
所以,也可以用 pdbedit 來做匯入的動作。

我舊的 server 上用的還是 smbpasswd。要將帳號匯入新的 Samba server 的 db 檔步驟如下:

1. 先修改新 server 上的 /etc/samba/smb.conf
找到一行:

passdb backend = tdbsam guest


修改為:

passdb backend = tdbsam guest smbpasswd



2. 將舊主機的 /etc/samba/smbpasswd 複製到新主機的 /etc/samba/smbpasswd

3. 修改 smbpasswd 將非一般使用者的帳號移除


4. 執行

pdbedit -i smbpasswd -e tdbsam



5. 檢查一下有沒有匯入(列出在 database 裡的 user accounts)

pdbedit -L



6. 再次修改 /etc/samba/smb.conf,將 smbpasswd 的支援移除

passdb backend = tdbsam guest smbpasswd


修改為:

passdb backend = tdbsam guest



7. 最後再重新啟動 samba 即可

參考來源:Account Information Databases