欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

linux(RPM包的查询,安装,升级和卸载,yum概述与源码编译安装)以及安装apache

程序员文章站 2022-03-16 08:15:36
...

RPM软件包

RPM机制封装的软件包文件拥有约定俗成的命名格式,一般使用“软件名 - 软件版本 - 发布次数.操作系统类型.硬件架构类型.rpm”的文件名形式。例如:
linux(RPM包的查询,安装,升级和卸载,yum概述与源码编译安装)以及安装apache

查询RPM软件包

rpm -qa:查看系统中以RPM方式安装的所有软件列表
rpm -qi :软件包的详细信息(查看指定软件包的名称,版本,许可协议,用途等描述信息)
rpm -ql :软件包当中的所有文件,显示指定的软件包在当前系统中安装的所有目录,文件列表
rpm -qf :根据指定文件或目录查看是属于哪个软件包安装的
rpm -qc:查看软件包所有配置文件。如conf cnf ini 都是配置文件
rpm -qd:查看软件包的文档

查询未安装的RPM软件包文件信息

使用命令的基本格式
rpm -qp[子选项] RPM包文件
常用选项有以下几种
-qpi
-qpl
-qpc
-qpd

安装,升级,卸载RPM软件包

使用rpm命令实现安装,升级,卸载软件包这些操作时,需要了解基本的命令选项。
-i:在当前系统中安装(Install)一个新的RPM软件
-e:卸载指定名称的软件包
-U:检查并升级系统中的某个软件包,若该软件包原来并未安装,则等同于“-i”选项
-F:检查并更新系统中的某个软件包,若该软件包原来并未安装,则放弃安装
–force:强制安装某个软件包,当需要替换现已安装的软件包及文件,或者安装一个比之前使用的软件版本更旧的软件时,可以使用此选项。
–nodeps:在安装或升级,卸载一个软件包时,不检查与其他软件包的依赖关系
-h:在安装或升级软件包的过程中,以“#”号显示安装进度
-v:显示软件安装过程中的详细信息

rpm -ivh:安装
rpm -evh:卸载
df -Th :查看挂载

Yum概述与常用命令

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装

Yum常用命令

安装软件(以foo-x.x.x.rpm为例)
yum install foo-x.x.x.rpm

删除软件
yum remove foo-x.x.x.rpm
或者
yum erase foo-x.x.x.rpm

升级软件
yum upgrade foo
或者
yum update foo

查询信息
yum info foo

搜索软件(以包含foo字段为例)
yum search foo

显示软件包依赖关系
yum deplist foo

清空yum仓库缓存
yum clean all

源代码编译安装

Linux操作系统之所以能够在十余年的时间里发展壮大以至于风靡全球,其开放源代码的特性是很重要的原因之一,及Linux操作系统中包括内核在内的所有软件都可以获得源代码,并且可以经过定制修改后编译安装。

编译源代码需要有相应 的开发环境,对于*软件来说,gcc和make是最佳的编译工具。Linux系统采用默认安装后没有安装gcc,我们可以使用rpm命令来安装gcc。所需的软件包在镜像文件中就有提供。
yum -y install gcc gcc-c++

编译安装的基本过程

获得所需安装的软件源代码以后,安装的基本过程包括解包,配置,编译及安装。大多数开源软件的安装都遵循这个过程。
linux(RPM包的查询,安装,升级和卸载,yum概述与源码编译安装)以及安装apache

解压缩

开源软件的源代码包一般为TarBall形式,扩展名为“.tar.gz”或“.tar.bz2”,都可以使用tar命令进行解压。
例:将httpd-2.2.6.tar.gz文件解包到/usr/src/目录中:tar zxvf httpd-2.2.6.tar.gz -C /usr/src/

配置

在编译应用程序之前,需要进入源代码目录,对软件的安装目录,功能选择等参数进行配置。
在Linux系统中通过源代码方式安装软件时,也可以将所有程序文件安装到同一个文件夹,当需要卸载软件时,只需将该文件夹删除即可。

将软件包httpd-2.2.6安装到/usr/src/local/apache
cd /usr/src/httpd-2.2.6/
./configure --prefix=/usr/local/apache

编译

编译的过程主要是根据Makefile文件内的配置信息(若上一步的配置操作失败,将无法进行编译),将源代码文件进行编译而生成二进制的程序模块,动态链接库,可执行文件等。
配置完成后,只需要在源代码目录中执行“make”命令即可执行编译操作。

安装

编译完成后,就可以执行“make install”命令将软件的执行程序,配置文件,帮助文档等相关文件复制到Linux系统中了,也就是应用程序的最后“安装”过程。同样是在源代码目录中执行命令。

安装apache

安装Apache----下面两个插件是httpd2.4以后的版本所需要
tar zxvf apr-1.6.2.tar.gz
tar zxvf apr-util-1.6.0.tar.gz
tar jxvf httpd-2.4.29.tar.bz2
mv apr-1.6.2 httpd-2.4.29/srclib/apr
mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

yum -y install \
gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

cd httpd-2.4.29

./configure \
--prefix=/usr/local/httpd \         ###指定安装目录
--enable-so \                                ###开启apache核心功能模块
--enable-rewrite \                         ###重写功能
--enable-charset-lite \                  ###支持字符集
--enable-cgi                                 ###通用网关接口,支持多种语言编写,规范


./configure \
--prefix=/usr/local/httpd \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi \
--enable-cgid \
--enable-deflate

make && make install    ###配置文件构建出二进制文件及安装

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd    

vim /etc/init.d/httpd                   ###添加注释
# chkconfig: 35 85 21                 ###35级别自动运行第85个启动第21个关闭
# description: Apache is a World Wide Web server

chkconfig --add httpd                ###将httpd加入到SERVICE管理器
vi /usr/local/httpd/conf/httpd.conf
ServerName www.yun.com:80
Listen 192.168.175.130:80


ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/

systemctl stop firewalld.service
setenforce 0

httpd -t
apachectl -t

service httpd start
netstat -anpt| grep 80
相关标签: linux