在安装和更新过程中检查清单信息。
sysck { -i | -u } [ -R RootPath ] [ -N ] [ -v ] [ -s SaveFile ] [ -O { r | s | u } ] -f File ProductName { tcbck Flags }
所有的 tcbck 命令标志对该命令都是有效的。
注:sysck 命令不支持检查大于 2 吉字节的文件。 如果一个产品需要提供大于 2 吉字节的文件,请将它们在 Fileset 清单中的大小和校验值设置为 VOLATILE, 这样 sysck 命令就不会尝试访问这个文件了。
注:所有 tcbck 命令标志对 sysck 命令都是有效的。此特征提供了与 V3.1 的兼容性。有关 tcbck 命令的更多信息及其标志的完全列表,请参阅《AIX 5L V5.2 命令参考大全》。
sysck 命令对照从安装和更新介质中抽取的文件来检查文件定义,并更新软件重要产品数据(SWVPD)数据库。sysck 命令无法识别文件名中的以下特殊字符: `, ', \, ", ^, ( ), |, {}, [], <> 和 :。如果文件名中包含 这些字符的其中之一,sysck 命令就会失败。
sysck 命令主要在软件产品的安装和更新过程中使用。
在使用 -i 标志调用时,sysck 命令根据文件定义检查抽取的文件的属性,更新 SWPCD,并试图修正文件中可能存在的错误。
File 参数是包含 文件定义的节文件名。此类文件的一个示例是 /etc/security/sysck.cfg 文件,尽管 syschk 命令不使用这个文件。sysck 命令检查类型属性设为 FILE 的文件的大小、链接、符号链接、所有者、组和方式属性。当使用 -v 标志和 -i 标志调用时,sysck 也会检查文件校验和的值。
sysck 命令会更新 SWVPD 数据库中每个文件的文件名、产品名、类型、校验和以及大小。
为了修正错误,sysck 命令会将已安装或更新的文件的属性重新设置为在 File 节文件中定义的值,在 “修正错误” 中描述的某些属性除外。
当使用 -u 标志调用时,sysck 命令将每个属于软件产品 ProductName 组成部分的文件的条目从 SWVPD 数据库中除去。 sysck 命令也按照 SWVPD 数据库中的定义删除每个文件的任何硬链接和符号链接。
-f File | 指定包含文件定义的节文件名。 |
-i | 检查软件产品文件的正确安装。根据文件定义更新 SWVPD 数据库,并尝试修正发现的错误。 |
-N | 指定不应更新 SWVPD 数据库。 |
-O {r|s|u} | 指定要更新 SWVPD 的哪一部分,如下: |
acl | 文件的访问控制表。如果该值为空,则会除去 acl 属性。如果没有指定值,则命令会根据访问控制表中描述的格式计算值。
属性会将 x(执行)访问权仅授权给 root 用户和安全组的成员。该命令应该 setuid 为 root 用户,并且具有可信计算库属性。 |
class | 文件的逻辑组。必须指定一个值,因为不能计算得到该值。 该值是 ClassName [ClassName]。 |
checksum | 文件的校验和。如果该值为空,则会除去 checksum 属性。如果没有指定值,则该命令根据 sum 命令指定的格式计算值。该值是 sum -r 命令的输出,包含空格。 |
group | 文件组。如果该值为空,则会除去 group 属性。如果没有指定值,那么该命令就会计算值,它可以是组标识或组名称。 |
mode | 文件方式。如果该值为空,则会除去 mode 属性。如果没有指定值,则该命令计算值,它可以是八进制数字或字符串(rwx),并且具有 TCB、SUID、SGID 以及 SVTX 属性。 |
owner | 文件所有者。如果该值为空,则会除去 owner 属性。如果没有指定值,则该命令计算值, 它可以是用户标识或用户名。 |
size | 文件的大小,以字节表示。如果该值为空,则会除去 size 属性。在 size 字段中的 VOLATILE 值表示文件大小会更改(因此不能给出校验和值)。 NOSIZE 值表示文件为 0 长度。如果没有指定值,则该命令会计算值,该值为十进制数字。 |
target | 允许符号链接和硬链接在清单中以单独节存在。target 文件定义指向链接源的全路径名称,例如:
/etc/foo --> /usr/bar target 为 /usr/bar。 |
type | 文件类型。该值不能为空。如果没有指定值,则该命令会计算值,它可以是 FILE、DIRECTORY、FIFO、BLK_DEV、CHAR_DEV、LINK、MPX_DEV 和 SYMLINK 关键字。 |
xacl | 对扩展访问控制表的添加。因为不能计算该值,所以值必须指定为扩展访问控制表中的单个条目。该属性仅在使用 -i 标志时有效。关于格式的更多信息,请参阅上述的 acl 文件定义。 |
为了修正错误,sysck 命令会将已安装或已更新的文件的属性重新设置为在 File 节文件中定义的值,下列的属性例外。对于这些属性,sysck 命令的操作如下所述:
links | 创建任何缺失的硬链接。如果存在链接指向本定义中未列出的文件,则删除该链接。 |
program | 如果该属性包含在 File 节文件中,sysck 会调用该程序。如果发生错误,会打印出一条消息,但不采取其它的操作。 |
symlinks | 创建缺失的符号链接。如果存在链接指向本定义中未列出的文件,则删除该链接。 |
特权控制:只有 root 用户才能运行该命令。
/usr/bin/dude.exec: class = apply,inventory,dude.rte owner = bin group = bin mode = 555 type = FILE size = 2744 checksum = "04720 3"
/etc/objrepos/inventory | 在根上指定软件产品文件的名称和位置。 |
/usr/lib/objrepos/inventory | 在 /usr 文件系统里指定软件产品文件的名称和位置。 |
/usr/share/lib/objrepos/inventory | 在 /usr/share 文件系统里指定软件产品文件的名称和位置。 |
installp 命令、sum 命令以及 tcbck 命令。