一、安装Ubuntu samba服务器

$ sudo apt-get install samba

$ sudo apt-get install smbclient # Linux客户端测试用

二、创建samba配置文件

1. 备份原配置文件

$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

2. 创建共享目录

$ sudo mkdir -p /home/share

一般来说,该目录的权限为755,将其改为777之后,Owner之外的其他用户才有权限写入。

$ sudo chmod 777 /home/share

3. 修改配置文件

$ sudo vim /etc/samba/smb.conf

在smb.conf最后添加:

[share]

path = /home/share

browseable = yes

writable = yes

comment = smb share test

另外,总结一下常见的samba配置及说明:

[share] # 该共享的共享名

comment = smb share test # 该共享的备注

path = /home/share # 共享路径

allow hosts = host(subnet) # 设置该Samba服务器允许的工作组或者域

deny hosts = host(subnet) # 设置该Samba服务器拒绝的工作组或者域

available = yes|no # 设置该共享目录是否可用

browseable = yes|no # 设置该共享目录是否可显示

writable = yes|no # 指定了这个目录缺省是否可写,也可以用readonly = no来设置可写

public = yes|no # 指明该共享资源是否能给游客帐号访问,guest ok = yes其实和public = yes是一样的

user = user, @group # user设置所有可能使用该共享资源的用户,也可以用@group代表group这个组的所有成员,不同的项目之间用空格或者逗号隔开

valid users = user, @group # 指定能够使用该共享资源的用户和组

invalid users = user, @group # 指定不能够使用该共享资源的用户和组

read list = user, @group # 指定只能读取该共享资源的用户和组

write list = user, @group # 指定能读取和写该共享资源的用户和组

admin list = user, @group # 指定能管理该共享资源(包括读写和权限赋予等)的用户和组

hide dot files = yes|no # 指明是否像UNIX那样隐藏以“.”号开头的文件

create mode = 0755 # 指明新建立的文件的属性,一般是0755

directory mode = 0755 # 指明新建立的目录的属性,一般是0755

sync always = yes|no # 指明对该共享资源进行写操作后是否进行同步操作

short preserve case = yes|no # 指明是否区分文件名大小写

preserve case = yes|no # 指明是否保持大小写

case sensitive = yes|no # 指明是否对大小写敏感,一般选no,不然可能引起错误

mangle case = yes|no # 指明混合大小写

default case = upper|lower # 指明缺省的文件名是全部大写还是小写

force user = testuser # 强制把建立文件的属主是谁。如果我有一个目录,让guest可以写,那么guest就可以删除,如果我用force user= testuser强制建立文件的属主是testuser,同时限制create mask = 0755,这样guest就不能删除了

wide links = yes|no # 指明是否允许共享外符号连接,比如共享资源里面有个连接指向非共享资源里面的文件或者目录,如果设置wide links = no将使该连接不可用

max connections = 100 # 设定最大同时连接数

delete readonly = yes|no # 指明能否删除共享资源里面已经被定义为只读的文件

三、创建samba用户

注意,创建samba用户之前,必须先确保有一个同名的Linux用户,否则samba用户会创建失败。

$ sudo smbpasswd -a smbuser

解决办法:

这是因为没有加相应的系统账号,所以会提示Failed to add entry for user的错误,只需增加相应的系统账号test就可以了:
[root@ubuntu ~]# groupadd smbuser-g 6000
[root@ubuntu ~]# useradd smbuser-u 6000 -g 6000 -s /sbin/nologin -d /dev/null

四、重启samba服务

$ sudo service smbd restart

五. 客户端访问测试

1. Linux客户端访问测试

$ smbclient -L //localhost/share

2. Windows客户端访问测试

可以访问如下地址:

\\IP或者主机名\share

如果public = no,此时需要输入samba用户密码;如果public = yes,则作为nobody用户直接访问。

另外,在Windows客户端使用net use * /del /y这条命令可以清理访问缓存。

转自: http://blog.csdn.net/i_chips/article/details/19191957

