百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

初级:如何在终端及图形界面中更新 Ubuntu

bigegpt 2024-10-12 06:22 8 浏览

这篇教程将向你展示如何更新服务器版本或者桌面版本的 Ubuntu。它还解释了更新和升级之间的区别以及你应该了解的有关于 Ubuntu Linux 中的更新的一些其他内容。

如果你是一个新手并已经体验 Ubuntu 数天或几周,你可能想知道如何更新你的 Ubuntu系统以获取安全补丁,错误修复和应用升级。

更新 Ubuntu 非常简单。我并不是瞎说。它简单得只要运行两个命令。让我来告诉你这两个命令的更多细节。

请注意,本教程适用于 Ubuntu 18.04、16.04 或任何其他版本。命令行方式也适用于基于 Ubuntu 的发行版如 Linux Mint、Linux Lite、elementary OS 等。

通过命令行更新 Ubuntu

在桌面上,打开终端。你可以在菜单里找到它或者使用 Ctrl+Alt+T 快捷键。如果你是登录到一台 Ubuntu 服务器,那你已经在访问一个终端了。

在终端里,你只需要使用以下命令:

sudo apt update && sudo apt upgrade -y

它将询问你密码,而你可以使用你的账号密码。输入时,你将不会看到任何内容在屏幕上,所以请继续输入你的密码并按回车键。

现在,我来解释下上面的命令。

事实上,这不是一条命令。它由两条命令组成。符号 && 是合并两条命令的一个方法,第二条命令仅在前一条命令执行成功时执行。

当命令 apt upgrade 要求你在安装更新前确认时,末尾的参数 -y 会自动输入 yes。

请注意,你也可以逐条使用这两条命令:

sudo apt update
sudo apt upgrade

这将花费更长的时间,因为你必须等待第一条命令执行完成后才能输入第二条命令。

说明:sudo apt update

这条命令更新了可用软件包的本地数据库。如果你没运行这条命令,本地数据库将不会被更新,而你的系统将不会知道是否有可用的新版本。

这就是为什么当你运行 sudo apt update,你会在输出中看到大量的 URL。这条命令会从对应的储存库(你在输出中看到的 URL)中获取软件包信息。

在命令的末尾,它告诉你有多少个软件包可以被更新。你可以使用下列命令查看这些软件包:

  1. apt list --upgradable

说明:sudo apt upgrade

这条命令将已安装的软件包版本与本地数据库进行匹配。它收集全部信息,然后列出所有具有更新版本的软件包。此时,它会询问您是否要升级(已安装的软件包更新到新版本)。

你可以键入 yes、y 或者只敲回车键去确认安装这些更新。

所以总的来说,sudo apt update 会检查可用的新版本,而 sudo apt upgrade 实际上会执行更新。

命令 update 可能会令人困惑,因为你可能期望通过命令 apt update 安装更新来更新系统,但这并不会发生。

通过 GUI 更新 Ubuntu(适用于桌面用户)

如果你使用桌面版 Ubuntu,你并不需要为了更新系统而打开终端。你可以仍可以使用命令行更新,但这只是一个选择。

在菜单里,找到 “软件更新” 并运行它。

它将检查你的系统是否有可用的更新。

如果有可用的更新,它将给你提供安装更新的选择。

现在,点击 “安装”,它可能会向你询问密码。

一旦你输入你的密码,它将开始安装更新。

在某些情况下,你可能需要重启系统才能使已安装的更新正常工作。如果需要重启系统,你将在更新结束时收到通知。

如果你不希望马上重启你的系统,可以选择稍后重启。

提示:如果“软件更新”返回一个错误,你需要在终端是使用命令 sudo apt update。输出的最后几行将包含真正的错误信息。你可以在因特网上搜索该错误并解决问题。

更新 Ubuntu 时要记住几件事

你刚学习了如何更新你的 Ubuntu 系统。如果你感兴趣,你还需要了解一些关于 Ubuntu 更新的内容。

更新后清理

你的系统将会有一些更新后不再需要的软件包。你可用使用这条命令删除这些软件包并释放空间:

sudo apt autoremove

在 Ubuntu Server 中内核热修复以避免重启

如果是 Linux 内核更新,你将需要在系统更新后重启。当你不希望服务器停机时,这将会是一个问题。

热修复功能允许 Linux 内核在持续运行时打补丁。换句话说就是你不需要重启你的系统。

