С помощью команды pkgchk можно проверить целостность пакетов независимо от того, установлены ли они в системе или находятся в пакетном формате (готовы к установке командой pkgadd). Команда подтверждает структуру пакета, установленных файлов и каталогов или отображает информацию об объектах пакета. Команда pkgchk может вывести список или проверить следующее:
Сценарии установки пакета.
Содержимое и/или атрибуты объектов, установленных в системе.
Содержимое помещенного в буфер, удаленного пакета.
Содержимое и/или атрибуты объектов, описанных в указанном файле pkgmap.
Для получения дополнительной информации см. страницу pkgchk(1M).
Команда pkgchkвыполняет два типа проверки. Она проверяет атрибуты файла (права доступа и принадлежность файла, а также старшие и младшие номера блочных или символьных устройств) и содержимое файла (размер, контрольная сумма и дата изменения). По умолчанию команда проверяет как атрибуты, так и содержимое файла.
Кроме того, команда pkgchk сравнивает атрибуты файла и содержимое установленного пакета с базой данных устанавливаемого ПО. Записи о пакете могли измениться со времени установки. Например, другой пакет мог изменить какой-то компонент пакета. Подобные изменения отражаются в базе данных.
Установите пакет.
См. раздел Как устанавливать пакеты на независимой системе или сервере
Проверьте целостность пакета.
# pkgchk [-v] [-R root-path] [pkg-abbrev...] |
-v |
Выводит список файлов по мере их обработки. |
-R root-path |
Указывает расположение корневой файловой системы клиента. |
pkg-abbrev |
Имя одного или нескольких пакетов (разделенных пробелом), которые следует проверить. Если имя не указано, команда pkgchk проверяет все имеющиеся пакеты. |
В данном примере показана команда, которую следует использовать для проверки целостности установленного пакета.
$ pkgchk pkg-abbrev $ |
При наличии ошибок команда pkgchk выводит их на печать. В противном случае данные не выводятся, и возвращается код выхода 0. Если сокращение пакета не указано, осуществляется проверка всех пакетов в системе.
При необходимости можно использовать параметр -v для вывода на печать списка файлов пакета при отсутствии в нем ошибок. Пример:
$ pkgchk -v SUNWcadap /opt/SUNWcadap /opt/SUNWcadap/demo /opt/SUNWcadap/demo/file1 /opt/SUNWcadap/lib /opt/SUNWcadap/lib/file2 /opt/SUNWcadap/man /opt/SUNWcadap/man/man1 /opt/SUNWcadap/man/man1/file3.1 /opt/SUNWcadap/man/man1/file4.1 /opt/SUNWcadap/man/windex /opt/SUNWcadap/srcfiles /opt/SUNWcadap/srcfiles/file5 /opt/SUNWcadap/srcfiles/file6 $ |
Если требуется проверить пакет, установленный в корневой файловой системе клиента, используйте следующую команду:
$ pkgchk -v -R root-path pkg-abbrev |
Для перехода к следующей задаче откройте ссылку Как получить информацию с помощью команды pkginfo.