Ubuntu手工进行软件更新升级的两种方法

 上一篇文章说了Ubuntu系统自动更新的配置,它适合于经常更新或者干脆不更新的情况,还有一种情况就是偶尔需要更新,也就是根据需要手工更新系统或软件包。
 这有两种方法,一种是图形界面的方法,一种是命令行的方法。如果有图形桌面,建议使用图形桌面的方法,这种方法可以自由选择要更新的软件包,比较方便。

一、基于图形桌面来更新

1、本文以Ubuntu16为例,Ubuntu18与此类似。有一个工具叫“软件更新器”,它的图标长得像大写字母A。在Ubuntu主界面点“搜索”(Ubuntu18中是“显示应用程序”),然后输入“update”,如下图所示。
Ubuntu手工进行软件更新升级的两种方法_第1张图片
2、打开软件更新器,并将其固定到启动栏(以后使用方便),如下图所示。打开后系统会马上检测可升级的软件包,在界面上列出了可以更新升级的软件列表。你可以在想更新的软件包前面打勾,选完后点“立即安装”,如下所示。
Ubuntu手工进行软件更新升级的两种方法_第2张图片
3、中间如果弹出验证框,输入登陆密码就可以了。
Ubuntu手工进行软件更新升级的两种方法_第3张图片
4、接下来等待安装过程结束即可。
Ubuntu手工进行软件更新升级的两种方法_第4张图片
5、可以看到图形桌面的更新方法非常简单直观。安装了大量更新后,最好重启一下。

二、基于命令行更新软件包的方法

1、Ubuntu主要更新升级命令介绍
我们先来看看这几个命令的功能和区别,这几个命令看起来很相似,作用上有较大差别千万不要弄错了。

  • 1)、apt-get update
    从服务器获取全部可用的、最新的软件包列表,并缓存到本地电脑。执行效果如下。
hzq@ubuntu:~$ sudo apt-get update
[sudo] hzq 的密码: 
命中:1 http://mirrors.yun-idc.com/ubuntu xenial InRelease
命中:2 http://mirrors.yun-idc.com/ubuntu xenial-updates InRelease
命中:3 http://mirrors.yun-idc.com/ubuntu xenial-backports InRelease
命中:4 http://mirrors.yun-idc.com/ubuntu xenial-security InRelease
正在读取软件包列表... 完成  
hzq@ubuntu:~$
  • 2)、apt-get upgrade
    这个命令,会把本地已安装的软件,与刚下载的软件列表里对应软件进行对比,如果发现已安装的软件版本太低,就会提示你更新。upgrade 不会删除在列表中已经没有的软件包,也不会安装有依赖需求但尚未安装的软件包。执行效果如下。
hzq@ubuntu:~$ sudo apt-get upgrade
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
正在计算更新... 完成
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
hzq@ubuntu:~$
  • 3)、apt-get full-upgrade
    根据列表信息,对需要升级的软件包进行完整安装。也就是先删除软件,然后完整地重新安装整个软件。所以要注意,这个功能是会删除软件的,所以执行此命令之前最好备份一下。执行效果如下。
hzq@ubuntu:~$ sudo apt-get full-upgrade
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
正在计算更新... 完成
下列软件包是自动安装的并且现在不需要了:
  linux-headers-4.15.0-45 linux-headers-4.15.0-45-generic linux-image-4.15.0-45-generic
  linux-modules-4.15.0-45-generic linux-modules-extra-4.15.0-45-generic snapd-login-service
使用'sudo apt autoremove'来卸载它(它们)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
hzq@ubuntu:~$
  • 4)、apt-get dist-upgrade
    dist-upgrade 可能会为了解决软件包冲突而删除一些已安装的软件包,也可能会为了解决软件包依赖问题安装新的软件包。执行效果如下。
hzq@ubuntu:~$ sudo apt-get dist-upgrade
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成       
正在计算更新... 完成
下列软件包是自动安装的并且现在不需要了:
  linux-headers-4.15.0-45 linux-headers-4.15.0-45-generic linux-image-4.15.0-45-generic
  linux-modules-4.15.0-45-generic linux-modules-extra-4.15.0-45-generic snapd-login-service
使用'sudo apt autoremove'来卸载它(它们)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
  • 5)、apt list --upgradable
    根据列表对比信息,看看有哪些可更新的软件,如果没有则显示为空。执行效果如下。
hzq@ubuntu:~$ sudo apt list --upgradable
正在列表... 完成
hzq@ubuntu:~$
  • 6)、apt-get autoremove
    一般来说,更新完成之后会有一些不需要的旧组件需要清除。此时使用apt autoremove即可完成清理。执行效果如下。
hzq@ubuntu:~$ sudo apt-get autoremove
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列软件包将被【卸载】:
  linux-headers-4.15.0-45 linux-headers-4.15.0-45-generic linux-image-4.15.0-45-generic
  linux-modules-4.15.0-45-generic linux-modules-extra-4.15.0-45-generic snapd-login-service
升级了 0 个软件包,新安装了 0 个软件包,要卸载 6 个软件包,有 0 个软件包未被升级。
解压缩后将会空出 335 MB 的空间。
您希望继续执行吗? [Y/n] y
(正在读取数据库 ... 系统当前共安装有 251733 个文件和目录。)
正在卸载 linux-headers-4.15.0-45-generic (4.15.0-45.48~16.04.1) ...
正在卸载 linux-headers-4.15.0-45 (4.15.0-45.48~16.04.1) ...
正在卸载 linux-modules-extra-4.15.0-45-generic (4.15.0-45.48~16.04.1) ...
正在卸载 linux-image-4.15.0-45-generic (4.15.0-45.48~16.04.1) ...
/etc/kernel/postrm.d/initramfs-tools:
update-initramfs: Deleting /boot/initrd.img-4.15.0-45-generic
/etc/kernel/postrm.d/zz-update-grub:
Generating grub configuration file ...
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Found linux image: /boot/vmlinuz-4.15.0-65-generic
Found initrd image: /boot/initrd.img-4.15.0-65-generic
Found linux image: /boot/vmlinuz-4.15.0-64-generic
Found initrd image: /boot/initrd.img-4.15.0-64-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
done
正在卸载 linux-modules-4.15.0-45-generic (4.15.0-45.48~16.04.1) ...
正在卸载 snapd-login-service (1.33-0ubuntu0.16.04.1) ...
正在处理用于 dbus (1.10.6-1ubuntu3.4) 的触发器 ...
hzq@ubuntu:~$

2、通常情况升级更新步骤
下面给出一般情况的操作流程,你当然可以根据上面命令的含义自己组合使用。

sudo apt-get update
sudo apt-get upgrade
sudo apt list --upgradable //如果没有了,就直接重启
sudo apt-get dist-upgrade
sudo reboot
sudo apt list –upgradable //重启之后再看一眼

如果更新的软件比较多最好重启一下。

最后

 无论是无论是通过图形桌面更新还是命令行更新,效果都是一样的,不过既然是手工更新,建议还是通过图形桌面比较方便。
 欢迎交流分享,讨论补充~ ~

参考文章《VMware虚拟机安装Ubuntu16-18系统超详细过程(含下载地址)》
参考文章《怎么修改Ubuntu更新源服务器为国内地址》

转载请注明本文地址:https://blog.csdn.net/davidhzq/article/details/102671746

你可能感兴趣的:(linux,Ubuntu)