如何更新通过 .deb 文件安装的软件

Nip*_*thi 25 upgrade updates apt dpkg repository

我们通过 .deb 文件安装了很多软件,因为官方的 ubuntu 存储库有非常旧的版本。但我只是想知道如何通过 .deb 文件更新软件包安装。

一个特殊的例子是 sonic-visualiser 官方 ubuntu 有 3 年的 2.5 版本,而官方网站有 3.0.3 版本

Ola*_*Ola 25

虽然使用 .deb 包安装程序可能不会将存储库添加到 apt 以进行自动更新,但某些 .deb 安装就是这样做的:它们将存储库添加到 apt 以进行进一步更新或使您可以添加它们手动,然后安装软件。示例:“Visual Studio 代码”。 https://code.visualstudio.com/docs/setup/linux

我从他们的网站上引用:

基于 Debian 和 Ubuntu 的发行版

为基于 Debian/Ubuntu 的发行版安装 Visual Studio Code 的最简单方法是通过图形软件中心(如果可用)或通过命令行下载并安装 .deb 包(64 位):

sudo apt install ./<file>.deb
Run Code Online (Sandbox Code Playgroud)

安装 .deb 包将自动安装 apt 存储库和签名密钥,以使用系统的包管理器启用自动更新。请注意,VS Code 下载页面上也提供了 32 位和 .tar.gz 二进制文件。

也可以使用以下脚本手动安装存储库和密钥:

curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg 
sudo install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/ 
sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
Run Code Online (Sandbox Code Playgroud)

然后更新包缓存并使用以下命令安装包:

sudo apt-get install apt-transport-https 
sudo apt-get update 
sudo apt-get install code # or code-insiders
Run Code Online (Sandbox Code Playgroud)

  • `sudo apt install ./&lt;file&gt;.deb` 这是错误的。它应该是“dpkg -i”而不是“apt install”。APT 仅安装来自软件包存储库的软件包,而不安装下载的软件包 (10认同)
  • 嗨@philsf,当然您可以使用 apt 安装下载的文件。我自己这样做了很多次,因为 apt 是我安装软件的首选方式。您可以通过提供 apt install 命令的绝对路径来指示该文件,或者如果该文件位于当前工作目录中,您可以在文件名前面加上“./”。否则,apt 将尝试从 Ubuntu 的存储库或任何设置中检索并安装软件包。我希望它有帮助。 (3认同)

fkr*_*iem 10

下载一个新的.deb并像安装上一个一样安装它。

不,您无法在正常apt update && apt upgrade过程中获得自动更新;这就是存储库的用途。

  • @guiverc 我对 Snaps 一点都不熟悉,所以请随意写另一个关于这个的答案。 (2认同)