4

我想使用 python 获取与 deb 包关联的配置文件列表。我正在开发一个项目,我需要知道是否修改了软件包安装的任何 conffile,因此我需要一个软件包安装的 conffile 列表,以便我可以使用它来查看哪些 conffile 已被修改。

我尝试使用 python-apt 库文档,但找不到任何方法,请建议我这样做。我知道我可以提取控制信息并读取原始 conffiles 文件,但我认为库本身可能有一个方法。

4

2 回答 2

2

这是在 python-apt 上挤压测试的:我使用的包是:

http://ftp.debian.org/debian/pool/main/o/openssh/openssh-server_5.5p1-6+squeeze1_amd64.deb

from apt.debfile import DebPackage
ssh = DebPackage('openssh-server_5.5p1-6+squeeze1_amd64.deb')
print ssh.control_content('conffiles').split('\n')

[u'/etc/init.d/ssh', u'/etc/default/ssh', u'/etc/network/if-up.d/openssh-server', u'/etc/ufw/applications.d/openssh-server', u'/etc/pam.d/sshd', u'']

你需要去掉最后一个

print ssh.data_content('etc/init.d/ssh')
u'#! /bin/sh\n\n### BEGIN INIT INFO\n#......'

你需要去掉第一个斜线

于 2011-11-09T21:26:29.777 回答
0

状态标志

dpkg --status bash
于 2011-11-09T21:29:09.557 回答