本文环境:CentOS 7

简介

在UNIX-like之间共享文件系统主要是通过NFS实现的,而Windows之间共享文件系统主要是通过基于NetBIOS的网上邻居实现的,1984年Andrew Tridgell博士通过逆向工程技术研究出SMB(Server Message Block),一项能在UNIX和DOS之间提供文件系统共享的技术,Samba和CIFS都是SMB的一种实现,而Samba是用于UNIX-like的一项开源软件,而CIFS是微软实现SMB的一种版本,使用Samba协议,那么就可以实现UNIX-like与Windows之间共享文件系统了。

正如NFS基于RPC协议,Samba也基于NetBIOS(Network BIOS)协议。

Samba基本配置

1.安装

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

2.配置主配置文件

主配置文件在/etc/Samba/smb.conf,默认会有如下四个配置,

[global]服务器的全局配置,服务器的基本信息

[homes]特殊配置项,代表每个登入用户的个人目录(家目录)

[printers]特殊配置项,打印机的全局配置信息

[print$]是单个打印机的配置信息,如[print0]表示第一台打印机的配置

现在我们写入一条自己的配置项,用于共享/tmp/share目录(自行创建此目录,并把权 限改为777),

[myshare]

comment = My Share #此配置项的说明性描述

path = /tmp/share #共享目录

writable=yes #是否可写,也可以是read only=no

关闭防火墙和SELinux,然后启动服务

[root@localhost ~]# systemctl stop firewalld

[root@localhost ~]# setenforce 0

[root@localhost ~]# systemctl start smb

添加Samba用户,先使用useradd创建一个用户,另外,pdbedit -L可以查看现有Samba 用户,pdbedit -Lv查看详细信息

[root@localhost ~]# useradd smbtest

useradd: user 'smbtest' already exists

[root@localhost ~]# smbpasswd -a smbtest

New SMB password:

Retype new SMB password:

Added user smbtest.

[root@localhost ~]# pdbedit -L

smbtest:1001:

测试,在Windows使用运行,在其中输入服务器的\\+IP地址:

输入用户名和密码:

登入成功:

可以看出myshare就是我们创建的共享目录,而右侧的smbtest就是[homes]这个特殊字 段自动创建的登入用户的家目录。

新建文件:

能成功创建文件说明本次配置成功!

扩展:

guest ok=yes 或 public=yes

设置允许匿名用户登入,如果使用匿名用户登入,将自动映射为nobody用户

browseable=no

设置不可浏览,只能通过IP+此目录名进行浏览

invalid users=user1 或 invalid users=user1,@userss

设置黑名单,@用于设置一个组,可以用+代替,相反,valid users用于设置白名单

read only=yes 或 writeable=yes 或 writable=yes

都用于设置可写,其中后两个是第一个的别名

write list=@huu

表示除了huu组,其他人都不能写

在Windows中打开cmd,输入“net use”查看当前映射的smb驱动器,输入“smb use * /del”将它们删除。

更多信息请“man smb.conf”,每个选择后面的G表示此选项用于[global],而S表示用 于其他配置项。

