码迷,mamicode.com
首页 > 其他好文 > 详细

rpm包管理和yum命令的介绍

时间:2015-09-12 20:26:30      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:linux包管理   yum   rpm   

   今天给大家带来的是rpm包的管理和yum的应用。(介绍的比较简单,高手勿喷)

  •      用rpm命令管理包

    rpm命令是RPM软件包的管理工具。rpm: redhat package manager or RPM is Package Managerpm .原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度,获取rpm包途径:1、发行版提供的程序包;2、Fedora-EPEL 3、项目的官方站点 4、搜索引擎如http://rpmfind.net、http://rpm.pbone.net、http://pkgs.org。

    rpm命令语法:

         rpm {-i|--install} [install-options] PACKAGE_FILE ...

    安装选项

            -i:显示相关信息

   -v:显示详细过程,-vv, -vvv

            -h:用“#”显示安装过程。

    技术分享

    升级选项

            -Uvh: 如果有旧版程序包,则升级之;如果没有,则安装之;

           -Fvh: 如果有旧版程序包,则升级之;如果没有,则不安装;

            --nodeps忽略依赖关系。

           --oldpackage:降级;

           --force:强制安装。

    安装php-mysql 的时候提示需要php-common的包

    技术分享

    加上--nodeps 直接忽略依赖安装php-mysql,虽然安装了,但是提示可能这个包工作不正常。

    技术分享     卸载选项:

        rpm {-e|--erase} [--nodeps] [--noscripts] [--notriggers] [--test] PACKAGE_NAME ...

   我再把刚才安装的包卸载了,由于有依赖还要加忽略--nodeps选项,没有提示就是成功卸载。

   技术分享

     查询已经安装的包选项:

        -qa: 查询本机已经安装的所有程序包;

        -qf /PATH/TO/SOMEFILE: 查询此处的文件由哪个程序包安装生成;

                        -qc: 查询指定程序包安装生成的配置文件

        -qd: 查询指定的程序包安装生成的文档

        -qi: 查询指定的程序包的相关信息;

        -ql: 查询程序包安装生成的所有文件的列表;

        -q --scripts:查询程序包相关的脚本:

        preinstall: 安装前脚本

        postinstall:安装后脚本

        preuninstall: 卸载前脚本

        postuninstall: 卸载后脚本

       技术分享

       查询选项加-p: 查询针对是未安装的程序包文件;

       技术分享

       验证包的完整性需要导入:

       导入密钥:rpm --import /PATH/TO/KEY_FILE

  • YUM的介绍:

       YUM: Yellowdog Updater Modified ,yum命令是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装

        yum程序的配置文件: /etc/yum.conf

技术分享

[main]
cachedir=/var/cache/yum/$basearch/$releasever     #yum缓存的目录,yum在此存储下载的rpm包和数据库,一般是/var/cache/yum。
keepcache=0        //安装完成后是否保留软件包,0为不保留(默认为0),1为保留
debuglevel=2   //除错级别,0──10,默认是2
logfile=/var/log/yum.log   #日志文件
exactarch=1  //有两个选项1和0,代表是否只升级和你安装软件包cpu体系一致的包,如果设为1,则如你安装了一个i386的rpm,则yum不会用1686的包来升级
obsoletes=1  //这是一个update 的参数,具体请参阅yum(8),简单的说就是相当于upgrade,允许更新陈旧的RPM包。
gpgcheck=1   //有1和0两个选择,分别代表是否是否进行gpg校验,如果没有这一项,默认好像也是检查的。
plugins=1  //是否启用插件,默认1为允许,0表示不允许。我们一般会用yum-fastestmirror这个插件。
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-releas


yum.repos.d 目录下面.repo结尾的文件都是配置文件。


技术分享

技术分享


[base]      #起一个仓库的名字唯一
name=CentOS-$releasever - Base     #一个别名描述
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os       #镜像的方式指定文件服务器从那里来获取包的信息,有两个变量$releasever: 引用当前系统的主版本号;$basearch: 当前系统的基本架构:i386, i486, i586, i686: i386
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/   #网页的方式指定文件服务器从那里来获取包的信息
         http://mirror.centos.org/centos/$releasever/os/$basearch    #多个这样写。
         ftp://hostname/PATH/TO/REPO    #支持FTP
         file:///PATH/TO/REPO         #本机,本地  
gpgcheck=1   #验证,校验  0是关闭
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6   #  校验的文件


yum命令语法:

yum [options] [command] [package ...]

        命令选项:

                yum install #全部安装 

                yum install package1 #安装指定的安装包package1

                yum groupinsall group1 #安装程序组group1

                yum update #全部更新 

                yum update package1 #更新指定程序包package1 

                yum check-update #检查可更新的程序 

                yum upgrade package1 #升级指定程序包package1 

                yum groupupdate group1 #升级程序组group1

                yum info package1 #显示安装包信息package1 

                yum list #显示所有已经安装和可以安装的程序包 

                yum list package1 #显示指定程序包安装情况package1 

                yum groupinfo group1 #显示程序组group1信息

                yum search string 根据关键字string查找安装包

                yum remove | erase package1 #删除程序包package1

                yum groupremove group1 #删除程序组group1

                yum deplist package1 #查看程序package1依赖情况

                yum clean packages #清除缓存目录下的软件包 

                yum clean headers #清除缓存目录下的  headers

                yum clean oldheaders #清除缓存目录下旧的 headers


 yum命令升级安装http服务:

技术分享

技术分享

技术分享

yum不能运行两个,会出现下面的情况。

技术分享



介绍的比较简单,高手勿喷。



       


rpm包管理和yum命令的介绍

标签:linux包管理   yum   rpm   

原文地址:http://shaonian.blog.51cto.com/2975261/1694140

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