Ubuntu下配置samba服務器
一.samba的安裝:
sudo apt-get insall samba // (sudo get temp root auth)
sudo apt-get install smbfs
二. 創建共享目錄:
mkdir /home/john/share
sudochmod 777 /home/john/share
說明:john為你的ubuntu的用戶名
share你可以隨便起個名字做為共享文件夾
三.創建Samba配置文件:
1. 保存現有的配置文件
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
2.修改現配置文件
sudo gedit /etc/samba/smb.conf
在smb.conf最后添加
[share]
path = /home/john/share
available = yes
browseable = yes
public = yes
writable = yes
valid users = myname
create mask = 0700
directory mask =0700
force user =nobody
force group = nogroup
說明:valid users = myname 這個myname是自己起的,后面在添加用戶名時就是添加的這個
另外這個[share]名字也是可以隨便起的,這個是你在windows下訪問時顯示的名字,
在windows下 \\162.168.160.11\share就可以訪問linux下/home/god/code目錄下的內容了
其中162.168.160.11是你linux的IP地址,用ifconfig就可以查看到
然后順便把這里改一下,找到[global]把 workgroup = MSHOME改成 :(注意,這里的WORKGROUP是
共享中的工作組名稱) 代碼:(如果沒有也可加上去)
workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
后面的三行是為了防止出現中文目錄亂碼的情況。
四.創建samba帳戶
現在要添加myname這個網絡訪問帳戶。如果系統中當前沒有這個帳戶(也可以用系統中
己存在的賬戶如root,god),那么代碼:
sudouseradd myname
上面只是增加了myname這個系統用戶,卻沒有給用戶賦予本機登錄密碼。所以這個用戶將只
能從遠程訪問,不能從本機登錄。而且samba的登錄密碼可以和本機登錄密碼不一樣。這個你可以在重啟
機器時看到這個你添加的用戶,但是你卻用它登陸不了系統,因為沒有賦予本機登錄密碼。
sudo touch /etc/samba/smbpasswd
sudo smbpasswd -amyname
(如果你直接用系統中的賬號,這里myname就是你系統中的賬戶即可)
然后會要求你輸入samba帳戶的密碼
這個密碼不是開機登錄時候用的,是你要訪問WIN共享文件或者WIN共享文件訪問你的時候要填的密碼
現在要新增網絡使用者的帳號:
sudo gedit /etc/samba/smbusers
在新建立的文件內加入下面這一行并保存 代碼:
myname= “networkusername”
[如果沒有第四步,當你登錄時會提示session setup failed: NT_STATUS_LOGON_FAILURE]
刪除網絡使用者的帳號的命令把上面的 -a 改成 -x 即:sudo smbpasswd -x myname
五.重啟samba服務器
sudo testparm
驗證一下配置參數有沒有問題,如果有問題在回去修改
sudo /etc/init.d/samba restart
六. 測試
smbclient -L //localhost/share 或者
smbclient -L \\127.0.0.1 -U myname //這時輸入的密碼就是你剛才設置的samba密碼
七,使用
可以到windows下輸入ip使用了,在文件夾處輸入 "\\" + "Ubuntu機器的ip或主機名" + "\\" + "share"
我的即為:\\162.168.160.11\share
(share就是剛才smb.conf中的[share])
第一次進入時要輸入用戶名和密碼,這個就是你在第四步中設置的用戶名和密碼