运行环境

系统版本:CentOS Linux release 7.3.1611

软件版本:Samba-4.6.2

硬件要求:无

安装过程

1、基础网络配置

配置一个静态IP,关闭防火墙、SeLinux

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0

2、安装YUM源,由EPEL提供

[root@localhost ~]# rpm -i https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

3、安装Samba

[root@localhost ~]# yum -y install samba

4、编辑配置文件

[root@localhost ~]# vi /etc/samba/smb.conf
#=全局配置=#
[global]
workgroup = SAMBA
#设置工作组或域名
netbios name = sambaserver
#设置一个NetBios名
security = user
#设置安全模式。Samba有三种安全模式用于用户身份验证:
# user :用户名/密码认证方式,需要本地创建一个用户名和密码
# share :匿名访问方式,不需要验证身份
# server:代理认证方式,使用其他Windows NT或Samba服务器来验证身份
# domain:域用户/密码认证方式,使用域控制器(PDC)来验证身份
passdb backend = tdbsam
#设置User模式下用户名和密码存储的方式:保持默认就好
#smbpasswd :使用“.sambpasswd”文件存储用户名和密码,默认在“/etc/samba”目录下创建
#tdbsam :使用“.tdb”文件存储用户名和密码,默认在“/etc/samba”目录下创建
#ldapsam :使用基于LDAP目录服务的方式进行身份认证,前提是需要建立LDAP服务,需要指定LDAP服务器的地址“passdb backend = ldapsam:ldap://LDAP server”
#printing = cups
#printcap name = cups
#load printers = yes
#cups options = raw
#共享打印机相关配置,我们可以注释他们
log file = /var/log/samba/samba.log
#设置日志文件路径
max log size = 50
#设置日志文件大小,单位为KB。当日志文件积累到指定大小时,会自动分割日志
max connections = 0
#设置最大客户端连接数,0表示不限制
hosts allow = 192.168.1.0/24
#访问控制,设置只允许哪些主机访问,可以是地址也可以是一个网段
username map = /etc/samba/smbusers
#开启Samba别名映射功能,可以把一个用户映射成一个别名,隐藏真实用户身份,增加安全性。只需要在这个文件中增加内容即可,书写格式:用户 = 别名
map to guest = bad user
#将所有Samba不能正确识别的用户都映射成“guset”来宾用户
guest account = nobody
#给来宾用户设置一个名字 #=创建一个共享=#
[guest]
#共享名
comment = guest
#描述信息
path = /home/guest
#共享目录位置
read only = yes
#设置为只读
guest ok = yes
#允许来宾用户访问 #=创建一个共享=#
[share]
#共享名
comment = share
#描述信息
path = /data-share
#共享目录
writable = yes
#是否允许被局域网内其他用户浏览到共享,是
read only = no
#用户对目录是否拥有只读权限。否
writable = yes
#用户对目录是否拥有可写权限。是
public = no
#是否允许所有人访问,否
valid users = tom
#那哪些人能够访问那,只允许用户“tom”访问,如果是一个用户组的话则“@tom”
write list = tom
#那哪些人能够对共享目录具有写入权限那,只允许用户“tom”写入,如果是一个用户组的话则“@tom”
create mask = 0755
#用户在上传文件到共享目录的文件权限。0777表示可读可写可执行

5、创建一个共享用户,创建共享用户的前提是该用户是系统用户

[root@localhost ~]# useradd -M -s /sbin/nologin tom    => 创建系统用户“tom”。“-M”表示不创建家目录。“-s /sbin/nologin”表示该用户不用于系统登录。
[root@localhost ~]# pdbedit -a -u tom => 创建共享用户“tom”
[root@localhost ~]# pdbedit -L => 查看所有共享用户
[root@localhost ~]# pdbedit -x tom => 删除一个共享用户

6、创建共享目录,并授权

[root@localhost ~]# mkdir /data-share
[root@localhost ~]# chown -R tom.tom /data-share
[root@localhost ~]# ll / |grep data-share
drwxr-xr-x. 2 tom tom 6 Mar 15 05:38 data-share

7、开启服务

[root@localhost ~]# systemctl start smb
[root@localhost ~]# systemctl start nmb
[root@localhost ~]# netstat -lnupt |grep :445
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 39363/smbd
[root@localhost ~]# netstat -lnupt |grep :137
udp 0 0 172.17.255.255:137 0.0.0.0:* 39379/nmbd

8、使用“testparm -v -s”可以查看Samba的所有配置

[root@localhost ~]#  testparm -v -s

9、使用Samba客户端访问共享目录,可能需要安装Samba-Client

