Ubuntu设置局域网Windows共享文件Samba

转载 2015年07月07日 20:51:49
如何设置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)。


注:该篇仅作参考使用,SAMBA的设置主要参考以前发表的文章

Ubuntu中使用samba来共享文件夹

思路方式:1,将共享文件夹的linux虚拟机做为samba 服务器,完成安装。                     2,设定共享文件夹。                     3, 其他机器(w...

Linux局域网文件分享系统Samba

上学的时候在学校机房见过FTP做的文件分享系统,服务器是Windows的,当时感觉功能真的很强大,不管是哪台机器都可以共享一个文件夹,后来自己在家里通过查阅各种资料,用自己的win7做FTP服务器,做...
  • jhq0113
  • jhq0113
  • 2015年03月09日 21:02
  • 1450

折腾树莓派(二)使用Samba进行局域网共享

“`
  • Meow323
  • Meow323
  • 2016年09月02日 01:15
  • 6207

“net usershare”返回错误 255

1 错误描述 youhaidong@youhaidong:~$ sudo nautilus (nautilus:4429): Gtk-WARNING **: Failed to registe...

ubuntu添加共享出错

早上设置一个共享目录share。 右键共享,之后系统自动安装软件samba,之后共享出错: “net usershare”返回错误 255:net usershare: cannot ...

增加samba用户提示Failed to add entry for user

1、首先在Ubuntu安装好samba,具体步骤为: 安装samba:sudo apt-get install samba 安装smbclient:sudo apt-get ins...

VirtualBox或VM Ware只能安装32位系统的解决办法

前言今天帮同学用VirtualBox安装虚拟机,出现了一个问题,在新建虚拟机,选择系统类别的时候,只能选择32位的系统。经过多番查阅资料,找到了解决之道,写这篇博文也是为了给后来者一些参考。This ...

ubuntu14.04与win7相互共享

samba是Linux系统上的一种文件共享协议,可以实现Windows系统访问Linux系统上的共享资源,现在介绍一下如何在Ubuntu 14.04上安装和配置samba,以及ubuntu上挂载win...

Ubuntu设置局域网Windows共享文件Samba

如何设置ubuntu 10.04,使局域网中的windows xp系统电脑可以共享ubuntu机器的文件?现在有局域网中的两台机器: 一、Ubuntu +windows xp 双系统,Ubuntu ...

ubuntu下配置samba服务与虚拟机下的win7实现文件共享(局域网也可共享)

1. 如果没有安装samba服务请安装 sudo apt-get install samba sudo apt-get install smbfs 2. 安装完成后,修改smb的配置文件,主要配置共享...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Ubuntu设置局域网Windows共享文件Samba
举报原因:
原因补充:

(最多只允许输入30个字)