阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

apt的update和upgrade区别

314次阅读
没有评论

共计 3091 个字符,预计需要花费 8 分钟才能阅读完成。

导读 如果想让你的 Ubuntu 或者 Debian 系统保持更新,要用 sudo apt update 和 sudo apt upgrade 命令组合。我们首先讨论一下 update 和 upgrade 的区别。这两个难道不是一样的吗?

一些以前的教程也会提到 ​​sudo apt-get update​​​ 和 ​​sudo apt-get upgrade​​。​​apt​​​ 和 ​​apt-get​​ 命令运行起来几乎一样,除了一些细微的差别,后面我会讨论。我们首先讨论一下 ​​update​​​ 和 ​​upgrade​​ 的区别。这两个难道不是一样的吗?

apt 的 update 和 upgrade 的区别

尽管听上去运行 ​​apt update​​​ 可以给你一个包的最新版本,然而这并不正确。​​update​​​ 命令只会获得系统上所有包的最新信息,并不会下载或者安装任何一个包。而是 ​​apt upgrade​​ 命令来把这些包下载和升级到最新版本。

还是有点困惑?让我来接着解释。我建议阅读 ​​包管理器的概念​​。这个会帮你更好的理解这些东西。

apt 的 update 和 upgrade 区别

基本上,你的系统围绕着一个所有可用包的数据库(缓存)工作。注意,这个缓存(或者数据库)并不包含这些包本身,仅仅是关于包的元数据(版本、仓库、依赖等)。

如果你不更新这个数据库,系统就不会知道是否有更新的版本。

当你运行 ​​apt update​​​ 或者 ​​apt-get update​​ 命令,它会获取这些包的最新元数据(包的版本等)。

apt 的 update 和 upgrade 区别

这时候本地缓存就被更新了,有一些包可以升级。用 ​​sudo apt upgrade​​ 可以升级所有(可升级的)包。

它会显示要升级的包,并且通过回车(默认选择是 ​​Y​​​)或者按下 ​​Y​​​ 键进行确认。要在这个阶段取消升级,可以按下 ​​N​​。

apt 的 update 和 upgrade 区别

下面这些可能会帮助你记忆:

    apt update​​:更新包缓存(可以知道包的哪些版本可以被安装或升级)
    ​​apt upgrade​​:升级包到最新版本

因为有一些管理员命令,需要作为 root 运行。因此需要使用 ​​sudo​​​ 配合其他命令。​​sudo​​ 使你能够作为 root 在 Ubuntu 和 Debian 上运行命令。

既然理解了 ​​update​​​ 和 ​​upgrade​​​ 是如何一起运行的,我们接下来来讨论一下 ​​apt​​​ 和 ​​apt-get​​ 的用法。

apt 和 apt-get 应该用哪个?

Debian 和 Ubuntu 使用的是 APT 包管理系统。不要和 ​​apt​​ 命令弄混了。

有许多和 APT 包管理交互的命令;​​apt-get​​​、​​apt​​​、​​dpkg​​​、​​aptitude​​ 等。

这里面最受欢迎的就是 ​​apt-get​​​ 命令。它是一个低层级 low-level 且功能丰富的命令。​​apt​​​ 是 ​​apt-get​​ 命令的一个更新而更简单的版本。

可以读一下这篇文章来 ​​了解 atp 和 apt-get 命令的不同​​​。下面重点讨论这些命令中 ​​update​​​ 和 ​​upgrade​​ 选项的区别。

apt update vs apt-get update

​​apt-get update​​​ 和 ​​apt update​​ 做的是同样的事,都是更新本地包缓存,这样的话你的系统就知道有哪些包的版本是可用的。

从技术上讲,其实并没有区别。然而,​​apt update​​​ 在一个方面比 ​​apt-get update​​ 做的好,它会告诉你可升级的包的数量。

Hit:15 https://ppa.launchpadcontent.net/slimbook/slimbook/ubuntu jammy InRelease
    Fetched 213 kB in 4s (55.8 kB/s)
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    6 packages can be upgraded. Run 'apt list --upgradable' to see them.

​​apt-get update​​ 甚至不会告诉你包是否可以升级。

apt 的 update 和 upgrade 区别
apt 的 update 和 upgrade 区别

从 ​​apt​​​ 中可以看到 ​​列出可升级的包​​​,而 ​​apt-get​​ 甚至没有这个选项。

