系统管理指南:基本管理

Procedure如何检查已安装对象的完整性 ( pkgchk -p, pkgchk -P)

以下过程介绍如何使用 pkgchk 命令检查已安装对象的完整性。使用新的 -P 选项,可以指定部分路径。添加此选项有助于将文件映射到软件包。将该选项与 -l 选项一起使用,可以列出包含部分路径的所有文件的信息。使用 -p 选项,可以通过指定全路径来检查已安装对象的完整性。有关更多信息,请参见 pkgchk(1M) 手册页。

  1. 成为超级用户或同等角色。

    角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见 《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”

  2. 检查已安装对象的完整性。

    • 要通过指定一个或多个全路径名来检验已安装对象的完整性,请键入以下命令:


      # pkgchk -lp path-name
      
    • 要使用部分路径名(可以是一个或多个)来检验已安装对象的完整性,请键入以下命令:


      # pkgchk -lP  partial-path-name
      
    -p path

    仅检查所列出的一个或多个路径名是否正确。路径可以是一个或多个用逗号分隔的路径名。指定仅审计文件属性(权限),而不是像缺省情况下那样既审计文件属性又审计文件内容。

    -P partial-path

    仅检查所列出的一个或多个部分路径名是否正确。部分路径可以是一个或多个用逗号分隔的部分路径名。它可匹配任何包含特定字符串(即部分路径中所包含的字符串)的路径名。指定仅审计文件内容,而不是像缺省情况下那样既审计文件内容又审计文件属性。

    -l

    列出有关构成软件包的选定文件的信息。此选项与 -a-c-f-g-v 选项不兼容。指定详细模式,该模式会显示正在处理的文件的名称。


示例 22–16 通过指定全路径名检查已安装对象的完整性

以下示例说明如何使用 pkgchk -lp 命令,通过指定全路径名来检查文件系统上对象的内容/属性。-l 选项列出了有关构成软件包的选定文件的信息。


# pkgchk -lp /usr/sbin/pkgadd
Pathname: /usr/sbin/pkgadd
Type: regular file
Expected mode: 0555
Expected owner: root
Expected group: sys
Expected file size (bytes): 867152
Expected sum(1) of contents: 45580
Expected last modification: Jul 02 02:20:34 2004
Referenced by the following packages:
        SUNWpkgcmdsu   
Current status: installed


示例 22–17 通过指定部分路径名检查已安装对象的完整性

以下示例说明如何使用 pkgchk -lP 命令,通过指定部分路径名(如文件名或目录名)来检查文件系统上对象的内容/属性。-l 选项列出了有关构成软件包的选定文件的信息。


# pkgchk -lP /sbin/pkgadd
Pathname: /usr/sbin/pkgadd
Type: regular file
Expected mode: 0555
Expected owner: root
Expected group: sys
Expected file size (bytes): 867152
Expected sum(1) of contents: 45580
Expected last modification: Jul 02 02:20:34 2004
Referenced by the following packages:
        SUNWpkgcmdsu   
Current status: installed

Pathname: /usr/sbin/pkgask
Type: linked file
Source of link: ../../usr/sbin/pkgadd
Referenced by the following packages:
        SUNWpkgcmdsu   
Current status: installed