CIFS与CIFS Homedir文件系统学习总结
[TOC]
0x00 前言简述
本章主要介绍 CIFS 与 CIFS Homedir 概念及其配置,方便初学者快速入门;
1.CIFS
描述:CIFS(Common Internet File System - 通用网络文件系统)是当前主流异构平台共享文件系统之一
,它是一个网络文件共享协议,允许Internet和Intranet中的Windows主机访问网络中的文件或其他资源。主要应用在Window操作系统环境下进行文件共享
,如果你是Linux系统还是建议您采用NFS文件系统;
CIFS是SMB(Server Message Block)
的一个公共版本;
Q: 那什么是SMB协议?
答: SMB协议是一个网络文件访问协议,使本机程序可以访问局域网内计算机上的文件并请求此计算机的服务。
Q: 为什么要使用CIFS文件系统而不是直接使用SMB共享?
答: 随着企业规模的扩大,企业内各部门之间进行文件共享和访问的用户数量越来越多;由于共享文件所在的服务器的硬件配置限制,当大量用户访问共享文件时,造成访问速度下降、系统响应慢的问题 如何能够提高大量用户访问共享文件的性能,是企业网络应用必须解决的问题。 存储系统支持CIFS共享特性,使得Windows客户端
能够识别并访问网络中存储系统提供的共享资源
,客户端用户能够像使用本机一样对保存在存储系统中的文件进行读、写、创建等操作。CIFS解决了大量用户访问共享文件速度下降和系统响应慢的问题
。
CIFS 优势:
- 1.高并发性: 提供文件共享和文件锁机制,允许多个客户端访问或更新同一个文件而不产生冲突(
同一时刻只允许一个客户端更新文件
) - 2.高性能: 某个客户端对共享文件进行的操作并不会立即写入存储系统而是保存在本地缓存中。当该客户端再次对共享文件进行操作时,系统会直接从缓存中读取文件,提高文件访问性能。
- 3.数据完整性: 采用抢占缓存、预读和回写的方式保证数据的完整性,上面我们说到客户端对共享文件的操作不会立即写入存储系统而是保存在本地缓存之中,当其它客户端需要访问同一文件时候便会将缓存数据写入到存储之中,从而保证了在同一时刻
只有一个拷贝文件处于激活状态防止数据冲突
; - 4.高安全性: FS支持匿名传输和共享的鉴权访问(
设置用户对文件系统的访问权限,保证文件的机密性和安全性
) - 5.应用广泛性: 任意支持CIFS协议的客户端,均可以访问CIFS共享空间。
- 6.统一的字符编码标准: 支持各类字符集,保证CIFS可以在所有语言系统中使用。
配置CIFS共享包括无域环境中配置CIFS共享
和AD域环境中配置CIFS共享
两种方式;
- (1) 无域环境中的CIFS共享: 存储系统使用CIFS共享的方式,把文件系统以目录的形式共享给某个用户,并且存储系统还可以为不同的用户设置共享文件,使存储系统共享的目录和用户名一致,该用户无法查看或访问其他用户的共享目录。
- 链接流程:通过CIFS协议,向客户端提供对文件系统的共享访问,客户端(通过鉴权后)将共享文件映射到本地后,用户可以像访问本地文件一样远程访问服务器中的文件系统。
- Tips:在存储系统中通过设置本地认证的用户名和密码,确定允许访问该文件系统的本地认证信息。
WeiyiGeek.无域环境中的CIFS共享
- (2) AD域环境中的CIFS共享:随着局域网、广域网规模越来越大,很多企业使用AD域进行Windows网络管理,使得管理更便捷、更具有扩展性。 比如华为V5存储系统能够加入AD域,作为AD域的客户端,实现和AD域环境的无缝对接,利用其AD域控制器中保存了域环境中所有的用户信息、群组信息等;AD域客户端访问存储系统提供的CIFS共享时,认证均通过AD域控制器完成。所有域用户均可以访问存储系统提供的共享目录。同时AD域的管理员可以配置基于文件的权限管理,对不同域用户访问每个文件夹进行不同的权限控制。同时,存储系统支持AD域客户端只能访问与其名称相同的共享目录,无法查看并访问其他域客户端的共享目录的方式;
WeiyiGeek.AD域环境中的CIFS共享
2.CIFS Homedir
描述:Homedir(Home Directory)属于CIFS共享方式的一种,它是是用户私有目录,可用于存放用户私有数据,该用户只能查看和访问与其名称一致的共享目录,无法查看或访问其他用户的私有目录
。
Homedir特性优势:
- 支持配置Homedir共享名,用户可通过Homedir共享名访问不同的Homedir共享。
- 支持配置CA、oplock、notify等特性开关,可以实现对用户访问Homedir共享业务的特性控制。
- 支持配置Homedir共享权限,实现对Homedir共享的用户权限管理。
- 支持配置多个Homedir共享,每个Homedir共享可添加多个用户Homedir文件系统路径映射规则,满足管理员划分用户Homedir到不同文件系统路径的业务场景。
- 映射规则支持AutoCreate选项,可以自动为用户创建Homedir目录,简化了管理员对用户Homedir目录的管理。
同CIFS一样华为存储V5也包括两种共享方式即无域环境中的 CIFS Homedir共享 、 AD域环境中的CIFS Homedir共享
图示参照CIFS共享;
0x01 共享规划
描述:在配置CIFS/CIFS Homedir共享前请先做好规划工作,以便顺利开展后续的业务配置。
规划的内容包括网络、域、认证方式、共享方式、用户、用户组、权限和配额
。
规划项 |
规划子项 |
规划要求 |
|
---|---|---|---|
网络 |
存储系统IP |
存储系统使用逻辑端口(LIFa)提供存储系统和应用服务器之间的通信提供IP。 |
|
访问终端IP地址 |
访问终端与存储系统在同一个网络中,可以相互ping通。 |
||
维护终端IP地址 |
维护终端与存储系统在同一个网络中,可以相互ping通。 |
||
(可选)AD域环境 |
在AD域环境中,规划AD域服务器和NTP服务器的IP地址和主机名,并保证各服务器与存储系统在同一个网络中,可以相互ping通。 |
||
域环境 |
AD域或无域 |
根据用户的管理需求,设置为AD域或无域环境。 两种环境的优点如下。 AD域:存储系统能够实现与AD域的无缝对接,无需建立本地用户,域用户可以访问共享空间。无域:无需搭建域环境。 |
|
认证方式 |
本地认证和域认证 |
根据用户环境AD域或无域环境设置认证方式。 本地认证:使用本地帐户进行用户身份的认证。域认证:使用域服务器进行用户身份的认证。 |
|
共享方式 |
CIFS共享 |
创建CIFS共享前,需要先检查是否已启用CIFS服务并对CIFS服务进行配置。 |
|
用户 |
包括本地认证的用户和域认证的用户 |
本地认证用户名长度范围为6到32位字符。 本地认证用户名不允许包含空格、`“””、“/”、“”、“[”、“]”、“<”、“>”、“+”、“:”、“;”、“,”、“?”、“*”、“ |
”、“=”和“@”`,且尾字符不允许为“.”。 |
用户组 |
包括本地认证的用户组和域认证的用户组 |
本地认证用户组名长度范围为1到32位字符。 本地认证用户组名不允许包含空格、`“””、“/”、“”、“[”、“]”、“<”、“>”、“+”、“:”、“;”、“,”、“?”、“*”、“ |
”、“=”和“@”`,且尾字符不允许为“.”。 |
权限级别 |
用户或用户组访问共享的权限 |
设置用户访问CIFS共享的权限,包括: 完全控制:拥有CIFS共享的所用权限。 只读:只拥有CIFS共享的读权限。 读写:拥有CIFS共享的读写权限。 禁止:禁止访问。 |
|
配额 |
- |
配额只能针对文件系统的quota tree(b),根据用户需求定义文件系统的配额值。配额大小不受文件系统容量限制。配额包括以下两方面: 空间配额:文件系统中quota tree的最大容量。 文件配额:文件系统中quota tree的最大文件数目。 |
a:LIF是在物理端口、绑定端口及VLAN端口上创建的逻辑端口,每个LIF对应一个IP地址。 b:quota tree即配额树,是文件系统的特殊目录。在quota tree上可以设置目录配额,管理该目录内所有文件的使用空间。
0x02 CIFS 配置使用
描述下面以OceanStor DeviceManager设备型号:5310F V5 为例进行配置使用;
- (1) CIFS共享的配置流程
WeiyiGeek.CIFS
- (2) CIFS Homedir共享的配置流程:
WeiyiGeek.CIFS Homedir
Tips:此处以客户端操作系统为Windows 7为例进行说明,在用户客户端映射网络驱动器流程如下:
Step 1.在Windows客户端右键单击“计算机”。选择“映射网络驱动器”。
Step 2.系统弹出“映射网络驱动器”对话框。在“文件夹”中输入映射的文件夹路径。
Step 3.映射的文件夹路径使用\logical ip addresssharename
的格式。
Step 4.其中sharename是指CIFS共享的共享名称。单击“完成”。
- android 项目中出现红色感叹号的解决方法
- SharePoint Foundation 2010
- ASP.NET MVC Action Filters
- Android:StatFs类 获取系统/sdcard存储空间信息
- 数据挖掘干货
- 高效 Mac 人士必备:实现工作/家庭间网络环境切换的自动化
- android中AVD的使用
- ASP.NET MVC 2示例Tailspin Travel UI层分析
- CSS 命名之Dialog, Modal, Popup, Popover, Lightbox 等的区别
- Eclipse JAVA文件注释乱码
- 2018年小程序的红利趋势预测,懂的来……或许你将成为下个富翁
- VUE 入门基础(6)
- 五年换4高管,6000员工裁95%剩300人,王健林为何抛弃万达网科?
- Android Permission中英对照
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 【每日一题】32. Longest Valid Parentheses
- 面经手册 · 第3篇《HashMap核心知识,扰动函数、负载因子、扩容链表拆分深度学习(+实践验证)》
- Head First设计模式——桥接模式
- Head First设计模式——生成器模式和责任链模式
- Head First设计模式——蝇量模式和解释器模式
- 【每日一题】33. Search in Rotated Sorted Array
- 【每日一题】34. Find First and Last Position of Element in Sorted Array
- 【每日一题】35. Search Insert Position
- Head First设计模式——原型模式和访问者模式
- Java 新特性前瞻:封印类
- 每天手撕一道算法题-130. 被围绕的区域
- C#实现前向最大匹、字典树(分词、检索)
- Tomcat 中文乱码,设置UTF-8
- 从零搭建Spring Boot脚手架(4):手写Mybatis通用Mapper
- IDEA将Maven项目中指定文件夹下的xml等文件编译进classes