搭建Samba服务器是为了实现Linux共享目录之后,在Windows可以直接访问该共享目录。

现在介绍如何在ubuntu 16.04系统中搭建Samba服务。

1、安装Samba服务

sudo apt install samba

  在安装过程中出现如下错误: 

          错误:1 http://mirrors.aliyun.com/ubuntu xenial-updates/main amd64 samba-libs amd64 2:4.3.11+dfsg-0ubuntu0.16.04.7
        404  Not Found [IP: 91.189.88.161 80]
        .....
        .....
        E: 有几个软件包无法下载,要不运行 apt-get update 或者加上 --fix-missing 的选项再试试?

  按照提示执行apt-get update

sudo apt-get update

  然后在重新安装。

2、修改配置文件

sudo vim  /etc/samba/smb.conf

  ubuntu的Samba配置相对于红帽的要稍微简单一点,直接在最后添加共享目录的属性就可以了。

  不用设置security的值,设置了反而容易出错。

  在文件的末尾直接添加以下内容

[need]      # Windows访问Samba服务器是显示目录名,顶格写
  comment = need share # 对该共享目录的描述,随便写
  browseable = yes # 共享目录是否可见,no不可见,yes或不写默认可见
  path = /share # 共享的目录路劲
  create mask = # 创建文件的默认权限
  directory mask = # 创建目录的默认权限
  valid users = tom # 指定登录的用户,该项不写,则默认对所有人可见
  force user = nobody # 指定的用户可以进行登录,其他用户没有权限登录,nobody不限制
  force group = nogroup # 同上,指定用户组
  public = yes # 是否对所有登录成功的用户可见
  writable = yes # 写权限,目录的权限也要许可
  available = yes # 同样是设置共享目录是否可见

  ubuntu是否需要登录有valid users这个参数决定,如果该参数不添加,则不需要登录。

  添加该参数并指定用户,则该用户需要登录。

3、重启Samba服务

sudo /etc/init.d/samba restart

  重启出现错误  

        [....] Restarting nmbd (via systemctl): nmbd.serviceJob for nmbd.service failed because the control process exited with error code. See "systemctl status nmbd.service" and "journalctl -xe" for details.
failed!

  错误原因:

    Samba Server 版本为 4.2 或以上不支持 security = share,可将其去掉或改为 security = user,也就是Samba server 4.以上的版本,对于Windows访问是需要登录还是直接进行访问,
       将不再是有security=share或者security= user决定,而是由后面的共享文件的属性决定。所以一般忽略security。
  

  解决办法:

    将security = share删除

4、创建用户

    sudo adduser tom
正在添加用户"tom"...
正在添加新组"tom" ()...
正在添加新用户"tom" () 到组"tom"...
创建主目录"/home/tom"...
正在从"/etc/skel"复制文件...
输入新的 UNIX 密码: <-- 用户登录密码,这个跟登录Samba的密码没有任何联系
重新输入新的 UNIX 密码:
passwd:已成功更新密码
正在改变 tom 的用户信息
请输入新值,或直接敲回车键以使用默认值
全名 []: tom
房间号码 []:
工作电话 []:
家庭电话 []:
其它 []:
这些信息是否正确? [Y/n] y

5、将用户添加到Samba服务器列表中

sudo smbpasswd -a tom   <-- 该用户必须存在
New SMB password: <-- 登录Samba服务的密码
Retype new SMB password:

  如果用户不存在则会提示以下错误:
     Failed to add entry for user xxxx
6、访问
    1) valid users = tom 该项没有
        Windows端: 'win' + R 输入"本机的IP" ,就可直接访问共享目录
  

  

  

2) valid users = tom 添加了该项
        Windows端: 'win' + R 输入"本机的IP" 访问共享目录时需要登录
        而且只有tom用户可以登录,其他用户就算是在Samba
        服务器的列表中,也是登录失败的。

  

  

  成功登录

  

  

3) 增加多用户登录
        valid users = tom,lily,xxx
        创建用户和添加到Samba服务器列表中参考步骤4和5
  那么这时候在这个列表中的用户都可以登录成功。

