Использование контрольных сумм базы данных 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)