/var/lib/rpm 的内容是什么;它们记录在哪里?

/var/lib/rpm 的内容是什么;它们记录在哪里?

在我的中/var/lib/rpm,我有以下文件,

$ file *
Basenames:    Berkeley DB (Btree, version 9, native byte-order)
Conflictname: Berkeley DB (Btree, version 9, native byte-order)
__db.001:     Applesoft BASIC program data
__db.002:     386 pure executable
__db.003:     386 pure executable not stripped
Dirnames:     Berkeley DB (Btree, version 9, native byte-order)
Group:        Berkeley DB (Btree, version 9, native byte-order)
Installtid:   Berkeley DB (Btree, version 9, native byte-order)
Name:         Berkeley DB (Btree, version 9, native byte-order)
Obsoletename: Berkeley DB (Btree, version 9, native byte-order)
Packages:     Berkeley DB (Hash, version 9, native byte-order)
Providename:  Berkeley DB (Btree, version 9, native byte-order)
Requirename:  Berkeley DB (Btree, version 9, native byte-order)
Sha1header:   Berkeley DB (Btree, version 9, native byte-order)
Sigmd5:       Berkeley DB (Btree, version 9, native byte-order)
Triggername:  Berkeley DB (Btree, version 9, native byte-order)

我可以看到这些文件大部分都是 Berkeley DB 的。但是,我找不到有关它们的文档。

  • 它们记录在哪里?
  • 这些数据库有什么作用?
  • RedHat/CentOS 是否提供任何实用程序来探索它们?

我正在构建与 RPM 紧密集成的工具,这些工具似乎与我的任务高度相关。

答案1

rpm这是该工具及其库的低级私有数据存储librpm。您的工具可能应该使用librpm API如果可能的话,而不是试图绕过图书馆。

librpm这样,即使开发人员和/或rpm工具决定扩展内容或更改数据存储格式,您也将有机会保持兼容性。

相关内容