ubuntu 16.04 Samba服务器搭建
搭建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服务器搭建的更多相关文章
- ubuntu 16.04 samba服务搭建
一:安装 1. sudo apt-get install samba 有询问Yes的地方Yes就行. 无法安装samba 执行 sudo apt-get update 2.等待安装完成,进入配置文件目 ...
- 在ubuntu 16.04系统环境中搭建NAS(samba/iscsi/nfs)
在ubuntu 16.04系统中搭建NAS环境 一.基本配置1:设置静态IPvi /etc/network/interfaces#iface ens32 inet dhcpiface ens32 in ...
- Ubuntu 16.04 Go环境搭建 Go环境+Sublime配置
Ubuntu 16.04 Go环境搭建 Go环境+Sublime配置 1. 安装Go 下载地址https://golang.org/dl/ (需要翻下) 下载到类似go1.8.3.linux-amd6 ...
- ubuntu 16.04 samba 文件共享
生成samba用户名密码修改配置文件重启samba服务使之生效 以前在ubuntu 14.04的时候,很方便的通过几行命令和一个GUI界面就可以配置好samba共享文件给windows了: Ubunt ...
- Ubuntu 16.04 samba相关配置
samba是 SMB/CIFS网络协议的重新实现,它作为NFS的补充使得在Linux和Windows系统之间进行文件共享.打印更容易实现. 相关介绍: SAMBA套件: (1)samba:这个套件主要 ...
- Ubuntu 16.04 64位 搭建 node.js NodeJS 环境
我的系统环境: Ubuntu 16.04 64位 本文内容亲测可用, 请放心食用 使用淘宝镜像 淘宝镜像官网是https://npm.taobao.org/ 使用淘宝镜像前请自行安装好 npm 和 n ...
- ubuntu 16.04 php5 环境搭建
Ubuntu 16.04默认安装php7.0环境,但是php7目前兼容性并不是很好,如果自行安装php5需要清除php7的已安装包,否则会报错. 移除默认及已安装的PHP包 sudo dpkg -l ...
- linux ubuntu 11.04 samba 服务器设置
安装 SAMBA 组件 sudo apt-get install samba smbfs smbclient 配置相关参数 sudo gedit /etc/samba/smb.conf 文件中相关 ...
- Ubuntu 16.04通过Magent搭建Memcached集群(转)
一.下载Magent 官网:https://code.google.com/archive/p/memagent/downloads 离线版本:(链接: https://pan.baidu.com/s ...
随机推荐
- 以Linux下的测试程序说明递归型互斥量和普通互斥量的区别
先贴代码和测试结果 // Mutex.h: 对pthread的互斥量的RAII包装 #ifndef _MUTEX_H_ #define _MUTEX_H_ #include <stdio.h&g ...
- Mybatis数据的增删改查
数据: Student{id int,name String ,age int} 配置mybatis-config.xml <?xml version="1.0" encod ...
- html5 模块
1.<header> 网站头部标签2.<nav> 导航标签3.<article> 内容标签4.<section> 文章标签5.<aside> ...
- Hibernate学习7—Hibernate 映射继承
需求:学生有很多照片,分为生活照和工作照: 第一节:每个具体类对应一个表 Student.java: package com.cy.model; import java.util.Set; publi ...
- DOM的基本概念
1.DOM的基本概念 DOM是文档对象模型,这种模型为树模型:文档是指标签文档:对象是指文档中每个元素:模型是指抽象化的东西. 2.Window对象操作 一.属性和方法: 属性(值或者子对象): op ...
- mysql字符集和校对规则(Mysql校对集)
字符集的概念大家都清楚,校对规则很多人不了解,一般数据库开发中也用不到这个概念,mysql在这方便貌似很先进,大概介绍一下简要说明 字符集和校对规则 字符集是一套符号和编码.校对规则是在字符集内用于比 ...
- Java Web不能不懂的知识
1.传说中java的class文件可以一次编译到处运行,那么源代码采用GBK还是UTF-8会有影响么? 不会有影响. 因为Java源代码通过编译后,生成的class文件为字节码.它可以被看作是包含一个 ...
- UE4 代码总结
1.创建关卡类 1.创建C++类继承LevelScriptActor 2.打开关卡蓝图 Class Settings->Parent Class 选择你之前创建好的C++类 遇到的问题: 1.T ...
- Docker - 使用Swarm和compose部署服务(containers)
前言 在之前使用Docker的过程中,一直是用 Docker run 命令单独启动container后再加入Overlay网络的方式实现部署工作的. 这种方式看似直接,但是随着服务所包含的contai ...
- Shell教程快速入门
Shell即是一种命令语言,又是一种程序设计语言,使用者可以通过Shell访问操作系统的内核服务. Shell编程和java.python.C一样,只要一个能编写代码的文本编辑器和一个能解释执行的脚本 ...