当我刚刚从命令行更新时,Synaptic 如何进行更新?

当我刚刚从命令行更新时,Synaptic 如何进行更新?

怎么会这样?我以为 CLI 才是关键(这是个好东西)。我进入 CLI(Ctrl + Alt + F1)并:

sudo apt-get upgrade
sudo apt-get update
sudo apt-get check

一切都好。

返回 GUI 并打开 Synaptic Package Manager 然后:

  1. 重新加载
  2. 标记所有更新

...它就在那里!什么?我刚刚在命令行上做了这个。怎么会有需要更新的东西?

答案1

可能有两个原因:

  • 首先,您的upgrade-update顺序错误。您需要update先执行此操作,因为这是更新您本地可用软件包列表的命令,内容如下upgrade

  • upgrade如果升级涉及添加或删除软件包(许多内核更新都涉及此操作),则不会安装升级。您需要dist-upgrade。Synaptic 中的“标记所有升级”相当于dist-upgrade

因此如果你运行:

sudo apt-get update
sudo apt-get dist-upgrade

您应该发现 Synaptic 没什么可做的。

答案2

您按照错误的顺序执行了这些步骤(或者输入了错误的步骤)。

正确的做法是:

  1. apt-get update因此数据库会获取最新的可用信息和版本
  2. apt-get upgrade现在您正在下载并安装软件包
  3. apt-get check如果你愿意,我通常只需要步骤 1 和 2

似乎发生的情况是,您使用旧信息升级系统,因此可能什么都没有真正升级,然后您更新数据库,当您询问 Synaptic 时,它只会告诉它找到了新的包(由于您apt-get update刚刚运行)。

sudoPS:如果您不是root,请记住使用。

答案3

因为您首先运行sudo apt-get upgrade该命令将更新计算机上所有过期的软件包,然后运行sudo apt-get update该命令下载最新的存储库列表。因此,列表中已经有新软件包,即您运行 Synaptic 时检测到的软件包。

您应该在升级之前先更新您的存储库,以便 apt 能够从网络上获取最新的软件包。它必须是sudo apt-get update && sudo apt-get upgrade

相关内容