apt-get - autoremove 想要卸载 Gnome

apt-get - autoremove 想要卸载 Gnome

由于 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-highlightapt-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 它们都是手动安装的。仅供参考 - 我有时必须执行此操作两次,因为它会继续建议进一步的自动删除。

相关内容