Ubuntu16下配置支持Windows访问的samba共享的更多相关文章

  1. 【转】Ubuntu下配置支持Windows访问的samba共享

    原文网址:http://blog.csdn.net/i_chips/article/details/19191957 一.安装Ubuntu samba服务器 $ sudo apt-get instal ...

  2. Ubuntu下配置支持Windows访问的Samba共享

    一.安装Ubuntu samba服务器 $ sudo apt-get install samba $ sudo apt-get install smbclient # Linux客户端测试用 二.创建 ...

  3. windows Apache 环境下配置支持HTTPS的SSL证书

    windows Apache 环境下配置支持HTTPS的SSL证书 1.准备工作 1)在设置Apache + SSL之前, 需要做: 安装Apache, 下载安装Apache时请下载带有SSL版本的A ...

  4. iis6下配置支持.net4.0&发布网站[转]

    iis6配置支持.net4.0 在win2003操作系统上发布两个网站,首先配置iis: 1.下载 .net framework 4.0   差不多48MB 2.安装 3.打开iis: 开始=> ...

  5. CentOS 6下配置本地用户访问vsftpd并赋予写权限

    一.安装并测试可用性 1.安装命令 yum install vsftpd 2.配置防火墙,加入一行 -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT 在其它机测试 ...

  6. nginx使用ssl模块配置支持HTTPS访问

    默认情况下ssl模块并未被安装,如果要使用该模块则需要在编译nginx时指定–with-http_ssl_module参数. 需求: 做一个网站域名为 www.localhost.cn 要求通过htt ...

  7. nginx使用ssl模块配置支持HTTPS访问【解决ssl错误】

    默认情况下ssl模块并未被安装,如果要使用该模块则需要在编译nginx时指定–with-http_ssl_module参数. 需求:做一个网站域名为 www.localhost.cn 要求通过http ...

  8. <nginx+PHP>nginx环境下配置支持php7

    [root@redhat7 ~]# wget http://am1.php.net/get/php-7.1.2.tar.gz/from/this/mirror [root@redhat7 ~]# ta ...

  9. nginx使用ssl模块配置支持HTTPS访问,腾讯云申请免费证书

    开始我尝试用 let's encrypt 让http 变 https 官方:https://github.com/certbot/certbot 参考:https://www.cnblogs.com/ ...

随机推荐

  1. [视频]K8飞刀 Discuz csrf Exp教程

    [视频]K8飞刀 一键构造Discuz csrf Exp教程 链接:https://pan.baidu.com/s/1tVseP_ZBneKpXQueIncPcA 提取码:6qnh

  2. websphere静态文件转发出错问题 SimpleFileServlet

    ERROR DESCRIPTION: Using a RequestDispatcher to explicitly forward to the WebContainer's SimpleFileS ...

  3. .net core使用NLog+Elasticsearch记录日志

    在微服务或分布式系统中,如果将日志作为文件输出,查看系统日志将非常不便:如果将日志保存到数据库中,又不能进行全文搜索.在这里我们将日志输出到ElasticSearch中,借助Kibana再查找日志. ...

  4. Oracle 创建表并设置主键自增

    创建数据库 CREATE TABLE STUDENT(ID NUMBER PRIMARY KEY, NAME VARCHAR(200) NOT NULL, SEX VARCHAR(200), CREA ...

  5. 一个电脑的重装到java开发环境安装配置的全过程

    刚拿到一台别人用过的电脑.看着c盘爆满,而且用了还是windows7操作系统,强迫症发作马上就准备重装系统. 之前换固态使用wepe制作U盘启动盘装系统的步骤和过程全部忘记的,贼尴尬. 同事都看不过眼 ...

  6. 未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\106f9ae8\cc0e1169\App_global.asax.haz99mum.dll”--“拒绝访问。 ”

    在本地开发环境没问题,但是发布到服务器出现:未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Fil ...

  7. Modifying namespace in XML document programmatically

    Modifying namespace in XML document programmatically static XElement stripNS(XElement root) { return ...

  8. 手撕coreML之yolov2 object detection物体检测(含源代码)

    一些闲话: 前面我有篇博客 https://www.cnblogs.com/riddick/p/10434339.html ,大致说了下如何将pytorch训练的.pth模型转换为mlmodel,部署 ...

  9. C# 元数据描述

    元数据概述:元数据是一种二进制信息,用以对存储在公共语言运行库可移植可执行文件 (PE) 文件或存储在内存中的程序进行描述.将您的代码编译为 PE 文件时,便会将元数据插入到该文件的一部分中,而将代码 ...

  10. [引]ionic framework 相关网站

    http://www.w3uu.com/intro/mobile/ionic2-tutorial.html  ionic2中文教程 https://beta.ionicframework.com/do ...