ubuntu 16.04 Samba服务器搭建的更多相关文章

  1. ubuntu 16.04 samba服务搭建

    一:安装 1. sudo apt-get install samba 有询问Yes的地方Yes就行. 无法安装samba 执行 sudo apt-get update 2.等待安装完成,进入配置文件目 ...

  2. 在ubuntu 16.04系统环境中搭建NAS(samba/iscsi/nfs)

    在ubuntu 16.04系统中搭建NAS环境 一.基本配置1:设置静态IPvi /etc/network/interfaces#iface ens32 inet dhcpiface ens32 in ...

  3. Ubuntu 16.04 Go环境搭建 Go环境+Sublime配置

    Ubuntu 16.04 Go环境搭建 Go环境+Sublime配置 1. 安装Go 下载地址https://golang.org/dl/ (需要翻下) 下载到类似go1.8.3.linux-amd6 ...

  4. ubuntu 16.04 samba 文件共享

    生成samba用户名密码修改配置文件重启samba服务使之生效 以前在ubuntu 14.04的时候,很方便的通过几行命令和一个GUI界面就可以配置好samba共享文件给windows了: Ubunt ...

  5. Ubuntu 16.04 samba相关配置

    samba是 SMB/CIFS网络协议的重新实现,它作为NFS的补充使得在Linux和Windows系统之间进行文件共享.打印更容易实现. 相关介绍: SAMBA套件: (1)samba:这个套件主要 ...

  6. Ubuntu 16.04 64位 搭建 node.js NodeJS 环境

    我的系统环境: Ubuntu 16.04 64位 本文内容亲测可用, 请放心食用 使用淘宝镜像 淘宝镜像官网是https://npm.taobao.org/ 使用淘宝镜像前请自行安装好 npm 和 n ...

  7. ubuntu 16.04 php5 环境搭建

    Ubuntu 16.04默认安装php7.0环境,但是php7目前兼容性并不是很好,如果自行安装php5需要清除php7的已安装包,否则会报错. 移除默认及已安装的PHP包 sudo dpkg -l ...

  8. linux ubuntu 11.04 samba 服务器设置

    安装 SAMBA 组件 sudo apt-get install samba smbfs smbclient   配置相关参数 sudo gedit /etc/samba/smb.conf 文件中相关 ...

  9. Ubuntu 16.04通过Magent搭建Memcached集群(转)

    一.下载Magent 官网:https://code.google.com/archive/p/memagent/downloads 离线版本:(链接: https://pan.baidu.com/s ...

随机推荐

  1. Java 打印一个心心

    package Day8_06; public class For { public static void main(String[] args) { System.out.println(&quo ...

  2. 多分类下的ROC曲线和AUC

    本文主要介绍一下多分类下的ROC曲线绘制和AUC计算,并以鸢尾花数据为例,简单用python进行一下说明.如果对ROC和AUC二分类下的概念不是很了解,可以先参考下这篇文章:http://blog.c ...

  3. Java-Runoob-面向对象:Java 多态

    ylbtech-Java-Runoob-面向对象:Java 多态 1.返回顶部 1. Java 多态 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操 ...

  4. mysql内置函数,在mysql里面利用str_to_date()把字符串转换为日期格式

    mysql内置函数,在mysql里面利用str_to_date()把字符串转换为日期格式 示例:分隔符一致,年月日要用%号 select str_to_date('2008-4-2 15:3:28', ...

  5. 【BZOJ】1926: [Sdoi2010]粟粟的书架(暴力+主席树)

    题目 传送门:QWQ 分析 两道题目 第一问暴力预处理 用$ a[i][j][k] $和$ s[i][j][k] $ 表示从$ (1,1) $ 到 $ (i,j) $ 这个矩形中比k大的数的个数和这些 ...

  6. Asp.net mvc validaterequest无效的问题

    在普通的asp.net下,可以通过在页面上注明 validateRequest=“false" 这个选项来关闭请求对注入攻击的验证,但在mvc下则不行.而且,在asp.net 4.0下,哪怕 ...

  7. 用 Sqlmap 识别 WAF

    命令: ┌─[root@sch01ar]─[~] └──╼ #sqlmap -u "http://www.sch01ar.com/" --identify-waf --batch ...

  8. php switch

    php switch switch用法类型与if,但是为了方便 不用写那么多个elseif.所以要判断 多个变量的时候我们可以使用switch <?php $email="admin& ...

  9. 直接用SQL语句把DBF导入SQLServer

    直接用SQL语句把DBF导入SQLServer   在SQLServer中执行 SELECT * into bmk FROM OpenDataSource( ’Microsoft.Jet.OLEDB. ...

  10. LVM 逻辑卷管理

    简介: LVM ( Logical Volume Manager ) 逻辑卷管理 一.创建 LV 1.首先在你的虚拟机上添加一块新的硬盘用来做实验. 2.安装 lvm : yum -y install ...