【Linux系统】第8节 Linux系统软件分类及安装

1 软件安装包分类

根据安装包是否经过封装,将其分为源码包与二进制包(又称为封装后的软件包),两种安装包的安装方式不同。

2 源码包

2.1 源码包简介

源码包就是一大堆源代码程序,是由程序员按照特定的格式和语法编写出来的。源码包一般包含多个文件,为了方便发布,通常会将源码包做打包压缩处理,Linux 中最常用的打包压缩格式为“tar.gz”,因此源码包又被称为 Tarball。GNU社区、官方网站都有源码包下载。

源码包需要我们自己去软件官方网站进行下载,包中通常包含以下内容

  • 1)源代码文件。
  • 2)配置和检测程序(如 configure 或 config 等)。
  • 3)软件安装说明和软件说明(如 INSTALL 或 README)。

使用源码包安装软件具有以下优点

  • 1)开源。如果你有足够的能力,则可以修改源代码,进行二次开发。
  • 2)可以自由选择所需的功能。
  • 3)因为软件是编译安装的,所以更加适合自己的系统,更加稳定,效率也更高。
  • 4)卸载方便。

使用源码包安装软件也有以下不足

  • 1)安装过程步骤较多,尤其是在安装较大的软件集合时(如 LAMP 环境搭建),容易出现拼写错误。
  • 2)编译时间较长,所以安装时间比二进制安装要长。
  • 3)因为软件是编译安装的,所以在安装过程中一旦报错,新手很难解决。

2.2 源码包安装注意事项

(1)需要进行编译,指定安装的路径和编译所需要的功能。
(2)必须要有C语言编码器。

2.3 源码包安装过程

(1)安装C语言编码器:gcc,输入命令yum -y install gcc
(2)下载源码包
(3)确定目录(系统单方面推荐存放和安装位置):

  • 1)源码包保存位置:/usr/local/src
  • 2)软件安装位置:/usr/local/xxx

(4)解压缩,并进入解压缩后的目录,可看到软件包有很多文件。先了解软件是干什么用的(如resdme),查看软件的安装方法(如install)
(5)软件的配置与检测。在解压缩后的目录下输入命令:./configure --prefix=/usr/local/python3,其中prefix=后面的为软件的安装路径。通过配置脚本指定安装路径和功能,并且生成makefile编译脚本文件,即:

  • 1)指定安装路径
  • 2)检测系统环境是否支持安装,是否有缺省
  • 3)将定义好的功能选项和环境信息写入Makefile文件

(6)编译。在解压缩后的目录下输入命令:make。通过make命令控制makefile文件进行顺序编译,使用gcc将源码包翻译成机器语言,如果报错,可清空临时文件:make clean
(7)编译安装。在解压缩后的目录下输入命令:make install。将编译好的文件安装到configure指定的目录下
(8)启动服务。安装方法中会告诉如何启动服务。
(9)卸载:直接把configure指定的安装目录全部清空即可(rm -rf 目录名)。

tips:
apache的主页在安装目录下的htdocs文件夹下。

3 二进制包安装过程

3.1 二进制包简介

相比源码包,二进制包是在软件发布时已经进行过编译的软件包,所以安装速度比源码包快得多(和 Windows 下软件安装速度相当)。也正是因为已经进行通译,大家无法看到软件的源代码。

使用二进制包安装软件具有以下 2 点好处

  • 1)安装便捷。包管理系统简单,只通过几个命令就可以实现包的安装、升级、査询和卸载。
  • 2)安装速度比源码包安装快得多。

使用 RMP 包安装软件有如下不足

  • 1)经过编译,不能在看到源代码。
  • 2)功能选择不如源码包灵活。
  • 3)有些软件具有依赖关系。有时我们会发现,在安装软件包 a 时需要先安装 b 和 c,而在安装 b 时需要先安装 d 和 e。这就需要先安装 d 和 e,再安装 b 和 c,最后才能安装 a。比如,我买了一个漂亮的灯具,打算安装在客厅里,可是在安装灯具之前,客厅需要有顶棚,并且顶棚需要刷好油漆。安装软件和装修及其类似,需要有一定的顺序,有时依赖性会非常强。
  • 4)需要根据系统的类型选择不同后缀名的安装包。
  • 5)不能指定安装路径,只能按照默认的安装路径安装。

二进制包是 Linux 下默认的软件安装包,因此二进制包又被称为默认安装软件包。目前主要有以下 2 大主流的二进制软件包:

  • 1)rpm包:red hat package manerger, 后缀为rpm。功能强大,安装、升级、査询和卸载非常简单方便,因此很多 Linux 发行版都默认使用此机制作为软件安装的管理方式,例如 Fedora、CentOS、SuSE 等。
  • 2)deb 包:安装在Debian Linux 上的包,后缀为deb。主要应用在 Debian 和 Ubuntu 、kali中。

