Ubuntu設置局域網Windows共享文件Samba

Ubuntu設置局域網Windows共享文件Samba

 
如何設置ubuntu 10.04,使局域網中的windows xp系統電腦可以共享ubuntu機器的文件?現在有局域網中的兩臺機器:
一、Ubuntu +windows xp 雙系統,Ubuntu 10.04(wubi安裝)以自動掛載windows下分區的形式運行電腦。
二、局域網中另外一臺Windows xp或win 7系統電腦。
也就是說機器二需要共享機器一Ubuntu系統下的文件(可能是雙系統掛載windows系統下的文件)。我們可以安裝Samba來實現這些文件或文件夾的共享。
Samba 安裝
選擇ubuntu系統下(或ubuntu掛載的windows 系統中)需要共享的文件夾,右鍵點擊共享選項Share Options,如果沒有安裝Samba等共享服務網,會自動提示沒有安裝共享服務(sharing service is not installed),點擊Install service安裝samba,按照提示一步步進行安裝就行了,如下圖所示:
ubuntu 文件共享
文件共享Samba 安裝
ubuntu 文件共享下載

當然也可以用終端命令安裝samba:sudo apt-get install samba

Samba配置文件smb.conf

Ubuntu 共享服務Samba安裝完畢,勾選Share this folder和Guess Access(for people without a user account)選項設置共win局域網匿名用戶訪問該共享文件。這時會出現如下錯誤提示:

'net usershare' returned error 255: net usershare add: cannot share path /media/disk6/ShareFiles as we are restricted to only sharing directories we own.
Ask the administrator to add the line "usershare owner only = false"
to the [global] section of the smb.conf to allow this.

根據提示我們需要配置一下samba的配置文件:


sudo gedit /etc/samba/smb.conf

在配置文件中找到usershare allow guests = yes,在後面一行添加 usershare owner only = false,設置後退出或重啓ubuntu賬戶之後,局域網中的windows 電腦即可訪問該共享文件。

如果需要局域網用戶可以寫入或刪除共享文件夾中的文件或目錄,則還要勾選Allow others to create and delete files in this folder。勾選後點擊Create Share後會出現如下提示:


Nautilus needs to add some permissions to your folder "ShareFiles" in order to share it。
The folder "ShareFiles" needs the following extra permissions for sharing to work:
- write permission by others
Do you want Nautilus to add these permissions to the folder automatically?http://farlee.info/

ubuntu 文件共享權限問題
也就是該文件設置爲允許局域網用戶創建和刪除共享文件夾中的文件的話,需要該目錄有other用戶的777創建刪除權限。點擊Add the permissions automatically 一般情況下可以自動修改權限併成功實現局域網匿名用戶對共享文件的讀寫。

如果需要共享的文件是ubuntu當前用戶沒有權限執行權限修改操作的文件或目錄,比如root屬主的只讀文件,或者ubuntu 雙系統掛載windows分區下的文件。那麼在點擊Add the permissions automatically會出現錯誤提示:

You do not have permission to create a usershare, details: permissions deny

比如我可以設置共享ubuntu 用戶home目錄下的文件的讀寫共享權限,但是在設置ubuntu 掛載windows分區下的文件時就遇到了這個問題。原因在於掛載分區的權限問題,即使是切換到root賬戶更改文件的創建和刪除權限,雖然可以設置 create and delete,但還是無法實現局域網用戶對該掛載分區下的共享文件的創建和刪除功能。

這時首先想到的沒有正確配置Samba的配置文件,比如設置workgroup = WORKGROUP、security = user、comment = 、path = 、browseable = no、create mask = 0600、directory mask = 0700、read only = yes、guest ok = yes、http://farlee.info、share modes = no等等。但是爲什麼沒有更改samba配置文件的默認選項時,Ubuntu系統下的非windows 掛載分區的文件可以在共享文件夾中創建和刪除?

最後參考了關於掛載windows分區的權限的問題這篇文章的介紹,才明白原因不在於samba配置文件smba.conf,而在於設置了ubuntu開機自動掛載windows分區,因爲自動掛載設置了umask = 002這個用戶權限設置。修改掛載文件fstab,sudo gedit /etc/fstab


/dev/sda5 /media/disk5 vfat user,auto,umask=002,gid=1000,utf8 0 0

講umask=002改爲umask=000即可。
修改完成之後記得要重啓ubuntu 系統,文件共享設置才能生效:sudo reboot

ubuntu 設置文件共享密碼訪問

編輯samba配置文件設置必須以用戶方式訪問共享文件:sudo vi /etc/samba/smb.conf,將; security = user改爲:


security = user
username map = /etc/samba/smbusers

同時設置共享文件路徑,在最後加上(設置共享文件夾路徑path,網絡登錄用戶名valid users):


[ShareFiles]
comment = Shared Folder require password
path = /home/shareuser/share
public = yes
writable = yes
valid users = shareuser
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes

添加該用戶並設置samba密碼:


sudo useradd shareuser      添加用戶
sudo smbpasswd -a shareuser      設置訪問共享文件密碼/修改網絡登錄訪問密碼
sudo gedit /etc/samba/smbusers   加入 shareuser = "network username"
sudo smbpasswd -x shareuser      刪除網絡共享用戶

設置完畢重啓。

ubuntu 文件共享測試

設置完畢可以在自己的電腦上測試一下其他局域網電腦是否確實具有訪問,和創建刪除共享文件的權限。
打開文件瀏覽器,使用Ctrl+l切換出地址欄,在地址欄輸入smb://192.168.1.xxx/sharefiles/,即可在自己電腦上測試是 否可以在共享目錄中寫入文件。使用firefox瀏覽器輸入smb://192.168.1.xxx/可測試是否可訪問(browserable)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章