[root@localhost ~]# yum -y install samba-client                                   => 安装Samba客户端
[root@localhost ~]# smbclient -U tom //192.168.1.177/share => 使用IP地址访问共享,后面接的是共享名哦,不是共享目录。
[root@localhost ~]# smbclient -U tom //sambaserver/share => 使用Netbios名访问共享
[root@localhost ~]# mount -o username=tom,password=tom //192.168.1.177/share /mnt => 将共享目录挂载到本地

安装Samba到CentOS(YUM)的更多相关文章

  1. Ejabberd2:安装和操作指南(centos yum 安装ejabberd)

    (1)首先安装EPEL Repository     ## RHEL/CentOS 6 32-Bit ##  # wget http://download.fedoraproject.org/pub/ ...

  2. [转载]centos下yum安装samba及配置

    centos下yum安装samba及配置 在我们使用 Windows 作为客户机的时候,通常有文件.打印共享的需求.作为Windows 网络功能之一,通常可以在 Windows 客户机之间通过Wind ...

  3. Centos 5.5下安装samba

    1.安装: Centos 5.5下安装samba,具体步骤如下: [root@bogon ~]# rpm -q samba Package samba is not installed [root@b ...

  4. Samba在CentOS下的图形化界面的安装

    第一步:构建yum仓库(在此用的是北交大的yum仓库) 打开目录/etc/yum.repos.d下的CentOS-Base.repo文件,此处是我自己建的yum仓库,修改里面的链接地址为北交大的镜像的 ...

  5. CentOS 6.3 安装 samba 共享(转)

    PHP环境在linux下,但是开发的时候用的是windows,于是我用了samba将linux的一个目录共享,然后在windows上做映射,这样就可以直接在windows下编辑linux上的文件了 首 ...

  6. Centos安装Samba共享服务器

    安装Samba 查看Samba是否已安装 1.# rpm -qa | grep samba

  7. centos yum 安装 mongodb 以及php扩展

    centos yum 安装 mongodb 以及php扩展 投稿:hebedich 字体:[增加 减小] 类型:转载 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用 ...

  8. yum-config-manager YUM安装遭遇: [Errno 256] No more mirrors to try CentOS yum之$releasever和$basearch

    YUM安装遭遇: [Errno 256] No more mirrors to try createrepo 有问题. CentOS yum之$releasever和$basearch分类: 操作系统 ...

  9. redhat centos yum源的安装

    redhat centos yum源的安装 1.除旧 #cd /etc/yum.repos.d #mv rhel-debuginfo.repo rhel-debuginfo.repo.bak 此处将其 ...

随机推荐

  1. 好用开源的C#快速开发平台

    NFine 是基于 C# 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展,让Web开发更迅速.简单.NFine是一套基于 ASP.NET ...

  2. java连接oracle数据库(转)

    在做导游通项目所用到 package org.javawo.test; import java.sql.Connection; import java.sql.DriverManager; /** * ...

  3. 原型模式故事链--new一个对象的过程

    上一个总标题:https://segmentfault.com/a/11...提问:你有对象了吗?答:没有.笨!new一个不就好了吗! 问题点:为什么我要理解new一个对象的过程?答:不理解这个过程, ...

  4. 【Android开发】控件外边框自定义

    1.在drawable里面新建自定义的资源文件shape <?xml version="1.0" encoding="utf-8"?> <sh ...

  5. vux+vue-cli3.0坑

    最近开发了项目使用了vue-cli3.0+vux搭建的项目,现在总结遇到的问题: 环境:github vux有关于vue-cli3.0以及vux已经搭建好的脚手架vux-cli3链接 一:如下报错 解 ...

  6. Make-learning

    Make学习笔记 make是工具,Makefile是指导make工作的文件,而CMake则是生成Makefile的工具 要点: 终极目标是Makefile里面的第一个规则目标 目标下面的命令必须接的是 ...

  7. css 让一行文字 字与字的隔开一点

     效果: css: letter-spacing: 5rpx; 我这是小程序. 单位自带.px  rem em这些,随自己需要带.

  8. redis在物理机部署模式下如何进行资源[cpu、网卡]隔离

    上周末晚上运营做直播,业务代码不规范,访问1个redis竟然把1台服务器的网卡打满了,这台服务器上的其他redis服务都受到了影响.之前没有做这方面的预案,当时又没有空闲的机器可以迁移,在当时一点办法 ...

  9. Spring 源码 (1)Spring IOC Bean 创建的整体流程

    Spring IOC 中涉及的重要接口 BeanDefinition Bean的描述信息,实现类包括 RootBeanDefinition 和 GenericBeanDefinition,Bean的描 ...

  10. HCIE笔记-第一节-网络的基本概念

    R&S= 路由交换 Datacom =数通 =数据通信 某个设备产生了数据之后,借助整体的网络到达目的地的过程. 网络历史 -- 数通为什么产生? 1946年:世界上第一台计算机诞生.军事 科 ...