apt-get update
和 apt-get upgrade
的区别
以下内容基于
腾讯云
+
Xshell
+
Ubuntu 20.04
进行编写
刚开始接触 Linux
的朋友们,因为和 Windows
系统(视窗系统)完全不同的操作方式,看着命令行面板不知所措(相对来说 有图形化界面的 Linux
系统会友好很多),最想要的知道的就是,如何安装需要的软件。在 Windows
系统中,我们只需要下载相关软件的 .exe
安装程序,然后 双击
运行,按照安装程序的提示就可以一步步完成程序的安装,于是我们开始搜索“ Linux 如何通过命令行安装软件”。搜索结果会出现各种各样的参考内容,但是,所有的参考中,在 install
之前都会出现下面两条命令
sudo apt-get uodate
sudo apt-get upgrade
“既然搜到了解决方案,那按着解决方案说明的步骤,一步步使用指令就可以安装所需要的软件了”,这可能是大多数刚接触 Linux
系统的人的想法,很少有人会去思考这两句指令的意思和具体作用,但是为什么几乎所有的参考中都出现了这两句指令呢?这两句指令具体的意思和作用是什么?下面将做详细的介绍
Ubuntu
中的软件安装方法
每个 Linux
的发行版本,比如 Ubuntu
,都会维护一个自己的软件库,我们几乎所有的常用软件都在这个里面,这里面的软件绝对安全且觉得可以正常安装。在 Ubuntu
下,我们维护一个源列表,源列表中存储的是一些网址信息,里面的每一个网址就是一个源,每个源网址指向的数据标识着这台源服务器上有哪些软件可以安装使用。
# 使用下面的指令可以查看文件中的内容 文件为 源列表
sudo cat /etc/apt/sources.list
# 使用下面的指令可以编辑文件内容
sudo vim /etc/apt/sources.list
apt-get
是某些 Linux
发行版使用的一个“包管理器”(还有别的发行版使用yum等,以及brew等其他平台上的包管理器,工作原理类似)
包管理器的作用是从源(source)服务器那里下载最新的软件包列表,然后在你需要安装某个软件包(apt-get install
)的时候从列表里面查询这个软件包的版本信息、系统要求、翻译、依赖项(该软件正常运行必须安装的其它软件)并且添加到同时安装的列表里面,再查询所有安装列表里面的软件包的 .deb
文件下载地址,最后批量下载,自动分析安装顺序然后完成安装。
但是这个软件包列表是不会自动下载的,此时就要用到 sudo apt-get update
命令了,该命令的作用就是更新软件包列表。
下图为软件包列表更新过程 ↓
然而我们需要的软件更新目的还没有达到,sudo apt-get upgrade
命令的作用为,将本地已安装的软件版本与列表中已更新的软件版本进行比较以达到对已经安装的软件包本身进行升级(与 update(更新) 区别
)。
下图为软件更新过程 ↓
总而言之,在执行 install
命令之前,进行 sudo apt-get update
和 sudo apt-get upgrade
两条命令,是为了确保本地软件列表信息和已经安装的软件为均为最新,这样可以最大限度地确保新安装的软件包正常工作。