在debian上修复损坏的软件包?


12

我想开始探索将自己从Google应用程序中移开,因为它很昂贵,而且好像城堡具有我需要的所有组件功能。所以我正在尝试使用以下方法安装citadel-suite:

apt-get install citadel-suite

但它返回:

citadel-suite:取决于:citadel-mta,但是不会被安装
E:无法纠正问题,您拿着损坏的包装。

嗯,是。它确实需要citadel-mta。那是一半的意思。那么为什么不安装呢?我持有哪些破损的包裹?他们为什么坏了?他们为什么被拘留?我没有抓住他们。或者就这样打破它们。

apt-get的问题在于,在我使用它的10年中,它借用了Apple短语才行得通。现在不是,我很茫然。我确实尝试了-f开关,但没有帮助。我尚未对/etc/apt/sources.list进行任何修改,因此无法还原它们。接下来我应该尝试什么?


我很高兴在这里谈谈您的经验citadel。您是否尝试--fix-missing --fix-broken等?
2014年

建议您用来研究情况aptitude。它的依赖性求解器不如apt-get,但是由于它是一个交互式工具,它使检查系统状态变得更加容易。
Badp 2014年

如果安装了它,我会通知您。根据功能列表,似乎可以完成我需要的所有工作,但需要进行双重身份验证,并且我可以通过VPN进行处理。
fastfinge 2014年

@badp:实际上,它的依赖解决方案似乎更好。aptitude install citadel-suite提出了一个解决方案。它想要删除虚拟包mail-transport-agent。我什至不知道我已经安装了该软件,因此删除它可能很好。为什么不这样做呢?
fastfinge 2014年

@fastfinge是的,有时aptitude可能无法摆脱困境apt-get,有时会aptitude开始向北,建议您卸载系统的一半以修复texlive文档的依赖性。:)
badp

Answers:


11

“ ...但不会安装”通常意味着,如果允许继续发生严重的依赖冲突。

尝试以下命令:

aptitude why-not citadel-mta

why-not 基本上检查依赖关系,并返回不必自动填充特定依赖关系的原因。

对于我的家庭系统:

shadur@leviathan:~$ aptitude why-not citadel-mta
i   exim4-daemon-light Conflicts mail-transport-agent
p   citadel-mta        Provides  mail-transport-agent

显然citadel-mta是完整的MTA,因此将替换您当前已安装的所有mail-transport-agent软件包。明确告诉它也安装citadel-mta应该足以打破僵局。

注意:这样做意味着您当前的邮件服务器软件将由citadel随附的软件代替。请非常确信这就是你想要什么你这样做之前。


这是一个测试服务器,用于探索citadel组件服务器在没有用户数据的测试域中作为gmail替代品的工作情况。这正是我想要的。谢谢!
fastfinge 2014年

6

我发现用aptitude而不是synapticapt-get最终可以安装。 aptitude更聪明,为我提供了解决问题的方法。

编辑:我确实不得不跳过建议的第一个解决方案,以使它真正起作用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.