升级到 Ubuntu 20.04 后,某些软件包的名称中带有“{u}”。我寻找过答案,但看起来要么是谷歌在搜索过程中立即忽略了花括号,要么这种情况并不常见。有人能帮我提供文档链接吗?{u}这些包名称中表示什么?
user@server:~# sudo aptitude update && sudo aptitude upgrade && sudo apt-get autoremove
Hit http://mirrors.linode.com/ubuntu focal InRelease
Hit http://mirrors.linode.com/ubuntu focal-updates InRelease
Hit http://mirrors.linode.com/ubuntu focal-backports InRelease
Hit http://security.ubuntu.com/ubuntu focal-security InRelease
Hit http://ppa.launchpad.net/ondrej/php/ubuntu focal InRelease
The following packages will be REMOVED:
ack{u} libargon2-0{u} libfile-next-perl{u} libicu65{u}
python-pkg-resources{u}
0 packages upgraded, 0 newly installed, 5 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 34.4 MB will be freed.
Do you want to continue? [Y/n/?]
答案1
花括号后缀仅用于澄清那些包操作(在本例中为删除{没用过软件包)并不是您在命令中明确要求的,但是自动衍生的决策通过能力。
在这种情况下,您要求删除任何该软件包不再被其他手动安装的软件包所依赖,并且 aptitude 识别了这 5 个软件包。
根据已安装和可用包(版本)中定义的约束,任何安装、升级或删除都可能导致执行其他操作。这些操作不一定仅限于一个选择或一个明显的选择 - 因此命令输出非常清楚地表明哪些数据包是因为你提到它们而被选中的,哪些是自动选择的(以防这个选择不符合你的期望)。
在Do you want to continue?
提示符下,第三个选项(键入?
而不是y
或n
)会显示解释,因此如果出现任何异常,您始终可以获取相关文档,即使未来版本添加的后缀比我们姊妹网站上的相关问答中目前解释的更多Unix 和 Linux:aptitude:花括号的含义,即package1{b} package2{a} package3{u}