7.1 安装软件包的三种方法
在Linux下,可以有三种软件包的安装方法:
(1)、rpm安装。
(2)、yum安装。
(3)、源码包安装。
7.2 rpm包介绍
RPM(Red Hat Package Manager),是以一种数据库记录的方式将我们所需要的套件安装到Linux主机的一套管理程序。RPM包是预先在Linux机器上编译并打包的文件,安装非常快捷,缺点是安装环境必须与编译时的环境一致,包与包之间存在着相互依赖的情况,卸载包时需要先把依赖的包卸载,如果依赖的包是系统所必须的,就不能卸载这个包,否则系统会崩溃。
当我们挂载光驱后,会在/mnt/Packages目录下看到很多后缀为.rpm的文件,这些文件就是RPM包。
7.3 rpm工具用法
RPM工具的常用命令:
1、安装RPM包
格式为:rpm -ivh 包名
其中,参数i表示安装,v表示可视化,h表示显示安装进度。此外,--force表示强制安装,--nodeps表示当要安装的RPM包依赖于其他包时,即使其他包没有安装,也要个包。
2、升级RPM包
格式为:rpm -Uvh filename,其中,-U表示升级。
3、卸载RPM包
格式为:rpm -e filename
4、查询一个包是否已安装
格式为:rpm -q RPM包名
rpm -qa 为查询当前系统所有已安装的RPM包。
5、查看已安装的RPM包的相关信息
格式为:rpm -qi 包名
6、列出一个RPM包的安装文件
格式为:rpm -ql 包名
7、列出某个文件属于哪个RPM包
格式为:rpm -qf 文件的绝对路径
7.4 yum工具用法
yum工具的优点在于可以联网去下载所需要的RPM包,然后自动安装。如果要安装的RPM包有依赖关系,yum工具会帮我们依次安装所有相关的RPM包。
1、列出所有可用的RPM包
yum list命令可以列出所有的RPM包:
2、搜索RPM包
yum search [相关关键词]
还可以用grep来过滤,从而找到相应的RPM包:
3、安装RPM包
yum install [ -y ] [RPM包名],如果不加-y,则会以与用户交互的方式来安装。
4、卸载RPM包
yum remove [ -y ] [RPM包名]。
5、升级RPM包
yum update [ -y ] [RPM包名]
7.5 yum搭建本地仓库
Linux系统不能联网时,就不能使用联网的yum源,这时就需要我们在Linux系统下使用光盘制作yum源,具体操作步骤如下:
(1)、挂载光盘。
(2)、删除/etc/yum.repos.d目录下所有的repo文件,删除前,先做一个备份。
(3)、创建新文件dvd.repo,加入如下内容:
(4)、刷新repos生成缓存。
此时,就可以使用yum命令安装所需要的软件包了,比如,我们可以安装一个tftp的RPM包:
7.6 yum更换国内源
在操作前,我们先恢复之前的yum源:
yum list 是为了生成缓存,方便下次使用。
然后删除CentOS-Base.repo这个文件,再用wget命令去下载国内163源。
这样就已经更换了yum源了。
7.7 yum下载rpm包
之前的操作,我们都是下载RPM包,然后去安装,有时候我们需要下载RPM包,但不安装,这时候就可以用如下命令:
yum install 包名 -y -- downloadonly
这样虽然下载了RPM包,但没有保存到我们想要指定的目录中,而是默认保存在/var/cache/yum/x86_64/7base(updatex、extras)等,它跟yum list最右侧的字符串是一致的,那么,我们怎么去指定保存的目录呢?
下载到指定目录的命令如下:
yum install 包名 -y --downloadonly --downloaddir=/usr/local/src
那么,如果这个RPM包已经安装过了,使用命令yum install --downloadonly就不起作用了,它会提示这个包已经安装过,下载不来,此时应该怎么办呢?
我们可以重新安装这个包:
yum reinstall -y bash --downloadonly
7.8 源码包安装(上)
安装源码包,需要我们把源代码编译成可执行的二进制文件,如果我们能读懂这些源代码,就可以修改这些源代码的自定义功能,然后再按我们的需求编译。
源码包的编译用到了Linux系统里的编译器,Linux上的C语言编译器为gcc,如果没有安装,可以使用命令yum install -y gcc来安装。
安装源码包有3个步骤:
(1)、./configure。
(2)、make。
(3)、make install。
下面我们以httpd在源码包安装为例:
1、下载源码包。我们一般把下载的源码包放在/usr/local/src/目录下。
2、解压源码包。
3、配置相关的选项并生成Makefile。
首先,进入解压后的源码目录,在配置之前可以查看可用的配置参数。
常用的配置选项有--prefix=PREFIX,它的意思是定义软件包的安装路径。这里我们把Apache安装在/usr/local/apache2目录下,该选项的配置为--prefix=/usr/local/apache2。
然后验证这一步是否成功。
返回值是0,说明执行成功,如果是非0,则说明不成功。此时,就成功生成Makefile了。
4、进行编译。
生成Makefile后,需要进行编译:
编译后再使用命令echo $?验证是否编译成功。
7.9 源码包安装(下)
源码包编译完成后,我们就可以安装源码包了,安装源码包的命令为make install。
使用命令echo $?验证是否已正确安装,执行完这一步,则会在/usr/local/apache2目录下增加许多目录,用ls查看该目录:
至此,Apache源码的安装就完成。