本文环境: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表示用 于其他配置项。

最新文章

  1. DirectX基础学习系列8 渐进网格以及外接体
  2. 新手浅谈Task异步编程和Thread多线程编程
  3. 将svn添加到系统服务
  4. [King.yue]EXT.NET TextFieldFor添加正则表达式
  5. 《Gulp 入门指南》 : 使用 gulp 压缩 JS
  6. Collections.sort()
  7. Ubuntu 14.04 Nvidia显卡驱动手动安装及设置
  8. Javascript 页面刷新
  9. HttpClient请求详解
  10. linux RHCS集群 高可用web服务器
  11. c++ 指针做为参数和返回值
  12. shell 读取配置文件的方法
  13. 学习Spring必须了解的基础知识——回调机制
  14. 菜鸟学SSH(十九)——提高用户体验之404处理
  15. SQL注入之Sqli-labs系列第一关
  16. R载入需要的程辑包:rJava Error
  17. 吴恩达深度学习笔记(deeplearning.ai)之循环神经网络(RNN)(三)
  18. Redhat 5禁止IPv6
  19. 基于UML的面向对象分析与设计
  20. Administrator privileges required for OLE Remote Procedure Call debugging: this feature will not work..

热门文章

  1. [转载]——Full UNDO Tablespace In 10gR2 and above (文档 ID 413732.1)
  2. MATLAB实例:散点密度图
  3. docker jenkins安装
  4. 【安富莱】RTX嵌入式操作系统教程发布,支持F103,F407和F429,含81个配套例程(2017-10-17)
  5. IT兄弟连 HTML5教程 HTML5表单 HTML表单设计2
  6. Spring Security从后台数据库查询实现登陆控制
  7. ETCD:配置参数
  8. ASP.NET中的身份验证
  9. Net Core的API文档工具Swagger
  10. HttpWebRquest.GetRequestStreamAsync()发生延迟