阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux下Samba文件共享服务器配置

443次阅读
没有评论

共计 9044 个字符,预计需要花费 23 分钟才能阅读完成。

为了实现 Windows 主机与 Linux 服务器之间的资源共享,Linux 操作系统提供了 Samba 服务,Samba 服务为两种不同的操作系统架起了一座桥梁,使 Linux 系统和 Windows 系统之间能够实现互相通信,为广泛的 Linux 爱好者提供了极大方便。本文简要介绍如何在 Linux 操作系统上搭建 Samba 服务器和简单配置。

 

1、服务查询

默认情况下,Linux 系统在默认安装中已经安装了 Samba 服务包的一部分,为了对整个过程有一个完整的了解,在此先将这部分卸载掉。使用命令

rpm -qa | grep samba,默认情况下可以查询到两个已经存在的包:

samba-client-3.0.33-3.7.el5

samba-common-3.0.33-3.7.el5

 

2、卸载 Samba

用 rpm -e 将两个包卸载掉。对于 samba-common-3.0.33-3.7.el5,因为与其它 rpm 包之间存在依赖关系,所以必须加参数 - f 和 –nodeps,- f 是指强制,–nodeps 是指不检查依赖关系,具体完整命令为:

 rpm -e samba-common-3.0.33-3.7.el5 -f –nodeps

rpm -e samba-client-3.0.33-3.7.el5 -f –nodeps

 

3、安装 Samba4 和 samba4-client 

用以下命令安装:

 [root@linuxidc ~]# yum install samba4

[root@linuxidc ~]# yum install samba4-winbind

[root@linuxidc ~]# yum install samba4-client

[root@linuxidc ~]# yum install samba4-devel

安装完成后,使用命令 rpm -qa | grep samba 进行查询,发现搭建 samba 服务器所依赖的所有服务器都已经安装好了即可。

 

4、配置 smb.conf 文件

Samba 的配置文件一般就放在 /etc/samba 目录中,主配置文件名为smb.conf,文件中记录着大量的规则和共享信息,所以是 samba 服务非常重要的核心配置文件,完成 samba 服务器搭建的大部分主要配置都在该文件中进行。

Samba 服务器的工作原理是:客户端向 Samba 服务器发起请求,请求访问共享目录,Samba 服务器接收请求,查询 smb.conf 文件,查看共享目录是否存在,以及来访者的访问权限,如果来访者具有相应的权限,则允许客户端访问,最后将访问过程中系统的信息以及采集的用户访问行为信息存放在日志文件中。 

 

实例操作:如何通过 samba 共享 linux 文件目录:

 

第一步:修改配置文件

     首先备份一下 samba 的配置文件

cd /etc/samba

cp smb.conf smb.confbak

然后重新创建一个 smb.conf 文件

vim smb.conf

然后我们把这段写入 smb.conf 中 

[global]                                 #全局设置

    workgroup = WORKGROUP

    netbios name = MYSERVER
    server string = Samba Server TestServer
    security = share

[shared_name]       #共享名称 

 comment =           #注释信息

 path =              #共享目录的路径

 browseable =        #是否可以浏览(yes|no)

 read only =         #是否只读(yes|no)

 writable =          #是否可写(yes|no)

 write list = user1,user2,@group,+group      #定义可写列表,可以是用户或者组

 valid users =            #定义白名单

 invalid users =          #定义黑名单

 

注解:

[global]这段是全局配置,是必段写的。其中有如下的几行;

workgroup 就是 Windows 中显示的工作组;在这里我设置的是 LINUXSIR(用大写);
netbios name 就是在 Windows 中显示出来的计算机名;
server string 就是 Samba 服务器说明,可以自己来定义;这个不是什么重要的;
security 这是验证和登录方式,这里我们用了 share;验证方式有好多种,这是其中一种;另外一种常用的是 user 的验证方式;如果用 share 呢,就是不用设置用户和密码了;

[shared_name] 这个在 Windows 中显示出来是共享的目录;
path = 可以设置要共享的目录放在哪里;
writeable = 是否可写,这里我设置为可写;
browseable = 是否可以浏览,可以;可以浏览意味着,我们在工作组下能看到共享文件夹。如果您不想显示出来,那就设置为 browseable = no

guest ok = 匿名用户是否允许以 guest 身份是登录;

 

