文档章节

Mint17/Ubuntu14.04 samba文件服务器搭建

大培哥
 大培哥
发布于 2015/10/25 15:45
字数 1677
阅读 170
收藏 1

一、简介

    Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。

二、搭建步骤

1、使用包管理器安装Samba服务器

sudo apt-get install samba

2、备份samba配置文件,避免错误配置,便于及时回退之前的状态

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

3.创建共享目录

注释:/home/share可以指定为一个合法的路径即可
sudo mkdir -p /home/share

4.修改配置文件

sudo vim /etc/samba/smb.conf

5、例如此时为所有的用户创建一个共享目录,此时在配置文件smb.conf最后添加如下:

[共享]
Commnet = “xxxxxx”                注释:该共享目录的描述
Path = “/home/share”              注释:设置共享目录为/home/share
Avaliable = yes/no                注释:设置共享目录是否可显示
Writable = yes/no                 注释:指定该目录缺省是否可写,也可以用readonly = no来设置可写
Browseable  = yes/no              注释:设置共享目录是否可显示

以下为附加选项:

Public yes/no                     注释:指明该共享资源是否能给游客账号访问

Valid users = zhaop_os            注释:samba账户名,这里是指此文件夹的合法用户为zhaop_os,若需要添加组,那么可以写成valid users = zhaopei_os,@group

Invalid users =XX                 注释:zengxs_os //指定不能使用的用户和组

Readlist users =                  注释:/指定能读取和写共享文件的组

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

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

ide 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         注释:# 指明能否删除共享资源里面已经被定义为只读的文件

6、创建samba用户

例如为配置文件中的users创建zhaop_os,执行以下两个步骤:

1.sudo useradd zhaop_os

2.sudo smbpasswd zhaop_os

7、重启samba服务

1. sudo testparm               注释:查看载入的samba配置文件的内容,检查是否出错
2. sudo service reload         注释:重新载入配置文件
3. sudo service restart        注释:重启samba服务

Add-ons:我的samba私有文件夹具体配置过程

mkdir -p /home/pri/zhaopei_os

增加配置文件内容如下:

【zhaop_os】
Commnet = “xxxxxx”                注释:该共享目录的描述
Path = “/home/pri/zhaopei_os”       注释:设置共享目录为/home/share
Avaliable = yes/no                注释:设置共享目录是否可显示
Writable = yes/no                 注释:指定该目录缺省是否可写,也可以用readonly = no来设置可写
Browseable  = yes/no
Public yes/no                     注释:指明该共享资源是否能给游客账号访问
Valid users = zhaop_os            注释:samba账户名,这里是指此文件夹的合法用户为zhaop_os,若需要添加组,那么可以写成valid users = zhaopei_os,@group

创建对应的关联samba用户

1.sudo useradd zhaop_os

2.sudo smbpasswd zhaop_os

常见question

1.win7访问Linux Samba的共享目录提示“登录失败:用户名或密码错误”解决方法;

解决方法:见链接http://blog.sina.com.cn/s/blog_72aace390100r042.html。

2.长时间连接后,出现失去连接的情况;

解决方法:根据日志分析。

三、搭建过程中的心得

  1. 便于管理用户账户和密码可以在/etc/samba目录下创建一个smbusers.

  2. 当客户端访问smb服务器的连接已经打开,此时服务器重启以后,客户端需要重启才能重新完成此次连接。

  3. windows在地址栏中输入//XXXXXX,最后出现访问拒绝的情况,在确认服务器配置无误并且用户名存在的情况下,可以修改windows的本地策略,可以参照一下http://blog.sina.com.cn/s/blog_7291f6ad0100xedv.html。

    本人搭建的过程远远不像自己写文章这么的一气呵成,尝试,failed,尝试,failed,四五个来回总算基本能使用和部署samba服务器了。人生也是如此,贵在尝试,贵在坚持,我想若干年后看看曾经写过的东西,回想一路的艰辛,那一刻该有多么美好。

© 著作权归作者所有

共有 人打赏支持
大培哥
粉丝 5
博文 31
码字总数 29758
作品 0
浦东
程序员
Samba服务器共享文件夹无网络访问权限

我的虚拟机中是Ubuntu14.04,主机是win7.虚拟机中搭建了Samba服务器,设置了共享目录,可是我在主机端去访问该共享目录的时候报错说没有网络访问权限,selinux是关闭的,防火墙也是关掉的。...

我爱c语言
2016/05/17
555
6
CentOS6.3在“系统”菜单是不是没有“服务器配置”啊?

想搭建文件服务器,看别人的资料,对比发现没有“服务器设置”“Samba”菜单 问题如题

南方一叶
2012/12/26
550
10
如何搭建一个像百度云一样的局域网文件服务器?

小公司的局域网内,在CentOS7的服务器上,能不能搭建一个像百度云那样基于WEB界面来上传下载文件的文件服务器? Samba/nfs/iscsi对于非IT专业同事来说都会被嫌弃 另外HFS也是略麻烦了...

rhinolt
2017/01/31
1K
3
ubuntu14.04/Mint17上Gitolite的搭建过程

一、安装git 服务器端 sudo apt-get install git-core 二、在服务器端安装gitolite服务器 sudo apt-get install gitolite Gitolite通过git来管理它的配置文件,我们将要创建一个操作系统的用...

大培哥
2015/11/10
0
0
RHEL7用samba作为文件服务器

参考文章:《linux就该这样学》 samba多用户、多组的访问 RedHat7下Samba服务搭建配置实例 需求:20多台装有win7系统的计算机访问,有可以共同访问的目录,有各自部门各自访问的目录 实验环境...

DEAST
2017/03/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

20.27 分发系统介绍~ 20.30 expect脚本传递参数

分发系统介绍分发系统-expect讲解(也就是一个分发的脚本)场景:业务越来越大,网站app,后端,编程语言是php,所以就需要配置lamp或者lnmp,最好还需要吧代码上传到服务器上;但是因...

洗香香
16分钟前
1
0
设计一个百万级的消息推送系统

前言 首先迟到的祝大家中秋快乐。 最近一周多没有更新了。其实我一直想憋一个大招,分享一些大家感兴趣的干货。 鉴于最近我个人的工作内容,于是利用这三天小长假憋了一个出来(其实是玩了两...

crossoverJie
22分钟前
1
0
软件架构:5种你应该知道的模式

Singleton(单例模式)、仓储模式(repository)、工厂模式(factory)、建造者模式(builder)、装饰模式(decorator)……大概每个上课听讲的程序员都不会陌生——软件的设计模式为我们提供...

好雨云帮
34分钟前
2
0
OSChina 周二乱弹 —— 这只是一笔金钱交易

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @小小编辑:推荐歌曲《暮春秋色》- 窦唯 / 译乐队 《暮春秋色》- 窦唯 / 译乐队 手机党少年们想听歌,请使劲儿戳(这里) @我没有抓狂:跨服聊...

小小编辑
46分钟前
405
14
df命令、du命令 、磁盘分区

9月25日任务 4.1 df命令 4.2 du命令 4.3/4.4 磁盘分区 4.1、命令 :df #磁盘空间使用情况 [root@zgxlinux-02 ~]# df 按字节显示 1000Byte=1KB 1000KB=1MB 1000MB=1GB ...

zgxlinux
54分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部