在之前的文章中,我们查看了APT 命令以及您可以使用包管理器来管理包的各种方法。这是一个总体概述,但在本指南中,我们暂停并重点关注 2 个命令用法。这些是apt updateapt upgrade命令。

apt update 和 apt upgrade 是许多 Linux 用户最常用但被误解的两个命令。对于某些人来说,它们扮演着相同的角色,但事实并非如此。在本指南中,我们试图区分两者之间的差异以及如何使用它们。

1apt update命令

这是一个主要在新系统安装之后或安装新软件包之前调用的命令。apt update 命令更新 Linux 系统的包索引或包列表。它不会升级任何软件包,正如一些 Linux 用户被误导的那样。

/etc/apt/sources.list包索引文件是一个文件或数据库,其中包含在位于该文件的存储库中定义的软件包列表。其他软件包列表位于/etc/apt/sources.list.d 目录中。

运行此命令非常安全。如果由于某种原因中止或拔掉电源,您可以从停止的地方恢复。

三星 Galaxy S22 Ultra vs iPhone 13 Pro Max vs Pixel 6 Pro

在终端上使用 cat 命令查看源列表文件。

$ cat /etc/apt/sources.list

/etc/apt/sources.list 文件

要更新软件包列表,请调用以下命令:

对于 Ubuntu 18.04 及更高版本

$ sudo apt update

对于 Ubuntu 16.04 及更早版本

$ sudo apt-get update

2apt upgrade命令

需要将您的软件包升级到最新版本?然后apt upgrade是要执行的命令。apt upgrade 命令不带任何参数,将系统上所有过时的软件包升级到最新版本。

如果需要任何依赖项,该命令还会触发新软件包的安装。除此之外,apt upgrade还会安装您系统所需的所有安全更新,这加强了您系统的安全性。

要列出需要升级的软件包,请运行apt list --upgradable命令。事实上,这是在apt update输出的最后显示的提示。

因此,要查看准备升级的软件包,请运行:

$ sudo apt list --upgradable

要升级所有过时的软件包并应用安全补丁,请运行以下命令:

$ sudo apt upgrade

在运行时不中断或不进行 apt 升级更安全。

要记住的几件事:

如果由于某种原因中断,您是否有一个很好的备份可以恢复?

您是否将日志发送到另一个远程系统?

有手动编译的软件吗?

概括

apt update命令用于同步系统上的软件包列表。它为您系统上的 PPA 和存储库获取最新的软件包列表,并确保它们是最新的。

apt upgrade命令将软件包升级到最新版本,并在需要它们作为依赖项时安装新软件包。它不会删除任何包,如果指定要删除任何包,它会跳过它们。

文章知识点与官方知识档案匹配,可进一步学习相关知识
云原生入门技能树首页概览11311 人正在系统学习中