# apt list --upgradable
    Listing... Done
    fprintd/jammy-updates 1.94.2-1ubuntu0.22.04.1 amd64 [upgradable from: 1.94.2-1]
    gnome-control-center-data/jammy-updates,jammy-updates 1:41.7-0ubuntu0.22.04.4 all [upgradable from: 1:41.7-0ubuntu0.22.04.1]
    gnome-control-center-faces/jammy-updates,jammy-updates 1:41.7-0ubuntu0.22.04.4 all [upgradable from: 1:41.7-0ubuntu0.22.04.1]
    gnome-control-center/jammy-updates 1:41.7-0ubuntu0.22.04.4 amd64 [upgradable from: 1:41.7-0ubuntu0.22.04.1]
    libpam-fprintd/jammy-updates 1.94.2-1ubuntu0.22.04.1 amd64 [upgradable from: 1.94.2-1]
    vivaldi-stable/stable 5.4.2753.40-1 amd64 [upgradable from: 5.4.2753.37-1]

现在来比较一下两个命令中 ​​upgrade​​ 的选项。

apt upgrade vs apt-get upgrade

​​apt-get upgrade​​​ 和 ​​apt upgrade​​​ 命令根据本地包缓存(通过 ​​update​​ 命令更新)的数据,安装可升级包的最新版本。

然而,​​apt upgrade​​​ 命令会做两件与 ​​apt-get upgrade​​ 不同的事情。

​​apt upgrade​​​ 命令可以升级 Linux 内核版本,​​apt-get upgrade​​​ 不能。​​apt-get​​​ 命令需要使用 ​​apt-get dist-upgrade​​ 来升级内核版本。

apt 的 update 和 upgrade 区别

这是因为升级内核版本意味着安装一个全新的包。​​apt-get upgrade​​ 命令不能安装一个新的包。它只能升级现有的包。

​​apt upgrade​​​ 比 ​​apt-get​​ 做的好的另一件小事是,它会在底部显示一个进度条。

apt 的 update 和 upgrade 区别

总结

​​update​​​ 和 ​​upgrade​​​ 两个词很相似,这就是为什么很多新用户会感到困惑。有时候,我觉得 ​​apt update​​​ 命令应该和 ​​apt upgrade​​ 命令合并。

我意思是 ​​upgrade​​​(所有已安装的包)和 ​​update​​​(本地包元数据缓存)一起完成工作。为什么要有两个分开的命令呢?把这两个领命合成一个 ​​upgrade​​ 命令吧。Fedora 就是这样对 DNF 命令进行了改进。不过这只是我的观点。

我希望这篇文章可以解释一些关于 ​​apt-get update​​​、​​apt-get upgrade​​​ 和 ​​apt update​​​ 以及 ​​apt upgrade​​ 命令的问题。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计3091字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19352
评论数
4
阅读量
8017971
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face 免费服务器 +Docker 快速部署 HertzBeat 监控平台 ...
星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

  星哥带你玩飞牛 NAS-16:不再错过公众号更新,飞牛 NAS 搭建 RSS 对于经常关注多个微...
还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...
星哥带你玩飞牛NAS-8:有了NAS你可以干什么?软件汇总篇

星哥带你玩飞牛NAS-8:有了NAS你可以干什么?软件汇总篇

星哥带你玩飞牛 NAS-8:有了 NAS 你可以干什么?软件汇总篇 前言 哈喽各位玩友!我是是星哥,不少朋友私...
【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件 大家好,我是星哥,很多人都希望能高效地保存微信公众号的文章,用于...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地 大家好,我是星哥,今天教大家在飞牛 NA...
240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

  240 元左右!五盘位 NAS 主机,7 代 U 硬解 4K 稳如狗,拓展性碾压同价位 在 NA...
星哥带你玩飞牛NAS硬件03:五盘位+N5105+双网口的成品NAS值得入手吗

星哥带你玩飞牛NAS硬件03:五盘位+N5105+双网口的成品NAS值得入手吗

星哥带你玩飞牛 NAS 硬件 03:五盘位 +N5105+ 双网口的成品 NAS 值得入手吗 前言 大家好,我...
Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集 在云原生体系中,Prometheus 已成为最主流的监控与报警...
300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

  300 元就能买到的 ” 小钢炮 ”?惠普 7L 四盘位小主机解析 最近...