码迷,mamicode.com
首页 > 其他好文 > 详细

48、【华为HCIE-Storage】--InfoLocker

时间:2018-04-05 19:17:11      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:HCIE   Storage   hostman   

-----------------------------------重要说明------------------------------------

以下部分内容来网络,部分自华为存储官方教材

具体教材内容请移步华为存储官网进行教材下载

    网络引用内容无法找到原创,如有侵权请通知

     ------------------------------------重要说明------------------------------------

a. 定义

InfoLocker即一写多读特性,购买InfoLocker特性的用户可对文件设置保护期,在文件被保护期间,只能读取,不能进行修改和删除;在文件保护期过期后,文件只能被删除,不能进行修改。因此, InfoLocker成为归档文件系统的必备特性。 InfoLocker分为企业级InfoLocker与遵从级InfoLocker,其中企业级InfoLocker的系统管理员可以在文件被保护期内删除InfoLocker文件,而遵从级InfoLocker在文件被保护期内任何人都无法删除文件。本版本仅支持企业级InfoLocker。

在描述一写多读特性时,简称WORM( Write Once Read Many)比较常见,下文统一使用WORM来简称一写多读。

b.  相关概念

WORM时钟

为了防止由于集群时间的变更导致目录或文件保护时间的变化,当一个目录或文件被配置了WORM属性后,该目录或文件将使用WORM时钟来计时,用于WORM目录和文件的计时。设置了WORM时钟之后,系统会在该时钟基础上计时,避免由于用户修改本地时钟导致文件提前过保护期。WORM时钟只允许设置一次,设置成功后不再允许更改。

WORM时钟与集群时间的关系:

如果集群时间早于WORM时钟, WORM时钟将每过1小时,最多向前追赶138秒进行调整。

如果集群时间晚于WORM时钟, WORM时钟调整为集群时间。

WORM属性

当一个目录配置为WORM根目录时,该目录的所有子目录、新建目录和新建文件自动继承父目录的WORM属性,这些属性参数只能在配置WORM根目录时被设置,之后用户只能查看不能修改。 WORM属性如表所示,系统通过文件的WORM属性,判断该文件何时过期,何时进入保护状态。

技术分享图片 

WORM日志

用于记录WORM操作相关的日志,按照时间进行记录,每个月的日志记录为一个文件,该文件为WORM文件,只能进行追加写,不能进行修改和删除,避免用户误删除或篡改。

提交保护

可采用两种方式使WORM目录下的文件进入保护状态,即只可读,不可写。

自动提交保护: WORM目录下的文件,在设置的自动提交保护时间内没有进行写操作和修改WORM属性等操作,文件将自动进入保护状态。系统在后台自动运行一个扫描任务,对WORM目录下的文件进行分析,如果文件处于“未保护状态”或“追加状态”且距离上次的修改时间( mtime)已经超过该文件的自动锁定时间,系统会自动关闭文件的写权限,文件进入“保护状态”。

手工提交保护: WORM目录下的文件,用户手工去除文件写权限或设置为只读,将立即触发文件进入保护状态。

计算过期时间

每个文件都具有atime(读取文件或者执行文件的时间,在本特性中作为该文件的过期时间,一旦该文件进入保护状态,则atime不随文件访问或执行变化, atime为该文件的过期时间 )、 ctime(该文件的内容、权限,拥有者,所属的组,链接数等文件状态最后改变时间)和mtime(该文件的数据内容最后改变时间)属性。系统通过mtime来判断文件最后修改时间, WORM文件的过期时间记录在文件的atime中, atime的计算分为以下两种情况:

 自动提交保护场景

1、如果用户未设置atime,则atime = mtime+自动锁定时长+默认保护期。

2、如果用户设置atime,且mtime+自动锁定时长+最小保护期< atime <mtime自动锁定时长+最大保护期,则实际的atime = 自动锁定时长+用户设置的atime。

3、如果用户设置atime,但atime<mtime+自动锁定时长+最小保护期,则实际的atime = mtime+自动锁定时长+最小保护期。

4、如果用户设置atime,但atime>mtime+自动锁定时长+最大保护期,则实际的atime = mtime+自动锁定时长+最大保护期。

手工提交保护场景

1、如果用户未设置atime,则atime = 当前WORM时钟时间+默认保护期。

2、如果用户设置atime,且当前WORM时钟时间+最小保护期< atime <当前WORM时钟时间+最大保护期,则实际的atime = 用户设置的atime。

3、如果用户设置atime,但atime<当前WORM时钟时间+最小保护期,则实际的atime = 当前WORM时钟时间+最小保护期。

4、如果用户设置atime,但atime>当前WORM时钟时间+最大保护期,则实际的atime = 当前WORM时钟时间+最大保护期。

WORM文件状态

技术分享图片 

技术分享图片
 

1.提交保护:可采用自动提交保护和手工提交保护两种方式使WORM目录下的文件进入保护状态,即只可读,不可写。

2.修改保护期:当文件处于“保护状态”时,可以通过修改atime,手动延长文件的保护期。

3.保护时间到期:文件进入“保护过期”状态,此时文件只能删除和读取,不能被修改。

4.延长保护期:当文件过期后,可以通过延长保护期使文件重新进入“保护状态”。

5.追加写:对于处于“保护状态”的空文件,在打开了写权限后,进入“追加状态”。“追加状态”可以对文件追加写。只要不进行提交保护操作,处于“追加状态”的已经追加写入内容的非空文件,可以持续进行追加写,追加写文件的保护分两种情况:

当追加状态的文件小于1MB时,既可以追加写也可以修改写文件的内容。

当追加状态的文件大于1MB时,可以追加写,文件大小减去1MB的内容不能修改写,文件的最后1MB内容可以修改写,即最后1MB数据,系统无法保护。

c.  实现原理

技术分享图片
 技术分享图片

1:系统管理员将一个普通目录配置为WORM根目录,该目录获取WORM属性,使用WORM时钟计时, WORM相关操作系统将记录日志。

2:用户通过客户端访问文件系统,在WORM根目录下新建目录,并写入文件,新建目录下的新建文件自动获取父目录的WORM属性,该目录下的文件为未保护状态。

3:到达自动锁定时间, WORM目录A下的文件进入保护状态。 WORM目录A下的文件属性变为只读,用户修改WORM目录A下的文件请求被系统拒绝。

4:用户在WORM根目录下再次新建目录,并写入文件,该目录下的文件为未保护状态。

5:用户手工将WORM目录B下的文件提交保护, WORM目录B下的文件进入保护状态。

WORM目录中数据的读写状态B部分如图所示。

技术分享图片
 技术分享图片

 

6:当用户发现WORM目录B下的文件被误提交成保护模式,请求系统管理员进行删除,系统管理员不具有删除权限,删除WROM目录B下的文件操作请求被拒绝。

7:系统超级管理员具有特权删除权限,删除WORM目录B下的文件,删除成功。

8:达到保护期, WORM目录A下的文件进入过期状态,用户对WORM目录A下的文件进行删除,删除成功。



48、【华为HCIE-Storage】--InfoLocker

标签:HCIE   Storage   hostman   

原文地址:http://blog.51cto.com/hostman/2095086

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!