如何确定给定的软件包是否是 Ubuntu 安装中默认附带的还是由用户稍后安装的?!
这在此 U&L 中回答说:
要确定用户是否安装了某个包(这里是 Tor),请在终端中运行以下命令:
apt-cache show tor | grep Priority
如果优先级是可选的,则该包由用户安装;如果是标准的(在 Debian 上很重要),则是默认安装的包。
虽然一个简单的测试,例如 ubuntu-desktop
$ apt-cache show ubuntu-desktop | grep Priority
给出:
Priority: optional
那么我可以说这不是一个正确的方法。
那么如何确定包裹是否默认发货呢?
答案1
要确定某个软件包是否默认包含在给定的 Ubuntu 安装中,请在该 Ubuntu 版本的清单文件中搜索该软件包名称。
例子
寻找Ubuntu 桌面包装Ubuntu 14.04.2 64 位清单显示 ubuntu-desktop 默认包含在 Ubuntu 14.04.2 64 位 ISO 文件中。
寻找系统信息Ubuntu 14.04.2 64 位清单中的包显示 sysinfo 默认不包含在 Ubuntu 14.04.2 64 位 ISO 文件中。
Ubuntu 14.04.2 的清单文件链接如下:Ubuntu 14.04.2 LTS (Trusty Tahr) - Ubuntu 发行版网页。
离线方法
如果您已经下载了 Ubuntu 安装的 ISO 文件,那么还可以在没有互联网连接的情况下离线查找某个 Ubuntu 安装中是否默认包含某个软件包。
如果您已下载,请浏览到 Ubuntu 14.04 的 ISO 文件,然后使用档案管理器打开它。
提取位于 /casper 目录中的 filesystem.manifest 文件。
在文本编辑器(例如 Gedit)中打开 filesystem.manifest 文件。
按照与前面的示例相同的方式在 filesystem.manifest 文件中搜索 ubuntu-desktop 等。
创建一个 default.txt 文件,其中包含所有默认包的包名称列表,每个包名称占一行,以方便从终端搜索:
cat filesystem.manifest | awk '{print $1}' | sort > default.txt