如果你在管理服务器,你可能需要在 Ubuntu 中启用热修复。

版本升级是不同的

本文讨论的更新是使你安装的 Ubuntu 保持最新。但它不包括版本升级(例如从 Ubuntu 16.04 升级到 18.04)。

Ubuntu 版本升级完全是另一回事。它更新整个操作系统核心。你需要在这个漫长的过程开始前做好备份。

作者:Abhishek Prakash 选题:lujun9972 译者:LazyWolfLin 校对:wxy

相关推荐

Go语言泛型-泛型约束与实践(go1.7泛型)

来源:械说在Go语言中,Go泛型-泛型约束与实践部分主要探讨如何定义和使用泛型约束(Constraints),以及如何在实际开发中利用泛型进行更灵活的编程。以下是详细内容:一、什么是泛型约束?**泛型...

golang总结(golang实战教程)

基础部分Go语言有哪些优势?1简单易学:语法简洁,减少了代码的冗余。高效并发:内置强大的goroutine和channel,使并发编程更加高效且易于管理。内存管理:拥有自动垃圾回收机制,减少内...

Go 官宣:新版 Protobuf API(go pro版本)

原文作者:JoeTsai,DamienNeil和HerbieOng原文链接:https://blog.golang.org/a-new-go-api-for-protocol-buffer...

Golang开发的一些注意事项(一)(golang入门项目)

1.channel关闭后读的问题当channel关闭之后再去读取它,虽然不会引发panic,但会直接得到零值,而且ok的值为false。packagemainimport"...

golang 托盘菜单应用及打开系统默认浏览器

之前看到一个应用,用go语言编写,说是某某程序的windows图形化客户端,体验一下发现只是一个托盘,然后托盘菜单的控制面板功能直接打开本地浏览器访问程序启动的webserver网页完成gui相关功...

golang标准库每日一库之 io/ioutil

一、核心函数概览函数作用描述替代方案(Go1.16+)ioutil.ReadFile(filename)一次性读取整个文件内容(返回[]byte)os.ReadFileioutil.WriteFi...

文件类型更改器——GoLang 中的 CLI 工具

我是如何为一项琐碎的工作任务创建一个简单的工具的,你也可以上周我开始玩GoLang,它是一种由Google制作的类C编译语言,非常轻量和快速,事实上它经常在Techempower的基准测...

Go (Golang) 中的 Channels 简介(golang channel长度和容量)

这篇文章重点介绍Channels(通道)在Go中的工作方式,以及如何在代码中使用它们。在Go中,Channels是一种编程结构,它允许我们在代码的不同部分之间移动数据,通常来自不同的goro...

Golang引入泛型:Go将Interface「」替换为“Any”

现在Go将拥有泛型:Go将Interface{}替换为“Any”,这是一个类型别名:typeany=interface{}这会引入了泛型作好准备,实际上,带有泛型的Go1.18Beta...

一文带你看懂Golang最新特性(golang2.0特性)

作者:腾讯PCG代码委员会经过十余年的迭代,Go语言逐渐成为云计算时代主流的编程语言。下到云计算基础设施,上到微服务,越来越多的流行产品使用Go语言编写。可见其影响力已经非常强大。一、Go语言发展历史...

Go 每日一库之 java 转 go 遇到 Apollo?让 agollo 来平滑迁移

以下文章来源于GoOfficialBlog,作者GoOfficialBlogIntroductionagollo是Apollo的Golang客户端Apollo(阿波罗)是携程框架部门研...

Golang使用grpc详解(golang gcc)

gRPC是Google开源的一种高性能、跨语言的远程过程调用(RPC)框架,它使用ProtocolBuffers作为序列化工具,支持多种编程语言,如C++,Java,Python,Go等。gR...

Etcd服务注册与发现封装实现--golang

服务注册register.gopackageregisterimport("fmt""time"etcd3"github.com/cor...

Golang:将日志以Json格式输出到Kafka

在上一篇文章中我实现了一个支持Debug、Info、Error等多个级别的日志库,并将日志写到了磁盘文件中,代码比较简单,适合练手。有兴趣的可以通过这个链接前往:https://github.com/...

如何从 PHP 过渡到 Golang?(php转golang)

我是PHP开发者,转Go两个月了吧,记录一下使用Golang怎么一步步开发新项目。本着有坑填坑,有错改错的宗旨,从零开始,开始学习。因为我司没有专门的Golang大牛,所以我也只能一步步自己去...