pg_integrity_check

pg_integrity_check — вычисление и проверка контрольных сумм отслеживаемых файлов (только сертифицированная редакция)

Синтаксис

pg_integrity_check [параметр-подключения...] [-s | --system] [-u | --user] [-c | --catalog] [-o | --output] [-l имя_файла | --log=имя_файла] [--syslog] [-D каталог_данных] [-C имя_файла] [-v | --verbose] [-? | --help]

Описание

pg_integrity_check — утилита, поставляемая в составе Postgres Pro Standard, которая может вычислять и проверять контрольные суммы важных объектов. Запуская pg_integrity_check, вы должны указать минимум один из параметров, определяющих тип отслеживаемых объектов: -s, -u или -c для неизменяемых файлов, дополнительных файлов или таблиц системных каталогов, соответственно.

Если вы используете ключ -o, pg_integrity_check вычисляет контрольные суммы и записывает их в файлы конфигурации в каталоге share/security/. Для выполнения этой команды у вас должно быть право записи в эти файлы. Ключ -o нельзя использовать вместе с -s, так как контрольные суммы неизменяемых файлов не могут перезаписываться.

Если вы не указываете ключ -o, pg_integrity_check сравнивает вычисленные контрольные суммы с соответствующими контрольными суммами в файлах конфигурации. Если контрольные суммы каких-либо из отслеживаемых объектов не совпадают, pg_integrity_check выводит сообщения о различиях.

Более подробно использование pg_integrity_check описано в Разделе 30.2.

Параметры

параметры-подключения

Стандартные параметры для подключения к базе данных: -d, -h, -p, -U. Вы должны указать параметры -d и -U для проверки контрольных сумм таблиц каталогов с ключом -c. За подробным описанием параметров подключения обратитесь к psql.

-s
--system

Проверить контрольные суммы неизменяемых файлов. В контрольных суммах неизменяемых файлов учитывается и содержимое, и атрибуты этих файлов.

-u
--user

Проверить контрольные суммы дополнительных файлов. В контрольных суммах дополнительных файлов учитывается и содержимое, и атрибуты этих файлов.

-c
--catalog

Проверить контрольные суммы для таблиц системных каталогов. Чтобы ключ -c работал корректно, вы также должны задать параметры подключения к базе данных. Сервер баз данных должен быть запущен и готов принимать подключения.

-o
--output

Пересчитать контрольные суммы и записать их в файл.

-l имя_файла
--log=имя_файла

Записывать результаты проверки контрольных сумм в файл журнала.

--syslog

Записывать результаты проверки контрольных сумм в syslog.

-D каталог_данных

Каталог данных кластера БД. Этот параметр необходим для определения имён файлов конфигурации при использовании ключа -u.

-C имя_файла

Абсолютный путь к файлу конфигурации, который используется для проверки целостности таблиц системного каталога выбранной базы данных. При использовании с параметром -o pg_integrity_check записывает контрольные суммы в указанный файл. Если другие параметры не используются, pg_integrity_check проверяет данные по указанному файлу.

-v
--verbose

Выводить отладочную информацию, в том числе значения контрольных сумм.

-?
--help

Вывести справку по командной строке.

Возвращаемые значения

0 — контрольные суммы вычислены или проверены успешно.

1 — при изначальном подсчёте контрольных сумм неизменяемых файлов произошла ошибка.

2 — проверка контрольных сумм выявила изменения в одном или нескольких отслеживаемых объектах.

3 — при проверке контрольных сумм произошла неожиданная ошибка.

Примеры

Вычисление контрольных сумм для дополнительных файлов и внесение их в файл конфигурации share/security/_var_lib_pgpro_std-17_data.user.conf:

pg_integrity_check -u -o -D /var/lib/pgpro/std-17/data

Проверка целостности всех отслеживаемых объектов в базе данных postgres от имени пользователя postgres:

pg_integrity_check -s -u -c -D /var/lib/pgpro/std-17/data -d postgres -h localhost -p 5432 -U postgres