第二步:建立目录并设置好权限

 

 [root@linuxidc samba]# mkdir /share/test -pv  #递归建立目录

mkdir: 已创建目录“/share”

mkdir: 已创建目录“/share/test”

修改 samba 配置文件,在最后面增加以下几行:

 [root@linuxidc samba]# vim smb.conf 

 

[tools]

      comment = Share Testing

      path = /share/test

      public = yes

      writable = yes

 

[root@linuxidc samba]# testparm   #查看测试配置文档是否有问题

Load smb config files from /etc/samba/smb.conf

Processing section “[homes]”

Processing section “[printers]”

Processing section “[tools]”

Loaded services file OK.

Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

 

[global]

server string = Samba Server Version %v

passdb backend = tdbsam

log file = /var/log/samba/%m.log

max log size = 50

cups options = raw

 

[homes]

comment = Home Directories

read only = No

browseable = No

 

[printers]

comment = All Printers

path = /var/spool/samba

printable = Yes

browseable = No

 

[tools]

comment = Share Testing

path = /share/test

read only = No

guest ok = Yes

第三步:启动 smbd 和 nmbd 服务器;

[root@linuxidc samba]# service smb start   #启动 samba 服务

启动 SMB 服务: [确定]

启动 NMB 服务: [确定]

[root@linuxidc samba]# service nmb start  # 启动 nmbd 服务

启动 NMB 服务: [确定]

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2017-04/142614p2.htm

第四步:把相关需要访问共享的用户设置为 samba 服务用户

[root@linuxidc samba]# smbpasswd -a Hadoop #把系统已存在的用户 hadoop 设置为 samba 服务的用户

New SMB password:           # 设置访问共享的密码,此密码最好跟系统用户的登录密码不同

Retype new SMB password:

Added user hadoop.    # 添加成功

[root@linuxidc samba]#  ll

总计 52

-rw-r–r– 1 root root   20 2009-05-29 lmhosts

-rw——- 1 root root 4096 03-22 10:14 passdb.tdb     # 已经生成了密码数据库 文件

-rw——- 1 root root 8192 03-22 10:14 secrets.tdb    # 已经生成了安全密钥数据库 文件

-rw-r–r– 1 root root 9733 03-22 09:10 smb.back

-rw-r–r– 1 root root 9839 03-22 10:09 smb.conf

-rw-r–r– 1 root root   97 2009-05-29 smbusers

通过 windows 客户端访问测试结果如下,成功访问共享目录:

Linux 下 Samba 文件共享服务器配置

由于 tools 目录暂时没有给 hadoop 用户写权限,所以暂时无法再该目录下新建文件,需先修改 tools 目录的访问权限:

[root@johntest samba]# setfacl -m u:hadoop:rwx /share/test/  #给用户 hadoop 设置 facl 权限,使得对 test 目录具有读写执行权限。

 

扩展:

linux 系统如何访问 windows 共享文件

smbclient  #访问 windows 共享命令 

    -L NetBIOS_Name  #接主机名或 IP 地址

    -U username     #接访问共享的用户名

 

[root@linuxidc ~]# smbclient -L 10.109.134.247 -U j0701130

Enter j0701130’s password: 

Domain=[KS01-IT-521] OS=[Windows 10 Pro 10586] Server=[Windows 10 Pro 6.3]

 

Sharename       Type      Comment

———       —-      ——-

IPC$            IPC       远程 IPC

ISO             Disk      

Oracle          Disk      

工具          Disk      

session request to 10.109.134.247 failed (Called name not present)

session request to 10 failed (Called name not present)

session request to *SMBSERVER failed (Called name not present)

NetBIOS over TCP disabled — no workgroup available

[root@linuxidc ~]# smbclient //10.109.134.247/iso -U j0701130

# 以 j701130 用户访问 10.109.134.247 的共享目录 iso

Enter j0701130’s password: 

Domain=[KS01-IT-521] OS=[Windows 10 Pro 10586] Server=[Windows 10 Pro 6.3]

smb: \>      # 登录成功

 

[root@linuxidc ~]# yum install samba4-swat  #安装 web 界面控制 samb 服务器

Loaded plugins: fastestmirror, security

Loading mirror speeds from cached hostfile

Setting up Install Process

Resolving Dependencies

