前言
CentOS系统中安装一个软件一般有三种方式:yum 安装、rpm安装、源码编译安装
yum安装
yum安装软件包是从本地镜像出库或远程仓库中获取软件的,如果有网络,可以直接联网安装,也可以下载rpm包来安装,如下:
[root@master ~]# yum install httpd #直接联网安装
[root@master ~]# yum install httpd.1.2.0.rpm #事先下载rpm包,等价于rpm -iv httpd.1.2.0.rpm
yum安装软件联网的话可以自动解决依赖问题,非常方便,但是yum、rpm安装的软件无法自定义安装路径,这一点就有点不太好了。
rpm安装
rpm是红帽的包管理工具,其一般是安装以后缀.rpm结尾的二进制包,如下:
[root@master ~]# rpm -ivh /root/samba/samba-common-tools-4.10.16-15.el7_9.x86_64.rpm
yum其实可以安装rpm包,而不管是通过yum安装还是通过rpm安装,其安装路径是无法自定义的,yum安装与rpm安装两者的区别就是,yum能自动解决依赖问题,而rpm安装需要你自己手动解决依赖问题。
源码包安装
源码包,顾名思义就是程序的原始代码,下载源码包后,需要你解压,然后./configure --prefix=xxxx 预编译,即检测环境并指定软件安装目录,生成Makefile,再make 编译生成可执行的二进制文件,最后make install 真正安装。
./configure:预编译,它是用来检测你的安装平台的目标特征的,比如它会检测是否有CC或GCC,是否有安装所需要的依赖包,然后生成Makefile文件,你也可以指定很多参数,如--prefix=安装目录等;
make -j 4:是用来编译的,它从Makefile中读取指令,然后编译,加 -j 4参数表示开启4个内核进行并行编译;
make install:是正真用来安装的,它也从Makefile中读取指令,安装到指定的位置。
注意:对于make出错的情况,需要先解决错误,然后最好使用 make clean
命令先清除make失败的内容然后再重新make编译。
源码包安装的软件卸载
进入到之前解压的源码包位置、make uninstall(卸载安装)、make distclean(卸载编译和配置过程) 、删除软件安装目录;
以上是标准的卸载源码编译安装的软件的步骤,如果觉得麻烦,可以直接删除软件的安装目录及相关命令文件都可以。
总结
1、yum安装
[root@master ~]# yum install http -y #yum安装软件,自动解决依赖
2、rpm安装
[root@master ~]# rpm -ivh samba-common-tools-4.10.16-15.el7_9.x86_64.rpm #rpm安装软件,需要手动解决依赖
3、源码编译安装
[root@master ~]# tar -zxvf http-2.7.0.tar.gz -C / #源码编译,先解压源码包
[root@master ~]# mkdir /usr/local/http-2.7.0 && cd /usr/local/http-2.7.0 #创建目录
[root@master http-2.7.0]# ./configure --prefix=/usr/local/http-2.7.0 #预编译并制定安装参数
[root@master http-2.7.0]# make -j 4 #编译,开启4个CPU并行编译
[root@master http-2.7.0]# make install #安装