如果说操作系统是计算机的骨骼与肌肉,能让你有一个强健的体魄,那么软件就是建筑其上的灵魂,没有软件的计算机是没有灵魂的。计算机之所以能在人们的生活中如此普及,更多的是因为大量的软件给人们的生活带来了极大的方便和效率的提高。所以决定一个操作系统的受欢迎程度,很大程度上取决于其上运行的软件是否足够丰富、质量是否出众。Linux 系统之所以更受企业偏爱,就是因为它除了本身操作系统非常稳定之外,更是因为其上可运行的软件相当丰富。而针对个人PC市场因为其没有友好的GUI交互,所以对于非专业人士可能显得有些晦涩,这也是为什么 Windows 在个人PC市场有着较好的推广。不过可能也正是 Windows 过重的GUI 设计,很多习惯Linux 系统的人会觉得在 Windows 上的操作过于繁琐,例如用过 WIndows 的伙伴应该都有感觉,在 Windows 上安装软件感觉似乎只要双击就可以安装了,非常方便,但其实因为 UI 的介入,避免不了过多依赖人为的选择,所以安装一个软件经常是要多次确认点击 Next->Next->Next...,这对于习惯 Linux 血统的人群还是比较抓狂的。当然也不是说Linux系统就真的不适合非专业人士,具有Unix 血统的 Mac OS 在复杂的GUI 和简化的逻辑处理上就达到了一个比较好的平衡,同时有过WIndows 和 Mac OS 体验的伙伴们应该深有体会。
Linux 安装的黑历史
Linux 早期安装软件确实是比较痛苦的一件事,很多都是只有代码级别的软件,需要先下载代码到本地,然后配置依赖库,再然后本地打包后才能安装。整个过程对于没有编程基础的人确实有些云山雾绕的感觉。不过现在很多开发人员都会把软件打包成更易于安装的预编译包,使软件安装极大程度的简化了。下面就详细讲解一下 Linux 系统上软件安装的方式。
Linux 安装开启傻瓜模式
说到Linux的软件安装,首先科普一个概念: PMS(package manager system), PMS是集成在 Linux 系统上的一个包管理系统,它利用数据库来记录和管理系统上的安装包内容,例如:a.系统上安装了哪些包,安装包的版本信息;b. 每个包安装了什么文件,等等。我们需要安装的软件包都存储在远程服务器上,称之为 Repository,PMS 通过访问互联网来从 Repository 获取和安装需要的包,以及包的依赖项。但是因为Linux 有着不同的分支,所以目前还没有统一的 PMS 标准,基于Debian的发行版(如Ubuntu)使用的是dpkg,基于RedHat的发行版(如CentOS)则用rpm命令。当然这两条命令只是 PMS 在不同发行版上的底层核心,针对不同发行版的 PMS,其上有很多强大的 PMS 集成工具,让你的安装更简单。
1.基于 Debian 系统的PMS工具
a) apt-getb) apt-cachec) aptitude
apt-get 的使用方法我曾在《3分钟搭建Docker学习Linux,不用再为搭建虚拟机呆懵了》一文中做过简单的介绍,此处就不再赘述,apt-get 也是Debian 下强大的包管理工具,需要的伙伴可自行去我的历史文章中搜索。接下来我详细讲解一下使用最普遍的 aptitude 命令。首先在Shell 中输入"aptitude --version" 查看是否安装了 aptitude, 如果没有安装,可以通过"apt-get install aptitude" 命令先进行安装。
使用aptitude 查看安装包信息
在 Shell 中输入 aptitude 就可以直接进入 aptitude 工作模式,如图:
![c17291fc70e4a5ab86ccc237449a1059.png](https://i-blog.csdnimg.cn/blog_migrate/59c27ed0948fb8b475ae64de09275f67.jpeg)
可以通过上下方向键选择不同状态的包选项,选定后通过左右方向键展开详细的内容,如图以选择 Installed Packages 为例,展开详细内容.
![b1902db474ca247ea5cb051a08e7db71.png](https://i-blog.csdnimg.cn/blog_migrate/dcd06c29ddfbe2d9a96ffcaa11d6c4da.jpeg)
选定安装包后,按回车可以显示包的详细信息,如图,以 apt 为例,选定后回车;
![b00ef04e4ef949657da92f696f4634de.png](https://i-blog.csdnimg.cn/blog_migrate/3f37933380aca520951b61f9439166dd.jpeg)
也可以通过命令直接查看已知包的详细信息
aptitude show apt #显示 apt 详细信息
使用aptitude 安装软件包
aptitude search twine # 在 Repository 搜索 twine 包是否存在。aptitude install twine #安装 twine 软件包。aptitude safe-upgrade # 升级本地所有安装包到最新版本
![2791aeac7bedfc94a136d3c1a0b56232.png](https://i-blog.csdnimg.cn/blog_migrate/b02c1c1ba9a5cc81be63e23bd74b8a96.jpeg)
使用 aptitude 卸载软件包
aptitude purge twine #卸载 twine 包及其相关数据和配置aptitude remove twine # 只卸载 twine,保留相关数据和配置
![59713287d8b083379e269d7ef5094641.png](https://i-blog.csdnimg.cn/blog_migrate/fa22b33079d3b5a845eb7e62e54e688c.jpeg)
aptitude purge 示例
aptitude 从哪里下载软件包
aptitude 搜索和下载的服务器地址存在配置文件中"/etc/apt/sources.list