CIFS:
CIFS(Common Internet File System)是一种通用网络文件系统,主要用于网络设备之间的文件共享。用Internet文件系统CIFS(Common Internet File System)也称为服务器信是适用于MicrosoftWindows服务器和客户端的标准文件和打印机共享系统息块(SMB)。CIFS可以在linux系统和windows系统之间共享文件,因此这种文件系统主要用于客户端是windows系统。Linux 系统可以挂载和访问 CIFS 文件共享 , 如同常见的网络文件系统一样。然而 , 由于 CIFS 是基于 NTFS 文件系统权限模型及其自身的身份验证系统来构建的 , 因而 CIFS 协议中的所有内容并不能很好地映射到 Linux 中
samba:
Samba是SMB的一种实现方法,主要用来实现Linux系统的文件和打印服务。Linux用户通过配置使用Samba服务器可以实现与Windows用户的资源共享。守护进程smbd和nmbd是Samba的核心,在全部时间内运行。 提供cifs协议实现共享文件,主要用于windows与linux的网络文件系统
作用:
把文件系统共享给别人,让别人来使用
普通网络文件系统 --------->CIFS文件系统
这个文件系统使用的软件就是SMB(samba)
实现文件系统的存储分离
文件系统关闭后还可以存储,提高企业中文件交互的稳定性
软件包:
Samba-common | ##Samba 的支持文件 |
---|---|
Samba-client | ##客户端应用程序 |
Samba | ##服务器应用程序 |
服务端口通常使用TCP/445进行所有连接。还使用UDP137、UDP138和TCP/139进行向后兼容
主配置文件:/etc/samba/smb.conf
CIFS文件系统
1.samba服务器的安装及访问调试
1 安装samba需要的软件包,开启服务
[root@shenzhen ~]# yum install samba samba-common -y
[root@shenzhen ~]# systemctl start samba
2 如果防火墙开着的话关闭防火墙
3 建立一个要共享的目录
[root@shenzhen ~]# mkdir /westos
4 修改这个目录的安全上下文
[root@shenzhen ~]# semanage fcontext -a -t samba_share_t '/westos(/.*)?'
[root@shenzhen ~]# restorecon -FvvR /westos
5 添加一个可以访问共享目录的用户,这个用户必须是系统中存在的用户,
6 查看samba用户列表
pdbedit -L | ##查看存在的samba用户 |
---|---|
pdbedit -x username | ##删除指定的samba用户,一次只能删除一个 |
[root@shenzhen ~]# smbpasswd -a westos
New SMB password:
Retype new SMB password:
Failed to add entry for user westos.
[root@shenzhen ~]# id westos
id: westos: no such user
添加westos用户失败,是因为系统中不存在这个用户,创建用户之后添加成功
[root@shenzhen ~]# useradd westos
[root@shenzhen ~]# smbpasswd -a westos
New SMB password:
Retype new SMB password:
Added user westos.
2.samba共享目录
(1) 自己建立共享目录是需要修改selinux的属性,修改安全上下文,只对修改目录生效
semanage fcontext -a -t samba_share_t ‘/westos(/.*)?’ ##修改自建立共享目录的安全上下文
restorecon -FvvR /westos ##刷新
setsebool -P samba_enable_home_dirs on samba | ##用户可以访问自己的家目录 |
---|---|
smbclient -L //172.25.254.127 -U westos | ##列出samba用户可以访问的共享目录 |
smbclient //172.25.254.127/westos -U westos | ##直接进入家目录并且查看内容 |
smbclient //172.25.254.127/hello -U student | ##直接进入指定的共享目录并查看内容 |
在没设置共享目录之前,samba查看共享目录会报错:
1 [root@shenzhen ~]# vim /etc/samba/smb.conf
2 [root@shenzhen ~]# systemctl restart smb
[hello] ##共享名称
comment = /westos ##共享说明
path = /westos ##共享目录的路径
3 再次查看共享目录,出现刚刚设置的信息
4 直接进入westos共享目录,查看内容(这里指定目录时应该是共享名称,而不是目录名)
5 访问samba用户的家目录被拒绝