apt-get是某些linux发行版使用的一个“包管理器”(还有别的发行版使用yum等,以及brew等其他平台上的包管理器,工作原理类似)。
包管理器的作用是从源(Source)服务器那里下载最新的软件包列表,然后在你需要安装某个软件包(apt-get install)的时候从列表里面查询这个软件包的版本信息、系统要求、翻译、依赖项(该软件正常运行必须安装的其它软件)并且添加到同时安装的列表里面,再查询所有安装列表里面的软件包的.deb文件下载地址,最后批量下载,自动分析安装顺序然后安装完成。
但是这个软件包列表是不会被自动下载的,需要用户使用apt-get update更新。这样,apt-get才能知道每个软件包的最新信息,从而正确地下载最新版本的软件。
至于apt-get upgrade,则是对已经安装的软件包本身进行更新的过程。由于确定要更新的软件包需要对本地安装的版本和列表的版本进行比较,所以要在update以后运行这一条。
要求在install操作之前执行update和upgrade,实际上是确保本地软件列表信息和已安装软件均为最新的过程。这样做可以最大限度地确保新安装的软件包正常工作。
总而言之,update是更新软件列表,upgrade是更新软件。