tips:
1)为什么我们安装系统时不需要根据依赖关系去安装呢?
因为光盘中有依赖关系列表。
在这里插入图片描述

3.2 CentOS二进制包安装及管理

3.2.1 RPM包的命令管理

本地管理,软件包已经下载或安装到本地。

  • rpm -ivh 包全名:i为安装,v为显示详细信息和h为显示安装进度
  • rpm -Uvh 包全名:升级软件包
  • rpm -e 包名:卸载
  • rpm -q 包名:q为:query查询,查看安装的软件包的版本,源码安装的包不可查
  • rpm -qa :查询所有安装过的的rpm软件包
  • rpm -qi 包名:查看包详细信息
  • rpm -ql 包名:查看安装的软件包的所有安装位置
  • rpm -qf 文件名:通过任意文件名,查看它所属的包全名

3.2.2 RPM包的安装过程

要求:以安装CentOS 7 x86_64中的tree安装包为例讲述安装过程。
(1)首先进入到CentOS 7 x86_64的目录中,其rpm软件包放在Packeges目录中,在Packeges目录中搜索出带关键字tree的文件。
在这里插入图片描述
grep  [选项]  ”模式“  [文件]
(2)确认系统是否有安装过该软件。输入命令 rpm -qa | grep "tree",查询是否安装过tree包,图中可看出并没有安装过。
在这里插入图片描述
(3)查看该软件包的作用。输入命令rpm -qpi tree-1.6.0-10.el7.x86_64.rpm,查看该软件的详细信息,其中description为描述该软件的作用。
在这里插入图片描述
在这里插入图片描述
(4)确认该软件的安装路径,输入命令rpm -qpl tree-1.6.0-10.el7.x86_64.rpm,查询该软件安装后的安装路径。注意,由于是在package目录下,因此包均用的相对路径。
在这里插入图片描述
(5)安装软件。输入命令rpm -ivh tree-1.6.0-10.el7.x86_64.rpm,安装软件。其中i为安装,v为显示详细信息和h为显示安装进度。
在这里插入图片描述
(6)使用软件。输入命令tree /boot验证下该软件的功能。
在这里插入图片描述
(7)假如需要卸载软件。在任何目录下均可,输入命令rpm -e tree.并验证下是否卸载成功。
在这里插入图片描述

3.2.3 RPM包的yum管理:

云管理,软件包需要联网下载,也可更改配置使用本地yum源。
yum安装会自动解决安装的依赖性问题,即安装时需要依赖包时会自动通过服务器下载并安装,不用用户手动安装

  • yum list:查看yum上所有可用软件包
  • yum search 包名:通过部分包名查看可用可用软件包
  • yum -y install 包名:安装,(-y)是安装时不询问
  • yum update 包名:升级软件包,如果省略包名则升级所有,包括liunx内核
  • yum remove 包名:卸载软件,但会卸载全部依赖,谨慎!
  • yum grouplist:查看所有安装的组,比如桌面、输入法等
  • yum groupinstall 软件组名:安装软件包组,卸载用groupremove

tips:
1)操作系统yum源文件默认路径,yum源文件指定了操作系统依赖关系列表的位置
在这里插入图片描述
2)打开系统自带的一个yum源文件,查看yum源文件的格式。
在这里插入图片描述
在这里插入图片描述

3.3 Kali二进制包安装及管理

3.3.1 dpkg方法安装deb包

总体安装思路:

  • 1)找到相应的软件包,比如soft.version.deb,下载到本机某个目录
  • 2)打开一个终端,cd soft.version.deb所在的目录;
  • 3)输入dpkg -i soft.version.deb

相关命令:

  • 1) 查询命令用法:dpkg --help
  • 2)安装:dpkg –i deb的软件包名
  • 3)卸载:dpkg –e 软件名
  • 4)查询当前系统安装的软件包:dpkg –l 软件名

3.3.2 apt方式安装deb包

(1)打开一个终端。
(2)查询软件的名称或相关信息:apt-cache search software
(3)如果2中找到了软件software,则用命令安装软件:apt-get install software
(4)卸载一个已安装的软件包:apt-get remove software

4 安装示例

后续有需要安装具体软件时再补充具体安装示例。

5 归纳

(1)掌握安装包分为源码包与二进制包(又称为封装后的软件包)。
(2)熟悉不同版本操作系统中源码包的安装方法。
(3)熟悉不同版本操作系统中二进制软件包的安装方法。
(4)掌握yum方式安装软件包。

参考文章

[1] 《linux安装软件的几种方式(kali平台)和一些实用的软件(持续更新)》
[2] 《千锋源码包安装视频》
[3] 《千锋rpm安装方法视频》
[4] 《千锋yum安装方法视频》
[5] 《Linux软件包(源码包和二进制包)》
[6] 《Linux的RPM和源码包(CentOS)》
[7] 《Kali及其他Linux系统软件分类及安装》

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值