–> Running transaction check

—> Package samba4-swat.i686 0:4.0.0-58.el6.rc4 will be installed

–> Processing Dependency: xinetd for package: samba4-swat-4.0.0-58.el6.rc4.i686

–> Running transaction check

—> Package xinetd.i686 2:2.3.14-39.el6_4 will be installed

–> Finished Dependency Resolution

………

Installed:

  samba4-swat.i686 0:4.0.0-58.el6.rc4                                                                

Dependency Installed:

  xinetd.i686 2:2.3.14-39.el6_4  


[root@linuxidc ~]# service xinetd start

正在启动 xinetd:  [确定]

[root@linuxidc ~]# chkconfig swat on

[root@linuxidc ~]# chkconfig –list

……..

svnserve       0: 关闭 1: 关闭 2: 关闭 3: 关闭 4: 关闭 5: 关闭 6: 关闭

sysstat        0: 关闭 1: 启用 2: 启用 3: 启用 4: 启用 5: 启用 6: 关闭

udev-post      0: 关闭 1: 启用 2: 启用 3: 启用 4: 启用 5: 启用 6: 关闭

winbind        0: 关闭 1: 关闭 2: 关闭 3: 关闭 4: 关闭 5: 关闭 6: 关闭

xinetd         0: 关闭 1: 关闭 2: 关闭 3: 启用 4: 启用 5: 启用 6: 关闭

ypbind         0: 关闭 1: 关闭 2: 关闭 3: 关闭 4: 关闭 5: 关闭 6: 关闭

 

基于 xinetd 的服务:

chargen-dgram: 关闭

chargen-stream: 关闭

daytime-dgram: 关闭

daytime-stream: 关闭

discard-dgram: 关闭

discard-stream: 关闭

echo-dgram:    关闭

echo-stream:   关闭

rsync:         关闭

swat:          启用

tcpmux-server: 关闭

time-dgram:    关闭

time-stream:   关闭

[root@linuxidc ~]# service xinetd restart

停止 xinetd:[确定]

正在启动 xinetd:[确定]

配置文件路径为:/etc/xinetd.d/swat

Linux 下 Samba 文件共享服务器配置

通过客户端访问 web 界面的 samb 服务:

Linux 下 Samba 文件共享服务器配置

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-04/142614.htm

为了实现 Windows 主机与 Linux 服务器之间的资源共享,Linux 操作系统提供了 Samba 服务,Samba 服务为两种不同的操作系统架起了一座桥梁,使 Linux 系统和 Windows 系统之间能够实现互相通信,为广泛的 Linux 爱好者提供了极大方便。本文简要介绍如何在 Linux 操作系统上搭建 Samba 服务器和简单配置。

 

1、服务查询

默认情况下,Linux 系统在默认安装中已经安装了 Samba 服务包的一部分,为了对整个过程有一个完整的了解,在此先将这部分卸载掉。使用命令

rpm -qa | grep samba,默认情况下可以查询到两个已经存在的包:

samba-client-3.0.33-3.7.el5

samba-common-3.0.33-3.7.el5

 

2、卸载 Samba

用 rpm -e 将两个包卸载掉。对于 samba-common-3.0.33-3.7.el5,因为与其它 rpm 包之间存在依赖关系,所以必须加参数 - f 和 –nodeps,- f 是指强制,–nodeps 是指不检查依赖关系,具体完整命令为:

 rpm -e samba-common-3.0.33-3.7.el5 -f –nodeps

rpm -e samba-client-3.0.33-3.7.el5 -f –nodeps

 

3、安装 Samba4 和 samba4-client 

用以下命令安装:

 [root@linuxidc ~]# yum install samba4

[root@linuxidc ~]# yum install samba4-winbind

[root@linuxidc ~]# yum install samba4-client

[root@linuxidc ~]# yum install samba4-devel

安装完成后,使用命令 rpm -qa | grep samba 进行查询,发现搭建 samba 服务器所依赖的所有服务器都已经安装好了即可。

 

4、配置 smb.conf 文件

Samba 的配置文件一般就放在 /etc/samba 目录中,主配置文件名为smb.conf,文件中记录着大量的规则和共享信息,所以是 samba 服务非常重要的核心配置文件,完成 samba 服务器搭建的大部分主要配置都在该文件中进行。

