首页 > 代码库 > Rpm包的安装与yum的配置

Rpm包的安装与yum的配置

 


RPM包管理器的常用命令和示例:

 

1、安装程序包:

rpm [option]/path/to/package_file

–i:安装程序包

–v:显示安装的过程

-h :显示安装进度

-vv:显示详细信息

-vvv:显示更更详细信息

-ivh --nodeps: 强制安装程序包(不解决依赖关系情况下强制安装,将不能正常使用)

wKioL1PLNHfSztvwAACutgUT9g0747.jpg

2、  卸载程序包

rpm [option] package_name

  -e:卸载包

[root@localhost Packages]# rpm -ev zsh

         -e --nodeps:强制卸载(不解决依赖关系情况下强制卸载,将只能卸载主包,不能卸载子包)

 

注意:如果包的配置文件安装后曾被改动过,卸载时,此文件将不会卸载,而是被重命名并保留,

                            例如[root@localhost Packages]# rpm -ezsh

                                        warning:/etc/zlogout saved as /etc/zlogout.rpmsave

3、  升级程序包:

    rpm [option] /pat/to/package_file

    (1).升级或安装(有老版本就升级,没有就安装)

          -Uvh

(2)、纯升级:(必须有老版本)

      -Fvh

      -Fvh –force:强制升级 但无法正常运行

注意:不能对系统内核执行升级操作,而是重新安装高版本系统(linux操作系统运行多个系统内核)

 

4、  包的查询命令

-q 查询包是否安装了

-qa:查询所有已经安装的包

-qi:查询已经安装的包信息

-ql:查询某包生成了那些文件

-qc:查新包生成了那些配置文件

-qd:查新生成了那些帮助信息

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

[root@localhost Packages]# rpm -ql zsh| less-----查新zsh包生成了那些文件

[root@localhost Packages]# rpm -qa |grep "zsh"---过滤所有zsh安装过的包

 

查看zsh包的详细信息

wKiom1PLM2yD1260AAI3Hb04ba8392.jpg

wKioL1PLNJWhT6JIAAH4rCUANew196.jpg

wKioL1PLNKPy7oUwAAJz65cDyUI765.jpg

 

5、  生成文件属性校验:

用于检查包安装生成的文件属性是否发生变化

rpm –V

6、  查程序是由那个包安装成的

[root@localhost Packages]# rpm -qf /etc/fstab

setup-2.8.14-20.el6_4.1.noarch

7、对尚未安装的包执行查询

                     rpm[option] 绝对包全名

                     -qpi查看包的信息

                     -qpl查看生成那些文件

                     -qpc查看生成那些配置文件

                     -qpd查看生成那些帮助信息

wKiom1PLM6Oh2KoFAAHpag1AqBs451.jpg

8、生成文件属性校验:

              用于检查包安装生成的文件属性是否发生变化(属性不变化显示为点)

                     rpm-V 

                        S file Size differs 文件大小

                        M Mode differs (includes permissions andfile type) 权限和文件类型

                        5 digest (formerly MD5 sum) differs  MD5加密

                        DDevice major/minor number mismatch 设备文件设备号

                        L readLink(2) path mismatch  路径

                        U User ownership differs 属主

                        G Group ownership differs属组

                        T mTime differs 时间

                        P caPabilities differ能力

wKiom1PLM7Cw5ysdAAA_yglXxZc941.jpg

9rpm 包来源的合法性

              rpm–import /path/to/file_key------导入密钥

                           

              rpm-qa    ------显示已经导入的密钥格式

              #rpm -qa gpg-pubkey*

             

              rpm-qi ---------------显示密钥的详细信息

              #rpm -qi gpg-pubkey-NAME

               wKioL1PLNNWQAsmqAAMeKdO3Cm0297.jpg

10、检查包:安装过程中会自动执行检查(导入密钥安装过程将自动检测)     wKioL1PLNN-gRJFKAACFWTcfSdQ654.jpg

手动检查:

                                   rpm -K/path/to/package_file

                                   rpm--checksig /path/to/package_file

 

未安装的包检查来源性和合法性:rpm -K  包的名称

wKiom1PLM9SxFYgQAABnzZO3HUg563.jpg

 

不检查包完整性,检查包的来源合法性rpm –K - -nodigest 包的名称

不检查包来源合法性,检查完整性rpm -K --nosignature 包的名称

 

wKioL1PLNP7j7eUvAACiN2qIkVQ877.jpg

 

 

YUM:的安装:

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

yumC/S架构

yum的配置的一种方法:/etc/yum.repos.d目录下增加.repo文件。

1、  yum配置:

提供repo配置文件,指明仓库访问路径和各种属性信息

中心配置文件:/etc/yum.conf

一个或者几个相关仓库的配置信息可保存为一个文件,文件名都以.repo结尾:

 

 

/etc/yum.repos.d/下自定义一个名字随便后缀为.repo为结尾的格式如下:

用本地光盘配置yum客户端:


1)、首先挂载光盘

       [root@localhost ~]# mount /dev/cdrom/media/cdrom

        mount: block device /dev/sr0 is write-protected, mountingread-only