Samba基础配置的更多相关文章

  1. LDAP + Samba 安装配置流程

    LDAP + Samba 安装配置 基础环境:Ubuntu18.04 安装samba root@cky:~# apt install samba smbldap-tools -y 查看版本 root@ ...

  2. StackExchange.Redis帮助类解决方案RedisRepository封装(基础配置)

    本文版权归博客园和作者吴双本人共同所有,转载和爬虫,请注明原文地址.http://www.cnblogs.com/tdws/p/5815735.html 写在前面 这不是教程,分享而已,也欢迎园友们多 ...

  3. Samba快速配置

    Samba是linux,unix,windows之间进行交互操作的软件组件,Sanma是基于GPL协议的自由开源软件. 快速配置samba文件服务器 1.关闭防火墙和SELinux [root@cen ...

  4. Hibernate 基础配置及常用功能(三)

    本章重点讲述Hibernate对象的三种状态以及如何配置二级缓存 有关Hibernate的三种状态如何相互转换网上都能查到,官方文档描述的也比较详细.这里主要是针对几个重点方法做代码演示. 一.状态转 ...

  5. Samba安装配置

    Samba简介 Samba官网:http://www.samba.orgSMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不 ...

  6. Samba网络配置

    Samba网络配置 操作环境 ubuntu14.04 1. 更新Linux源列表 sudo apt-get update 2. 安装Samba服务 sudo apt-get install samba ...

  7. Emacs学习心得之 基础配置

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Emacs学习心得之 基础配置 1.前言2.基础配置 一.前言 本篇博文记录了Emacs的一 ...

  8. nginx 的基础配置[转]

    nginx 的基础配置 分类: 工具软件2013-11-13 23:26 11人阅读 评论(0) 收藏 举报   目录(?)[-] 管理配置文件 全局配置 虚拟机server配置 location配置 ...

  9. Linux之Samba的配置

    Samba的配置   对于linux与windows共享,和平共处,我们可以用Samba软件 Samba是一套免费的开源软件,可以在linux或其他类unix操作系统上实现windows域控制器,文件 ...

随机推荐

  1. C#数据采集用到的几个方法

    这两天在做数据采集,因此整理了下数据采集要用到的一些方法.因为我采集的数据比较简单,所以没有用到框架.比较有名的两个框架 HtmlAgilityPack 和 Jumony,感兴趣的可以研究下.当然,火 ...

  2. 默认值操作符(Freemarker的空值处理)

    默认值操作符: 使用形式例如: userName!default_expr 或 userName! 或 (userName)!default_expr 或 (userName)! 这个操作符允许你为可 ...

  3. python(一) jupyter 安裝

    copy from https://jupyter.org/install Getting started with JupyterLab Installation JupyterLab can be ...

  4. Linux系统学习 十一、DHCP服务器—相关文件、配置文件、服务器配置

    2.DHCP服务器相关文件 安装SHCP服务器 yum install dhcp 对应的端口 端口号: ipv4 udp67.udp68(不推荐改端口) ipv6 udp546.udp547(暂时还没 ...

  5. 信号处理函数陷阱:调用malloc导致死锁[转]

    概览 因malloc是加锁的,上网了解的相关信息,额外了解到信号处理规范使用,mark 正文 在执行malloc的过程中,跳转到了信号处理函数中.而信号处理函数在调用某个系统api时,内部又调用了ma ...

  6. spring data JPA entityManager查询 并将查询到的值转为实体对象

    spring data JPA entityManager查询 并将查询到的值转为实体对象 . https://blog.csdn.net/qq_34791233/article/details/81 ...

  7. jquery dialog的一些坑

    jquery dialog工具可以方便的生成一个弹出框,但是在一些需要多个弹出框的应用场景上会有一些bug 具体场景: 当使用过一次模态框之后,使用另外的一个模态框时,已经消失不见的模态框会重新出来 ...

  8. xamarin调试android部署到模拟器错误记录:Deployment failed Mono.AndroidTools.InstallFailedException: Unexpected install output: Error: Could not access the Package Manager. Is the system running?

    问题记录: 1.生成 ok. 2.昨天也是能部署到模拟器的. 但是今天部署的时候就报了这样的一个错误 Deployment failed Mono.AndroidTools.InstallFailed ...

  9. jd-gui反编译报错// INTERNAL ERROR //

    最近在反编译class和jar包的时候,发现部分class无法反编译出来,换了最新版本的jd-gui和多个版本都不行,只能放弃了 解决方案:GitHub上找Luyten这个工具反编译 luyten是P ...

  10. linux学习(七)Shell编程中的变量

    目录 shell编程的建立 shell的hello world! Shell的环境变量 使用和设置环境变量 Shell的系统变量 用户自定义变量 @(Shell编程) shell编程的建立 [root ...