Использование контрольных сумм базы данных RPM

Я хотел бы написать свою собственную программу проверки, чтобы файлы, загруженные из репозитория yum, имели ту же контрольную сумму, что и в комплекте. Это сродни ням-проверке.

В Ubuntu это делается путем сбора содержимого файлов.md5sums. Я считаю, что на RedHat эта информация хранится в файлах БД Berkeley, расположенных в /var/lib/rpm. Используя db_dump для BaseNames, Packages, Sha1header и Sigmd5, я исследовал файлы и не думаю, что они говорят сами за себя.

По сути, как я могу проверить контрольную сумму данного файла программно (без сценариев bash, использующих yum-verify)?

ТИА.

1 ответ

Решение

См. Rpm --verify code в lib/verify.c, чтобы узнать, как получить / проверить дайджесты файлов, используя C.

У привязок Python, скорее всего, достаточно методов для извлечения / проверки дайджестов файлов (но я не могу вспомнить ни одного широко используемого приложения Python, которое интеллектуально реализует проверку дайджестов файлов rpm)

Другие вопросы по тегам