[转帖]apt update和apt upgrade命令 - 有什么区别?的更多相关文章

  1. Ubuntu 16.04出现:Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli; then appstreamcli refresh > /dev/null; fi'

    错误: Reading package lists... Done E: Problem executing scripts APT::Update::Post-Invoke-Success 'if ...

  2. 【亲测有效】Ubuntu18.04 sudo apt update无法解析域名的解决方案

    问题描述如下: 拿起了封尘已久的ThinkPad,输入 sudo apt update 的时候,发现这个命令变得不好使了,具体出现的问题如下图所示: #( 09/08/19@ 2:44下午 )( py ...

  3. Ubuntu apt update卡在Connecting to security.ubuntu.com解决方法

    Ubuntu操作系统运行apt update命令时会卡在Connecting to security.ubuntu.com,搭了梯子也无法解决 尝试了网络上的方法,如: https://blog.cs ...

  4. sudo apt update 没有 Release 文件

    注: 不同环境出错原因可能不同,本文仅供参考. 今天在Ubuntu 19.04 系统运行指令 sudo apt update 时,忽然提示错误,报错如下: 404 Not Found [IP: 101 ...

  5. ubuntu apt update failed to fetch

    When I do command sudo apt update, always get belowing errors: Err:1 http://archive.ubuntu.com/ubunt ...

  6. Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli; then appstreamcli refresh > /dev/null; fi'

    运行sudo apt-get update 时Ubuntu 16.04出现: Problem executing scripts APT::Update::Post-Invoke-Success 'i ...

  7. Ubuntu 16.04出现:Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/

    转自:http://blog.csdn.net/zzq123686/article/details/77454066 出现错误信息: Reading package lists... Done E:  ...

  8. kali apt update 错误——下列签名无效: EXPKEYSIG ED444FF07D8D0BF6 Kali Linux Repository

    这是因为key过期了 wget -q -O - https://archive.kali.org/archive-key.asc | apt-key add apt update

  9. Ubuntu用sudo apt-get update出错:E: Problem executing scripts APT::Update::Post-Invoke-Success

    Ubuntu用sudo apt-get update出错:   E: Problem executing scripts APT::Update::Post-Invoke-Success 'if /u ...

  10. apt update 提示 Release file for http://… is not valid yet (invalid for another d..)

    由于在公司里需要使用代理上网,搞了好久,好不容易把 apt 整得可以访问外网了,结果在执行 spt update 时总是提示 Release file for http://- is not vali ...

随机推荐

  1. .NET技术分享日活动-202202

    2022年02月19日下午,个人组织举办了山东地区的第四次.NET技术分享日活动.主要包含.NET常用技术.低代码.大前端.大数据和工作流等五个技术领域. 本次技术分享日活动面向了山东地区广大的.NE ...

  2. 遥居前列!华为云GaussDB再获行业权威验证

    摘要:北京国家金融科技认证中心正式公布了2022年通过"分布式数据库金融标准验证"的数据库产品名单.华为云GaussDB金融级分布式数据库以突出的技术优势通过验证,跃然榜上,且测试 ...

  3. 工商银行:应用多k8s集群管理及容灾实践

    摘要:在华为开发者大会(Cloud)2021上,工商银行Paas云*台架构师沈一帆发表了<工商银行多k8s集群管理及容灾实践>主题演讲,分享了工商银行使用多云容器编排引擎Karmada的落 ...

  4. DevSecOps“内置安全保护”,让软件研发“天生健康”

    摘要:我们主要是围绕安全架构设计保证安全落地有法可依,进行威胁建模让安全落地有迹可循.做好隐私和敏感数据保护让安全落地在每一个细节和实处这几个方面进行阐述. 本文分享自华为云社区<DevSecO ...

  5. 火山引擎工具技术分享:用 AI 完成数据挖掘,零门槛完成 SQL 撰写

      更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,并进入官方交流群 文 / DataWind 团队封声 在使用 BI 工具的时候,经常遇到的问题是:"不会 SQL 怎么生产加工 ...

  6. C# 跳过值班时间代码逻辑

    /// <summary> /// 当前时间是否是值班时间 /// </summary> private bool IsDutyTime { get { var dutyTim ...

  7. 记录一次Java内存泄露分析过程

    版权说明: 本文章版权归本人及博客园共同所有,转载请在文章前标明原文出处( https://www.cnblogs.com/mikevictor07/p/13032635.html ),以下内容为个人 ...

  8. Mysql--编译安装5.7版本

    1 安装环境 1)清除以往mysql残留痕迹(新机不用) yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y userdel ...

  9. C++ lambda 内 std::move 失效问题的思考

    最近在学习 C++ Move 时,有看到这样一个代码需求:在 lambda 中,将一个捕获参数 move 给另外一个变量. 看似一个很简单常规的操作,然而这个 move 动作却没有生效. 具体代码如下 ...

  10. vivo智能活动中台-悟空系统建设之路

    作者:来自 vivo 互联网悟空系统研发团队 本文根据冯伟.姜野老师在"2023 vivo开发者大会"现场演讲内容整理而成.[vivo互联网技术]公众号回复[2023 VDC]获取 ...