ubuntu 16.04 Samba伺服器搭建,ubuntu16.04
搭建Samba伺服器是為了實現Linux共用目錄之後,在Windows可以直接存取該共用目錄。
現在介紹如何在ubuntu 16.04系統中搭建Samba服務。
1、安裝Samba服務
sudo apt install samba
在安裝過程中出現如下錯誤:
錯誤:1 http://mirrors.aliyun.com/ubuntu xenial-updates/main amd64 samba-libs amd64 2:4.3.11+dfsg-0ubuntu0.16.04.7
404 Not Found [IP: 91.189.88.161 80]
.....
.....
E: 有幾個軟體包無法下載,要不運行 apt-get update 或者加上 --fix-missing 的選項再試試?
按照提示執行apt-get update
sudo apt-get update
然後在重新安裝。
2、修改設定檔
sudo vim /etc/samba/smb.conf
ubuntu的Samba配置相對於紅帽的要稍微簡單一點,直接在最後添加共用目錄的屬性就可以了。
不用設定security的值,設定了反而容易出錯。
在檔案的末尾直接添加以下內容
[need] # Windows訪問Samba伺服器是顯示目錄名,頂格寫 comment = need share # 對該共用目錄的描述,隨便寫 browseable = yes # 共用目錄是否可見,no不可見,yes或不寫預設可見 path = /share # 共用的目錄路勁 create mask = 0777 # 建立檔案的預設許可權 directory mask = 0777 # 建立目錄的預設許可權 valid users = tom # 指定登入的使用者,該項不寫,則預設對所有人可見 force user = nobody # 指定的使用者可以進行登入,其他使用者沒有許可權登入,nobody不限制 force group = nogroup # 同上,指定使用者組 public = yes # 是否對所有登入成功的使用者可見 writable = yes # 寫入權限,目錄的許可權也要許可 available = yes # 同樣是設定共用目錄是否可見
ubuntu是否需要登入有valid users這個參數決定,如果該參數不添加,則不需要登入。
添加該參數並指定使用者,則該使用者需要登入。
3、重啟Samba服務
sudo /etc/init.d/samba restart
重啟出現錯誤
[....] Restarting nmbd (via systemctl): nmbd.serviceJob for nmbd.service failed because the control process exited with error code. See "systemctl status nmbd.service" and "journalctl -xe" for details. failed!
錯誤原因:
Samba Server 版本為 4.2 或以上不支援 security = share,可將其去掉或改為 security = user,也就是Samba server 4.以上的版本,對於Windows訪問是需要登入還是直接進行訪問,
將不再是有security=share或者security= user決定,而是由後面的共用檔案的屬性決定。所以一般忽略security。
解決辦法:
將security = share刪除
4、建立使用者
sudo adduser tom 正在添加使用者"tom"... 正在添加新組"tom" (1001)... 正在添加新使用者"tom" (1001) 到組"tom"... 建立主目錄"/home/tom"... 正在從"/etc/skel"複製檔案... 輸入新的 UNIX 密碼: <-- 使用者登入密碼,這個跟登入Samba的密碼沒有任何聯絡 重新輸入新的 UNIX 密碼: passwd:已成功更新密碼 正在改變 tom 的使用者資訊 請輸入新值,或直接敲斷行符號鍵以使用預設值 全名 []: tom 房間號碼 []: 公司電話 []: 家庭電話 []: 其它 []: 這些資訊是否正確? [Y/n] y
5、將使用者添加到Samba伺服器列表中
sudo smbpasswd -a tom <-- 該使用者必須存在New SMB password: <-- 登入Samba服務的密碼Retype new SMB password:
如果使用者不存在則會提示以下錯誤:
Failed to add entry for user xxxx
6、訪問
1) valid users = tom 該項沒有
Windows端: 'win' + R 輸入"原生IP" ,就可直接存取共用目錄
2) valid users = tom 添加了該項
Windows端: 'win' + R 輸入"原生IP" 訪問共用目錄時需要登入
而且只有tom使用者可以登入,其他使用者就算是在Samba
伺服器的列表中,也是登入失敗的。
成功登入
3) 增加多使用者登入
valid users = tom,lily,xxx
建立使用者和添加到Samba伺服器列表中參考步驟4和5
那麼這時候在這個列表中的使用者都可以登入成功。