当前位置: 首页>>技术教程>>正文


apt – 更新管理器(软件更新程序)的命令行等效项是什么?

,

问题描述

当我做

sudo apt-get update
sudo apt-get upgrade

有时 Ubuntu GUI 更新管理器仍会留下一些项目。例如\u201c完整的通用 Linux 内核\u201d。

我知道还有 sudo apt-get dist-upgrade ,但这涉及到其他事情。

我的问题是,我可以使用的另一个命令行选项是什么,它可以更新 GUI 更新管理器中显示的其余项目(但不会触及其他任何额外内容)。换句话说,我正在寻找等效的命令行。

编辑:这个问题指的是更新管理器,它相当于较新版本(例如 16.04)中的软件更新程序,如 @Eliah Kagan pointed out

最佳办法

作为 Flimm commented ,答案确实是 sudo apt-get dist-upgrade (在运行 sudo apt-get update 之后,GUI 包管理工具会自动执行等效操作)。这至少是最接近运行软件更新程序(在旧版本中称为更新管理器)的方法。

运行 apt-get upgrade 将升级可以升级的包:

  • 不安装某些版本中尚未安装的任何软件包,并且

  • 不删除任何包。

更新管理器能够完成这两项工作,因此 apt-get dist-upgrade 非常接近它。

  • 运行 sudo apt-get dist-upgrade 本身不会将您的 Ubuntu 系统升级到更新的版本。事实上,与 Debian 不同,apt-get dist-upgrade 不是升级到新版本的受支持方式。在 Debian 中(在 Ubuntu 中,虽然有时可能会失败并且不受支持),将 /etc/apt/sources.list 中列出的所有存储库更改为下一个版本的存储库并运行 sudo apt-get dist-upgrade 将尝试升级到下一个版本。

因为 apt-get dist-upgrade 可以删除包(并安装您可能不想要的新包),所以最好在按下 y 之前查看它打算做什么的描述。

因此,虽然运行 sudo apt-get -y upgrade 通常是合理的,但 -y 标志应该很少与 dist-upgrade 一起使用。

您没有使用 sudo apt-get upgrade 获得新内核版本的原因是因为它们每个都由单独的、不同名称的包提供。 (内核版本是名称的一部分。)这是为了便于将旧内核与新内核一起安装(并且能够在 GRUB 菜单中选择它们)。

通过安装 metapackage(如 linux-image-generic )来自动提供新的内核包进行安装。当您的 Ubuntu 版本出现新内核时,您的内核元包会升级,并且该元包的升级版本会将新内核列为依赖项(不会阻止旧内核继续安装)。

如果您不想使用 sudo apt-get dist-upgrade ,那么您始终可以手动升级在运行 sudo apt-get upgrade 时被列为保留的各个包。为此,请 “install” 他们: sudo apt-get install packagename

次佳办法

如果您想从命令行打开软件更新窗口(这是我收集到的,主要是因为这就是我搜索这个并最终来到这里的原因,因为这是我的目标),以便让自己获得 root访问 GUI 窗口(我在尝试通过远程处理时遇到了权限问题)

sudo update-manager

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/13059.html,未经允许,请勿转载。