跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 11.1 管理:安全服务 Oracle Solaris 11.1 Information Library (简体中文) |
本节介绍 BART 使用和创建的文件的格式。
每个清单文件项均单独占据一行,具体取决于文件类型。每个项都以 fname(即文件名)开头。为了避免因文件名中嵌入特殊字符所导致的解析问题,已对文件名进行了编码。有关更多信息,请参见BART Rules 文件格式。
后续字段表示以下文件属性:
文件类型,可能值为:
B,表示块设备节点
C,表示字符设备节点
D,表示目录
F,表示文件
L,表示符号链接
P,表示管道
S,表示套接字
以字节为单位的文件大小。
表示文件权限的八进制数。
文件的 ACL 属性。对于具有 ACL 属性的文件,其中包含 acltotext() 的输出。
此项的所有者的数字用户 ID。
此项的所有者的数字组 ID。
目录的上次修改时间,以秒为单位,从 1970 年 1 月 1 日 00:00:00 UTC(国际协调时间)开始计算。
链接的上次修改时间,以秒为单位,从 1970 年 1 月 1 日 00:00:00 UTC 开始计算。
文件的上次修改时间,以秒为单位,从 1970 年 1 月 1 日 00:00:00 UTC 开始计算。
文件的校验和值。此属性仅为常规文件指定。如果您关闭了上下文检查,或者无法计算校验和,则此字段的值为 -。
符号链接的目标。
设备节点的值。此属性仅用于字符设备文件和块设备文件。
有关更多信息,请参见 bart_manifest(4) 手册页。
规则文件是文本文件,其中包含的行指定了哪些文件要包括在清单中以及哪些文件属性要包括在清单或报告中。该工具将忽略以 # 开头的行、空白行以及包含空格的行。
输入文件包含三种类型的指令:
子树指令,带有可选的模式匹配修饰符
CHECK 指令
IGNORE 指令
示例 6-5 Rules 文件格式
<Global CHECK/IGNORE Directives> <subtree1> [pattern1..] <IGNORE/CHECK Directives for subtree1> <subtree2> [pattern2..] <subtree3> [pattern3..] <subtree4> [pattern4..] <IGNORE/CHECK Directives for subtree2, subtree3, subtree4>
注 - 所有指令将按顺序读取。后面的指令会覆盖前面的指令。
子树指令必须以绝对路径名开头,后面跟有零个或多个模式匹配语句。
CHECK 和 IGNORE 语句定义要跟踪或忽略的文件属性。每个清单开头的元数据列出了每个文件类型的属性关键字。有关示例,请参见示例 6-1。
all 关键字表示所有文件属性。
BART 所用的 rules 文件规范语言是用于表示非标准文件名的标准 UNIX 引用语法。嵌入的制表符、空格、换行符或特殊字符以八进制格式编码,以使工具能够读取文件名。这种不一致的引用语法会阻止在命令管道中正确处理某些文件名,如包含嵌入回车的文件名。使用 rules 规范语言可表述复杂的文件名过滤条件;如果仅使用 shell 语法会很难表述这些条件,而且效率也不高。
有关更多信息,请参见 bart_rules(4) 手册页。
在缺省模式下,BART 报告会检查系统上安装的所有文件,但已修改的目录时间戳 (dirmtime) 除外:
CHECK all IGNORE dirmtime
如果提供了 rules 文件,则全局指令 CHECK all 和 IGNORE dirmtime 会按照以上顺序自动前置到 rules 文件。
将返回以下退出值:
成功
处理文件时出现非致命错误,如权限问题
出现致命错误,如无效的命令行选项
详细输出为缺省输出,已本地化并出现在多行中。详细输出已经过国际化并具有可读性。如果使用 bart compare 命令对两个系统清单进行比较,则会生成一个文件差异列表。
输出结构如下:
filename attribute control:control-val test:test-val
在控制清单与测试清单中不同的文件的名称。
进行比较的清单之间存在差异的文件属性的名称。control-val 出现在 test-val 之前。如果同一个文件中的多个属性出现差异,则每个差异都将记录在单独的一行中。
以下是 /etc/passwd 文件中属性差异的示例。输出表明 size、mtime 和 contents 属性已发生变化。
/etc/passwd: size control:74 test:81 mtime control:3c165879 test:3c165979 contents control:daca28ae0de97afd7a6b91fde8d57afa test:84b2b32c4165887355317207b48a6ec7
使用 bart compare 命令的 -p 选项将生成程序输出。该输出适用于程序操纵。
输出结构如下:
filename attribute control-val test-val [attribute control-val test-val]*
与缺省格式中的 filename 属性相同
每个文件在控制清单与测试清单之间存在差异的文件属性的说明
有关 bart 命令支持的属性的列表,请参见Rules 文件属性。
有关更多信息,请参见 bart(1M) 手册页。