配置
一、安裝smb
執行命令行:
#sudo apt-get install samba
#sudo apt-get install smbfs
二、添加準備共享的文件夾。
有如下三種配置共享文件夾的方法,任選一種方法即可:
1、在ubuntu中使用圖形界面的共享功能
按Alt+F2或打開終端,把執行運行程序界面叫出來。輸入如下命令:
shares-admin
2、以圖形界面管理SAMBA服務(system-config-samba)
你也可以使用簡單的圖形化管理界面來管理一些常用的功能,可以在終端運行如下命令來安裝圖形界面的管理程序。
sudo apt-get install system-config-samba安裝完成以後,就可以利用 系統-->系統管理-->samba,來啓動圖形界面的samba管理功能。
3、使用快速積易、圖形界面共享工具(nautilus-share)
無需修改任何設定,任何人都可以通過此工具快速簡易共享自家目錄下的文件夾,在ubuntu9.10中已經默認安裝,如還沒安裝此工具可在終端運行如下命令安裝。
sudo apt-get install nautilus-share
使用方法,進入自家目錄,你可以在要共享的文件夾上右健,選擇“共享選項”,在彈出的窗口勾選“共享此目錄”。
如果出現執行子進程“testparm”失敗(沒有該文件或目錄)的提示,這個時候你再執行下面的安裝命令就行了。
sudo apt-get install samba-common-bin
三、windows下匿名訪問Ubuntu共享文件
使用samba不進行任何設置時,winXP機器可以連接到Ubuntu機器但提示輸入用戶名密碼,此時不論輸入什麼都不能訪問,要實現匿名訪問需要做如下設置:
1) 修改配置文件smb.conf:
sudo nano /etc/samba/smb.conf
搜索"security = user"並改爲"security = share",再把這一行前面的註釋符"#"去掉。
2) 重啓samba:
#sudo /etc/init.d/samba restart
這樣在Windows下,可以匿名訪問文件夾了,但是隻讀,仍然無法寫入。即使在Ubuntu的GUI下去掉了只讀屬性也是如此。
可實現可讀寫,還要改文件夾的權限,命令如下:
chmod 777 /home/temp (此處爲文件夾路徑及名稱)
四、Windows下用用戶名和密碼訪問Ubuntu共享文件
下面我們來共享羣組可讀寫文件夾,假設你要共享的文件夾爲: /home/ray/share首先創建這個文件夾
代碼:
#mkdir /home/ray/share
#chmod 777 /home/ray/share
備份並編輯smb.conf允許網絡用戶訪問
代碼:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
sudo gedit /etc/samba/smb.conf
搜尋這一行文字
代碼:
; security = user
用下面這幾行取代
代碼:
security = user
username map = /etc/samba/smbusers
將下列幾行代碼添加到文件的最後面,假設允許訪問的用戶爲:newsfan。而文件夾的共享名爲 Share
代碼:
[Share]
comment = Shared Folder with username and password
path = /home/ray/share
public = yes
writable = yes
valid users = newsfan
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes
然後順便把這裏改一下,找到[global]把 workgroup = MSHOME 改成
代碼:
workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
後面的三行是爲了防止出現中文目錄亂碼的情況。自己看着辦吧。現在要添加newsfan這個網絡訪問帳戶。如果系統中當前沒有這個帳戶,那麼
代碼:
sudo useradd newsfan
要注意,上面只是增加了newsfan這個用戶,卻沒有給用戶賦予本機登錄密碼。所以這個用戶將只能從遠程訪問,不能從本機登錄。而且samba的登錄密碼可以和本機登錄密碼不一樣。現在要新增網絡使用者的帳號:
代碼:
#sudo smbpasswd -a newsfan
#sudo gedit /etc/samba/smbusers
在新建立的文件內加入下面這一行並保存
代碼:
newsfan = “network username”
如果將來需要更改newsfan的網絡訪問密碼,也用這個命令更改
代碼:
#sudo smbpasswd -a newsfan
刪除網絡使用者的帳號的命令把上面的 -a 改成 -x
代碼:
#sudo testparm
#sudo /etc/init.d/samba restart
問題
1、win7無法訪問samba服務器的解決:關閉ubuntu的防火牆 ufw disbale
2、在ubuntu中設置共享文件夾的時候可能會出現下面的錯誤:
解決辦法:
1.sudo apt-get install samba 如果沒有安裝smb,需此步
2.useradd 用戶
passwd 用戶 建立用戶和密碼
3./etc/samba/smbpasswd 建smb帳戶文件
sudo touch /etc/samba/smbpasswd
sudo smbpasswd -a 用戶
4.sudo vim /etc/samba/smb.conf 共享設置
#======================= Global Settings =======================
[global]
usershare owner only = False 添加此行
5 /etc/init.d/samba reatart
然後可以將需要共享的文件夾設置爲共享。
下面說說windows如何訪問這個文件夾:
window桌面,我的電腦 右鍵 Map network Drive 在裏面選擇ubuntu下的共享文件夾:比如//192.168.120.128/learn,然後在 我的電腦 下面就可以看到ubuntu裏面的共享文件了。