软件包管理实战

mac2026-06-04  5

阅读这片博客最好先看会压缩与解压缩:

https://blog.csdn.net/weixin_44571270/article/details/102862078

 

本篇博客向读者介绍Linux系统软件的安装、卸载、配置、维护以及如何构建企业本地YUM光盘源及HTTP本地源。

 

学前须知:

1、Linux软件包管理大致可分为二进制包、源码包,使用的工具也各不相同。Linux常见软件包分为两种,分别是源代码包(Source Code)、二进制包(Binary Code),源代码包是没有经过编译的包,需要经过GCC、C++编译器环境编译才能运行,二进制包无需编译,可以直接安装使用。

2、怎么区分二进制包、源码包?

(1)从包的后缀判断:.tar.gz、.zip、.rar结尾的包通常称之为源码包,以.rpm结尾的软件包称之为二进制包。

(2)第一种判别方法并不准确,最准确的方法是基于包里的源码文件的后缀来判断,例如包含.h、.c、.cpp、.cc等结尾的源码文件,称之为源码包,而代码里面存在bin目录可以执行文件,称之为二进制包。

 

一、RPM软件包管理

          1、全称:红帽包管理工具

          2、管理范围:RPM工具常用于管理.rpm后缀结尾的软件包

          3、命令格式:RPM 选项 PACKAGE_NAME

4、常见参数详解:

                               -a                                          查询所有已安装的软件包

                               -q                                          表示询问用户,输出信息

                               -l                                           打印软件包的列表

                              -i                                           显示软件的信息,包括名称,版本,描述

                               -v                                          打印输出详细信息

                               -U                                         升级RPM软件包

                               -e                                         卸载rpm软件包

                               --force                                表示强制,强制安装或卸载

                               --nodeps RPM                   软件包不依赖

 

 

 

5、RPM 常用参数组合:

                                        rpm           -q                  httpd                                               检查httpd包是否安装;

                                        rpm           -ql                 httpd                                               查看软件安装的路径;

                                        rpm           -qi                 httpd                                               查看软件安装的版本信息;

                                        rpm           -e                  httpd                                               卸载httpd软件;

                                        rpm           -qa|grep       httpd                                               检查httpd相关的软件包是否安装。

                                        rpm           -ivh               httpd-2.4.10-el7.x86_64.rpm       安装httpd软件包;

                                        rpm           -Uvh             httpd-2.4.10-el7.x86_64.rpm       升级httpd软件;

6、特别说明

注意:RPM这个命令比较特殊,它只能在特定目录下执行。

二、源码包软件安装

标准的.zip、tar结尾的源代码包则不能使用RPM工具去安装、卸载及升级,源码包安装有三个步骤,如下:

         1、./configure   预编译,主要用于检测系统基准环境库是否满足,生成MakeFile文件;

         2、make         编译,基于第一步生成的makefile文件,进行源代码的编译;

         3、make install   安装,编译完毕之后,将相关的可运行文件安装至系统中;

使用make编译时,Linux操作系统必须有GCC编译器,用于编译源码。

 

1)Nginx.org官网下载Nginx-1.13.0.tar.gz包

wget http://nginx.org/download/nginx-1.13.0.tar.gz

2)Nginx源码包解压

tar  -xvf nginx-1.13.0.tar.gz

3)源码Configure预编译,需进入解压后的目录执行./configure指令,分号“;”表示连接多个命令。

cd nginx-1.13.0;./configure

4)make编译

make

5)make  install安装

make  install

注意:从主机访问虚拟机中配置的nginx时,需要主机和虚拟机处于互联状态,且关闭虚拟机的防火墙。

关闭防火墙命令:Systemctl stop firewall

访问到的nginx默认页面如下:

三、Yum软件包管理

1、首先挂载光盘到/mnt/目录下

2、配置yum本地源

3、yum的使用

安装软件:

卸载软件:

更新软件:

yum update httpd

其他常用命令:

yum search YUM搜索软件包; yum list httpd 显示指定程序包安装情况httpd; yum check-update 检查可更新的程序; yum info httpd 显示安装包信息httpd; yum provides "*/rz" 列出rz命令由哪个软件包提供; yum clean all 清除缓存目录下的软件包及旧的headers。

4、能力提升

(1)配置官方repo源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

释义:-O参数指定下载文件的输出地址。将阿里云yum源的文件下载到本地的/etc/yum.repos.d/CentOS-Base.repo文件中去。

注意配置了官方repo源,就不用挂载光盘了。

 

(2)学会分析出错

这个错误是我在安装httpd出现的。

分析出错原因:httpd的一个软件需要另外一个软件包,但是另外一个软件包已经安装了更新版本的这个软件包,导致这个需要的软件包无法安装。

解决方法:

将这个软件包移除,再安装httpd即可。

 

最新回复(0)