由于 Debian Wheezy 中的 empathy 2.30 不能满足我的所有偏好,我使用以下命令尝试了实验性的 empathy 3.1:
apt-get -t experimental install empathy
我必须发现,这个版本的同理心在 Gnome 2.x 中效果不佳。因此我提到:
apt-get purge empathy
apt-get install empathy
希望这将再次重新安装同理心的“标准”版本。
到目前为止,一切都很顺利。
但现在:
apt-get autoremove
想要删除整个 Gnome。
我怎样才能冷静下来apt-get autoremove
?
答案1
APT 为每个包维护一个指示器,告诉它该包是否是手动安装(因为用户/管理员需要而安装)或自动安装(安装只是因为它是其他软件包的依赖项)。这就是apt-get autoremove
用来确定要删除的内容的:它删除标记为自动安装的软件包,但当前安装的软件包不需要。
您需要将gnome
软件包或与您想要保留的位相对应的任何 Gnome 软件包标记为手动安装。在可以访问自动安装设置的交互式工具中执行此操作最简单:
- 在命令行上,调用
aptitude unmarkauto PACKAGENAME
将 PACKAGENAME 标记为手动安装,或markauto
将其标记为自动安装。 - 在 Aptitude 中,移至与软件包对应的行,然后按
m
将其标记为手动安装,或M
将其标记为自动安装。 - 在 Synaptic 中,移至与软件包对应的行,然后在“软件包”菜单中切换“自动安装”。
请注意(至少截至挤压,我还没有检查喘息)gnome-desktop-environment
取决于所有官方 Gnome 组件,包括同理心。我怀疑您已经gnome-desktop-environment
安装了该软件包,并且empathy
由于依赖性而删除该软件包必须将其删除。如果是这种情况,您现在应该重新安装gnome-desktop-environment
。 (如果您不记得了,您可以在 中找到基于 APT 的包管理器的历史记录/var/log/apt
。)
empathy
您可以直接apt-get -t wheezy empathy
安装 wheezy 版本,而不是清除和安装。
答案2
您可以apt-get install
将某些 gnome 软件包(已安装)设置为手动选择(已安装)。这应该引入所需的依赖项,以便 autoremove 不再希望删除 gnome 包。
我没有使用 gnome,但可能有一些 gnome-desktop 包或类似的东西可以引入所有主要的 gnome 东西。
例如,我的系统上非 gnome 软件包的输出:
# apt-get install libsource-highlight3
Reading package lists... Done
Building dependency tree
Reading state information... Done
libsource-highlight3 is already the newest version.
libsource-highlight3 set to manually installed.
libsource-highlight3
被自动安装为 的依赖项source-highlight
。删除后source-highlight
,apt-get autoremove
不会删除该libsource-highlight3
包,因为它是设置为手动安装现在。
答案3
另一个解决方案是使用这些选项完全关闭自动删除(在 /etc/apt/apt.conf 或 /etc/apt/apt.conf.d/ 目录中的文件中):
APT::Get::AutomaticRemove "0";
APT::Get::HideAutoRemove "1";
答案4
只需复制 apt 想要自动删除的软件包列表(使用文本编辑器删除尾随空格)。然后sudo apt install <paste list of packages>
多次为我解决了这个问题。它只是手动安装的软件包(apt 认为您在安装它们时必须需要这些软件包)与自动安装的软件包(apt 安装了这些软件包,因此它假设它可以使用它们做它想做的事情)之间的区别。通过执行上述操作,您告诉 apt 它们都是手动安装的。仅供参考 - 我有时必须执行此操作两次,因为它会继续建议进一步的自动删除。