2)、在目录/etc/yum.repos.d创建后缀名为.repo的文件格式如下:

            [root@localhost~]# vim ning.repo

 

            [ning1]   #方括号里面的是软件源的名称,将被yum取得并识别

            name=CentOS-6.5-x86_64-bin-DVD1.isoon local cdrom  #定义仓库的内容

            baseurl=file:///media/cdrom/   # 定义仓库位置

            enabled=0               #0代表禁用   1代表启用

            gpgcheck=1            #1启用校验 0禁用校验

            gpgkey=file:///media/cdrom/RPM-GPG-KEY-CentOS-6#校验密钥的位置

配置拥有yum服务器的客户端:

       直接在目录/etc/yum.repos.d下创建后缀名为.repo的文件即可,格式如下

              在这里我们引入两个默认宏:

                                          $releasever匹配主板本号,不匹配次版本号

                                          $basearch匹配系统架构

[root@localhost yum.repos.d]# vim centos6.5.repo

 

[base]

name=CentOS $releasever $basearch on local server 172.10.0.1

baseurl=http://172.16.0.1/cobbler/ks_mirror/centos-6.5-$basearch/

          file:///media/cdrom/

          gpgcheck=0

 

[extra]

name=CentOS $releasever $basearch extras

baseurl=http://172.16.0.1/centos/$releasever/extras/$basearch/

gpgcheck=0

 

[epel]

name=Fedora EPEL for CentOS$releasever $basearch on local server172.16.0.1

baseurl=http://172.16.0.1/fedora-epel/$releasever/$basearch/

gpgcheck=0


yum客户端命令的使用:

       yumrepolist all #列出所有repo

wKioL1PLNRnw4TTsAAEI6S84LRw287.jpg

              yum list all#列出库中的所有的rpm

              yum list installed#列出库中的已经安装过的rpm

              yum list available#列出没有安装的rpm

 

              yum info 包名 #查询包的信息

wKiom1PLNBLCCBgzAAJM3SeyqDs242.jpg

 

        yum install package_name 安装程序包

              [root@localhost yum.repos.d]# yuminstall zsh

        yum reinstall package_name重新安装包

           [root@localhostyum.repos.d]# yum reinstall zsh

      yumcheck-update :检查可升级的安装

      yum update x:更新安装包

           x-1.3.1,x-1.3.2x-1.3.3

    yum update x-1.3.2 ---指定升级那个版本(如果不指定将升级最高版本)

      yumdowngrade package_name: 降级安装包

      yumremove |erase 包名:卸载软件包(自动解决依赖关系)

wKioL1PLNT3gGUi2AAC4o_AZxe4266.jpg

 

    yumgrouplist :列出包组

    yumgroupinfo 组名:显示包租信息。

wKiom1PLNFfxWyL1AAGtYP8Gv7Y922.jpg

  yum groupinstall 组名:直接安装一个服务组的安装包

  yum groupremove 组名:直接卸载一个服务组的安装包

    yum clean all:清理所有缓存

       缓存主要存在:/var/cache/yum/x86_64/base/packages/下有下载的刚安装过系统包

创建yum服务器

自建提供yum的仓库的中心服务器:

1、  以安装httpd,并启动服务

wKiom1PLNG2Cc3r-AAGuc7Py4pM465.jpg

2、  httpd的文档根目录/var/www/html;

  创建子目录,存放相关的所有rpm

  我们这里从光盘上拷贝到此目录下:

  [root@localhost html]# cp -rp/media/cdrom .

3、  为库生成元数据文件,以使能够为仓库使用

  先安装createrepo

  #rpm –ivh createrpo

  [root@localhost html]# createrepo/var/www/html/cdrom/

    4、配置yum客户端使用此仓库即可

2[root@localhost yum.repos.d]# vimcentos6.5.repo

 

[base]

 name=172.16.3.1.base.repo

  baseurl=http://172.16.3.1/cdrom/

 gpgcheck=0

 

编译源代码软件包

编译原代码的步骤:

1#./configure

2#make

3#make install

 

实践案例:nginx编译

1、  先解压检查编译环境

wKioL1PLNaeRagP7AAH1dGCUqDU374.jpg

2、  编译内核

 

wKiom1PLNK_yKWqHAAIe6gfqaIs591.jpg

 

3、  安装拷贝生成的文件到目录下

wKiom1PLNNqxOCr-AAFz59WG1kY390.jpg

 

4、  查看生成的文件

wKioL1PLNgmTtp4QAAEe9_LaYeA686.jpg

编译完成

6、运行nginx

#cd/usr/local/nginx/

#/sbin/nginx&

添加永久路径

[root@localhostnginx]# vim /etc/profile.d/nginx.sh添加个文件,nginx.sh

 

 

exportPATH=$PATH:/usr/local/nginx/sbin

 

查看是否添加

[root@localhost~]# echo $PATH

/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/nginx/sbin:/root/bin

       

7、导出手册页     

root@localhost~]# vim /etc/man.config

MANPATH /usr/local/nginx/man


本文出自 “奋斗的人” 博客,请务必保留此出处http://wodemeng.blog.51cto.com/1384120/1440465

Rpm包的安装与yum的配置