软件包 “被标记为手动安装”?这是什么意思?

开发
当你尝试安装已安装的库或开发包时,你会看到此消息。此依赖包是与另一个包一起自动安装的。如果删除了主包,则使用 apt autoremove 命令删除依赖包。

如果你使用 apt 命令在终端中安装软件包,你将看到各种输出。

如果你注意并查看输出,有时你会注意到一条消息:

    package_name set to manually installed

你有没有想过这条消息是什么意思,为什么你没有在所有包上看到它?让我在本篇中分享一些细节。

理解 “软件包被标记为手动安装”

当你尝试安装已安装的库或开发包时,你会看到此消息。此依赖包是与另一个包一起自动安装的。如果删除了主包,则使用 apt autoremove 命令删除依赖包。

但是由于你试图显式安装依赖包,你的 Ubuntu 系统认为你需要这个包独立于主包。因此,该软件包被标记为手动安装,因此不会自动删除。

不是很清楚,对吧?以 在 Ubuntu 上安装 VLC 为例。

由于主 VLC 包依赖于许多其他包,因此这些包会自动安装。

installing vlc with apt ubuntu

如果你检查名称中包含 vlc​ 的 已安装软件包列表​,你会看到除了 VLC,其余都标记为“自动”。这表明这些软件包是(跟着 vlc)自动安装的,当 VLC 被卸载时,它们将使用 apt autoremove 命令自动删除。

list installed packages vlc ubuntu

现在假设你出于某种原因考虑安装 vlc-plugin-base​。如果你在其上运行 apt install​ 命令,系统会告诉你该软件包已安装。同时,它将标记从自动更改为手动,因为系统认为在尝试手动安装表明你明确需要此 vlc-plugin-base。

package set manually

可以看到它的状态已经从 [installed,automatic]​ 变成了 [installed]。

listing installed packages with vlc

现在,让我删除 VLC 并运行 autoremove​ 命令。你可以看到 vlc-plugin-base 不在要删除的软件包列表中。

autoremove vlc ubuntu

再次检查已安装软件包的列表。vlc-plugin-base 仍然安装在系统上。

listing installed packages after removing vlc

你可以在这里看到另外两个与 VLC 相关的包。这些是 vlc-plugin-base​ 包的依赖项,这就是为什么它们也存在于系统上但标记为 automatic 的原因。

我相信现在有了这些例子,事情就更清楚了。让我给你一个额外的技巧。

将包重置为自动

如果包的状态从自动更改为手动,你可以通过以下方式将其设置回自动:

set package to automatic

结论

这不是一个重大错误,也不会阻止你在系统中进行工作。但是,了解这些小事会增加你的知识。

责任编辑:未丽燕 来源: Linux中国
相关推荐

2020-10-14 07:50:57

DNS劫持

2010-04-30 10:28:11

Unix安装

2010-06-10 13:56:22

openSUSE软件包

2010-03-01 17:43:55

Linux Xsupp

2018-10-08 15:42:37

VoLTE4G流量语音

2010-08-25 10:28:05

margin

2010-09-09 09:23:42

CSSDIV

2010-09-26 10:29:45

JVMJava虚拟机

2021-01-21 21:24:34

DevOps开发工具

2020-03-16 18:30:47

pipPythonLinux

2010-01-07 17:32:09

2010-01-07 14:44:14

Linux安装KDE

2018-06-22 10:05:04

Arch LinuxDEB软件包

2012-02-16 09:26:26

微软Google

2011-09-15 11:14:12

2018-10-29 14:10:19

Linux软件包命令

2009-12-28 12:25:44

2021-11-29 14:26:53

FreeDOSLinux

2021-05-30 16:01:46

边缘计算物联网IOT

2013-01-18 15:25:27

无线网络无线APWi-Fi
点赞
收藏

51CTO技术栈公众号