码迷,mamicode.com
首页 > 系统相关 > 详细

Linux之Redhat系列程序包管理

时间:2015-12-25 23:58:50      阅读:462      评论:0      收藏:0      [点我收藏+]

标签:apache安装   yum   rpm   编译   

Linux之Redhat系列程序包管理


    安装、升级和卸载应用软件是每个系统不可或缺的一部分;对于在企业使用越来越广泛的Linux操作系统而言,强大而简洁的程序包管理机制为工程师们带来了很大的便利;下文主要介绍在RedHat系列的系统上如何使用RPM/YUM/编译三种方式去管理程序包。



一、RPM程序包管理

    PRM全称是Red Hat Package Manager(RedHat 包管理器)。Linux RPM软件包的命名有一定的规律:名称-版本-修正版-类型.rpm

    例如:

       技术分享 

    RPM命令详解:

        功能:

    安装、卸载、升级、查询和数据库维护

        用法:

            rpm [OPTIONS] [PACKAGE_NAME]

                -i:安装软件

                --test:测试安装

                -h:显示“#”进度条

                -v:显示详细信息

                -e:卸载

                -U:升级安装

                -q:查询指定软件包的信息

                --builddb,--initdb:数据库维护

            以上选项可结合使用

        安装:rpm -ivh Package_Name

             -v:显示详细信息

            -h:显示“#”的进度条

            -i:安装  

        技术分享

            其余安装选项:

                --nodeps:忽略依赖关系

                --replacepkgs:重新安装

                --test:测试安装

        技术分享

        

        卸载:rpm -e 软件名

        技术分享


        升级:rpm -Uih Package_Name

            升级和安装的选项差不多,这里就不做过多介绍

           额外选项:

             --force:强制升级 

         


        查询:rpm -q[a|f|p|l|i|c|d|R] 软件名

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

            技术分享

            -f:查询文件所属软件包

            技术分享

            -p:查询软件包(通常用来查看未安装的软件)

                用法:rpm -qp 软件包名

                    -qpi:该软件的详细信息                

                    -qpl:该软件中的列表

                    -qpc:该软件安装后将会产生的配置文件

                    ...

               

             -l:显示软件包中的列表

            技术分享

            -i:显示软件包信息

            技术分享

            -c:显示被标注为配置文件的列表

             -d:显示被标记为文档的列表

            -R:查询软件包的依赖关系

            技术分享

        


        重建数据库:rebuilddb,initdb

            rpm包管理器数据库的路径:/var/lib/rpm

            用法:

                rpm {--initdb | --rebuilddb}

                    initdb:初始化数据库

                    rebuilddb:按照已安装的软件包来重建数据库



二、YUM仓库程序包管理

    yum(全称为Yellow dog Ypdater,Modified)是一个在Fedora和RedHat以及SUSE中的Shell前段软件包管理器;yum基于RPM包管理,是把许多.rpm包通过编译后整合在一起建立成一个仓库;yum无须繁琐地一次次下载,安装,可以自动处理依赖性关系。yum提供了查找、安装、删除等功能。

    

    本地光盘制作yum源:

        1.挂载CentOS 7光盘镜像到系统上并把光盘内的文件拷贝到/PATH/TO/DIR_NAME

        技术分享

        注意:这里复制的时候可能会比较长,请耐心等待。        


        2.利用createrepo创建仓库,如果没有createrepo请根据上面rpm的方式安装

        技术分享            

        3.到/etc/yum.repo.d/目录下定义yum仓库

        

        [base]

name-Some name for this repository

baseurl=usrl://path/to/repository/

enabled={1|0}

gpgcheck={1|0}

        如下图:

        技术分享


        4.运行yum list检查是否制作成功

      

        当然yum源的制作方式不止这一种,这里就不多做演示了,有兴趣的同学可以下来自行研究。

    

    yum命令详解:

       用法:yum [options] COMMAND

        COMMANDS:

            check:检查RPM数据库问题

            check-update:检查是否有可用的软件更新

            install:安装软件包

            技术分享

            list:列出软件包

            update:更新软件包

            repolist:显示已配置的源

            remove:卸载程序包

            技术分享

            

            info:显示软件包信息

            clean:清理本地缓存

            reinstall:覆盖安装软件包


        OPTIONS:

            -y:回答全部问题为师

            --nogpgcheck:禁用GPG签名检查

            --installroot=[path]:设置安装根目录

            -v:详细操作过程

            --noplugins:禁用所有插件

            -q:静默模式


                            



三、源代码包管理(编译安装)

    Linux上的大多数源码都是C或者C++语言编写的,源代码包的管理方式与RPM管理方式相比更为复杂了一点,但是更能体现作为一个Linux工程师的技术性;因为源码包的管理需要自己定义相关功能,安装需要的模块;此外用户还可以自己选择安装路径,方便管理;卸载软件只需要删除对应的目录即可。

    

    编译前注意事项:

        是否安装gcc、make编译命令,解压从网上下载下来的源代码包;通常打包为.tar.gz或.tar.bz2等格式。在安装时configure会检测是否满足安装要求,要学会根据configure的报错信息找出问题解决掉。

        


        第一步:解压下载下来的源码包,进入源码目录,一般都会存在configure文件

            ./configure  

                选项:

                    --prefix=[PATH]:指定安装位置

                    --sysconfdir=[PATH]:指定配置文件位置

                    --help:可以看到所有选项

                    --enable-FEATURE:使用某个特性

                    --disable-FEATURE:禁用某个特性

                    --with-PACKAGE:依赖包为默认

                    --without-PACKAGE:依赖包自己指定

              

            configure完成后会根据用户指定的特性等生成makefile文件


        第二步:make命令进行编译,根据makefile文件,构建应用程序

        

        第三步:make install  安装

        

    下面根据Apache进行演示:

        第一步:

            创建一个目录:mkdir /apache

            把下载的apache源码包解压到/apache下面

            切换至解压目录下,运行./configure命令并指定安装目录为/apache2.2

            技术分享


        第二步,第三步:

            运行make && make install 命令进行安装

            技术分享


        验证:访问http://192.168.1.1 我的apache服务器IP

            技术分享


        

    以上截图均以CentOS 7 为例。

            

Linux之Redhat系列程序包管理

标签:apache安装   yum   rpm   编译   

原文地址:http://luoj5.blog.51cto.com/9389984/1728421

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!