Samba 服务器的工作原理是:客户端向 Samba 服务器发起请求,请求访问共享目录,Samba 服务器接收请求,查询 smb.conf 文件,查看共享目录是否存在,以及来访者的访问权限,如果来访者具有相应的权限,则允许客户端访问,最后将访问过程中系统的信息以及采集的用户访问行为信息存放在日志文件中。 

 

实例操作:如何通过 samba 共享 linux 文件目录:

 

第一步:修改配置文件

     首先备份一下 samba 的配置文件

cd /etc/samba

cp smb.conf smb.confbak

然后重新创建一个 smb.conf 文件

vim smb.conf

然后我们把这段写入 smb.conf 中 

[global]                                 #全局设置

    workgroup = WORKGROUP

    netbios name = MYSERVER
    server string = Samba Server TestServer
    security = share

[shared_name]       #共享名称 

 comment =           #注释信息

 path =              #共享目录的路径

 browseable =        #是否可以浏览(yes|no)

 read only =         #是否只读(yes|no)

 writable =          #是否可写(yes|no)

 write list = user1,user2,@group,+group      #定义可写列表,可以是用户或者组

 valid users =            #定义白名单

 invalid users =          #定义黑名单

 

注解:

[global]这段是全局配置,是必段写的。其中有如下的几行;

workgroup 就是 Windows 中显示的工作组;在这里我设置的是 LINUXSIR(用大写);
netbios name 就是在 Windows 中显示出来的计算机名;
server string 就是 Samba 服务器说明,可以自己来定义;这个不是什么重要的;
security 这是验证和登录方式,这里我们用了 share;验证方式有好多种,这是其中一种;另外一种常用的是 user 的验证方式;如果用 share 呢,就是不用设置用户和密码了;

[shared_name] 这个在 Windows 中显示出来是共享的目录;
path = 可以设置要共享的目录放在哪里;
writeable = 是否可写,这里我设置为可写;
browseable = 是否可以浏览,可以;可以浏览意味着,我们在工作组下能看到共享文件夹。如果您不想显示出来,那就设置为 browseable = no

guest ok = 匿名用户是否允许以 guest 身份是登录;

 

第二步:建立目录并设置好权限

 

 [root@linuxidc samba]# mkdir /share/test -pv  #递归建立目录

mkdir: 已创建目录“/share”

mkdir: 已创建目录“/share/test”

修改 samba 配置文件,在最后面增加以下几行:

 [root@linuxidc samba]# vim smb.conf 

 

[tools]

      comment = Share Testing

      path = /share/test

      public = yes

      writable = yes

 

[root@linuxidc samba]# testparm   #查看测试配置文档是否有问题

Load smb config files from /etc/samba/smb.conf

Processing section “[homes]”

Processing section “[printers]”

Processing section “[tools]”

Loaded services file OK.

Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

 

[global]

server string = Samba Server Version %v

passdb backend = tdbsam

log file = /var/log/samba/%m.log

max log size = 50

cups options = raw

 

[homes]

comment = Home Directories

read only = No

browseable = No

 

[printers]

comment = All Printers

path = /var/spool/samba

printable = Yes

browseable = No

 

[tools]

comment = Share Testing

path = /share/test

read only = No

guest ok = Yes

第三步:启动 smbd 和 nmbd 服务器;

[root@linuxidc samba]# service smb start   #启动 samba 服务

启动 SMB 服务: [确定]

启动 NMB 服务: [确定]

[root@linuxidc samba]# service nmb start  # 启动 nmbd 服务

启动 NMB 服务: [确定]

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2017-04/142614p2.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计9044字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7989102
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

  240 元左右!五盘位 NAS 主机,7 代 U 硬解 4K 稳如狗,拓展性碾压同价位 在 NA...
浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍 前言 在 AI 自动化快速发展的当下,浏览器早已不再只是...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

  免费无广告!这款跨平台 AI RSS 阅读器,拯救你的信息焦虑 在算法推荐主导信息流的时代,我们...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛 NAS 硬件 02:某鱼 6 张左右就可拿下 5 盘位的飞牛圣体 NAS 前言 大家好,我是星...
颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

  颠覆 AI 开发效率!开源工具一站式管控 30+ 大模型 ApiKey,秘钥付费 + 负载均衡全...
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...