我想用我的Ubuntutesting服务器上的exim4来replacepostfix,以反映我在生产服务器上的设置,但是apt-get和aptitude(可以理解)坚持删除依赖邮件堆栈的多个软件包。 然而,在这种情况下,我准备重写apt-get的毫无疑问的意义,因为exim应该满足依赖包的所有要求,为我的应用程序提供邮件和sendmailfunction。 我不想删除依赖的软件包,因为有几个月的努力投入,虽然支持,将是一个很好的重build的痛苦。
我设法安装exim4代替postfix。 我做了:
dpkg --force-all -r postfix apt-get purge postfix
我忽略了apt-get -f install的build议,因为它试图重新安装postfix。 然后:
aptitude install exim4-daemon-heavy sa-exim
现在我可以继续configuration我的testing服务器的MTA,就像我的产品一样。
通常情况下,你只需要aptitude来安装新的邮件服务器:
aptitude installl exim4
这里是如何find我的:
datacompboy@nuuzerpogodible:~$ LANG=C sudo aptitude install postfix The following NEW packages will be installed: postfix{b} 0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 1565 kB of archives. After unpacking 3479 kB will be used. The following packages have unmet dependencies: postfix : Conflicts: mail-transport-agent which is a virtual package. exim4-daemon-light : Conflicts: mail-transport-agent which is a virtual package. exim4-config : Conflicts: postfix but 2.9.1-2 is to be installed. The following actions will resolve these dependencies: Remove the following packages: 1) exim4 2) exim4-base 3) exim4-config 4) exim4-daemon-light Accept this solution? [Y/n/q/?] y The following NEW packages will be installed: postfix The following packages will be REMOVED: exim4{a} exim4-base{a} exim4-config{a} exim4-daemon-light{a} 0 packages upgraded, 1 newly installed, 4 to remove and 0 not upgraded. Need to get 1565 kB of archives. After unpacking 417 kB will be freed.
这是正确的行为:只有一个MTA可以在没有PITA的情况下在系统中生存
如果它试图删除更多的包,比你想要的,你应该检查
资质为什么一些包装
获取有关为什么安装包的信息。 现在,你应该决定。 如果删除策略是{a} – 这意味着由于自动依赖关系安装的软件包,您可以删除自动安装的事实并将其设置为手动
资质unmarkauto一些包装
之后,一些软件包会被手动安装,只有在发生冲突时才会被删除,而不是因为不再使用。