如何从dpkg / apt / aptitude安装/删除软件包得到通知?

我正在编写一个Python系统脚本,当程序被安装/升级/删除时,我需要得到通知。

首先,我想把我的应用程序连接到apt-dbus守护进程。 不幸的是,我还没有find它,而我正在等待其实施(可能需要很长时间),我正在研究另一种方法来做到这一点。

所以我想过pyinotify 。 也许每当文件/var/log/apt/history.log发生变化时我都会收到通知,然后我只是parsing添加的行以获得我所期望的。

你能否build议我另一个安全的方法来做到这一点?

谢谢。

它没有响应你的所有需求,但它可以帮助:使用Pre-Install-Pkgs,安装时用dpkg,apt,aptitude激发命令:

 cat /etc/apt/apt.conf.d/80user DPkg::Pre-Install-Pkgs {"logger ";} 

在syslog中:

 Sep 10 22:08:35 Bart logger: /var/cache/apt/archives/scim-python-common_0.1.13~rc1-2build1_all.deb Sep 10 22:08:35 Bart logger: /var/cache/apt/archives/python-scim_0.1.13~rc1-2build1_i386.deb Sep 10 22:08:35 Bart logger: /var/cache/apt/archives/scim-python_0.1.13~rc1-2build1_i386.deb 

你可以用你想要的命令replacelogging器,比如邮件。