Yum

   yum在线安装软件,快捷方便解决依赖问题。linux


yum的命令形式通常是以下:yum  [options]  [command] [package ...]

程序员

1、列举包文件web

 

yum list            列出资源库中全部已经安装、能够安装或更新的rpm包
yum list perl        列出资源库中特定的能够安装或更新以及已经安装的rpm包 //列出名为perl 的包
yum list perl*         列出perl 开头的包
yum list updates  列出资源库中全部能够更新的rpm包
yum list installed  列出已经安装的全部的rpm包
yum list extras     列出已经安装的可是不包含在资源库中的rpm包 
vim

 

2、列举资源信息centos

 

yum info 列出资源库中全部能够安装或更新的rpm包的信息浏览器

 

 

yum info perl    列出资源库中特定的能够安装或更新以及已经安装的rpm包的信息 //列出perl 包信息缓存

yum info perl*   列出perl 开头的全部包的信息安全

 

 

yum info updates 列出资源库中全部能够更新的rpm包的信息服务器

 

 

yum info installed 列出已经安装的全部的rpm包的信息网络

 

 

yum info extras 列出已经安装的可是不包含在资源库中的rpm包的信息

 

 

3、搜索
yum search perl 搜索匹配特定字符的rpm包 //在包名称、包描述等中搜索

 

 

yum provides realplay 搜索有包含特定文件名的rpm包

 

4、安装删除包

yum install perl       安装rpm包 //安装perl 包

yum install perl*     安装perl 开头的包

yum localinstall perl.rpm       安装本地rpm包 //

 

yum remove perl*   删除rpm包,包括与该包有倚赖性的包 //会删除perl-* 全部包

 

 

5、更新

 

yum check-update 检查可更新的rpm包

 

 

yum update 更新全部的rpm包(同时升级系统版本和内核)

 

yum update kernel kernel-source 更新指定的rpm包,如更新kernel和kernel source

 

 

yum upgrade 大规模的版本升级,与yum update不一样的是,连旧的淘汰的包也升级
                                                (同时升级系统版本可是不升级内核)

 

 

6、清空缓存

yum clean packages 清除暂存中rpm包文件

 

 

yum clearn headers 清除暂存中rpm头文件

 

yum clean oldheaders 清除暂存中旧的rpm头文件

 

 

yum clearn 清除暂存中旧的rpm头文件和包文件


yum clearn all

 

 

 

 

 


 七.使用yum下载一个rpm包 (不安装)
1.yum install --downloadonly(同时下载 须要依赖的包
        yum install --downloadonly
[--downloaddir=/tmp] <package-name>
     若是命令找不到这个选项,须要更新yum    或者     安装  yum -y install yum-downloadonly

注意:在CentOS/RHEL 6或更早期的版本中,你须要安装一个单独yum插件
           (名称为 yum-plugin-downloadonly)才能使用--downloadonly命令选项:
           yum install yum-plugin-downloadonly

下载的软件包位于/var/cache/yum/x86_64/7/base/packages/下


2.yumdownloader  (不下载 须要依赖的包

  安装yum-utils       yum -y install yum-utils
  下载软件包httpd
  yumdownloader httpd
3.利用yum的缓存功能
  默认状况下,yum在安装软件包后会自动清理软件包,修改配置,使yum再也不清理软件包
  vim /etc/yum.conf中修改keepcache = 0改成keepcache = 1
  /etc/init.d/yum-updatesd restart
  yum -y install httpd
  这时软件包已经安装下载,目录为/var/cache/yum




八.如下是一些经常使用命令:
1.有些插件使用yum list *xxx*    没法找到,可使用yum provides 查询xxx隶属于哪一个yum包
例如
yum provides */snmpwalk      
1:net-snmp-utils-5.5-57.el6.x86_64 : Network management utilities using SNMP, from the NET-SNMP project
Repo        : base
Matched from:
Filename    : /usr/bin/snmpwalk

安装 net-snmp-utils-5.5-57.el6.x86_64 便可


2.yum提供了一个很强大的功能,yum groupinstall
经过这个功能可让你很是方便的一次过安装你所须要的包

好比你安装必要的开发工具包:yum groupinstalll "Development Tools"

 

         记得不要丢了双引号。

 

若是是安装web server必要的包:yum groupinstall "Web Server"

 

若是还想知道还有哪些group可使用:     yum grouplist





八.增长yum源方式安装软件
官方定义的yum源为了软件的稳定性,更新比较慢。
若是须要的软件官方yum源没有或者版本过低,能够增长新yum源来安装。

查看系统默认安装的yum

# rpm -qa|grep yum

yum-plugin-fastestmirror-1.1.31-34.el7.noarch

yum-metadata-parser-1.1.4-10.el7.x86_64

yum-3.4.3-132.el7.centos.0.1.noarch


yum 配置文件

  yum 的配置文件分为两部分:main 和repository。
  main 部分定义了全局配置选项,整个yum 配置文件应该只有一个main,常位于/etc/yum.conf 中
  repository 部分定义了每一个源/服务器的具体配置,能够有一到多个。常位于/etc/yum.repo.d 目录下的各文件

 



repo 文件的格式

全部repository 服务器设置都应该遵循以下格式:

[serverid]
name=Some name for this server
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
baseurl=url://path/to/repository/
  • serverid   是用于区别各个不一样的repository,必须有一个独一无二的名称;
    name       是对repository 的描述,支持像$releasever $basearch这样的变量;
    mirrorlis 是指定一个镜像服务器的地址列表,一般是开启的,将$releasever和$basearch替换成本身对应的版本和架构,例如10和i386,在浏览器中打开,咱们就能看到一长串镜可用的镜像服务器地址列表。
    baseurl 是服务器设置中最重要的部分,只有设置正确,才能从上面获取软件。它的格式是:
baseurl=url://server1/path/to/repository/
     url://server2/path/to/repository/
     url://server3/path/to/repository/

其中url 支持的协议有 http:// ftp:// file:// 三种。baseurl 后能够跟多个url,你能够本身改成速度比较快的镜像站,但baseurl 只能有一个,也就是说不能像以下格式:

baseurl=url://server1/path/to/repository/
baseurl=url://server2/path/to/repository/
baseurl=url://server3/path/to/repository/

其中url 指向的目录必须是这个repository header 目录的上一级,它也支持$releasever $basearch 这样的变量。
url 以后能够加上多个选项,如gpgcheck、exclude、failovermethod 等,好比:

复制代码
[updates-released]
name=Fedora Core $releasever - $basearch - Released Updates
baseurl=http://download.atrpms.net/mirrors/fedoracore/updates/$releasever/$basearch
     http://redhat.linux.ee/pub/fedora/linux/core/updates/$releasever/$basearch
     http://fr2.rpmfind.net/linux/fedora/core/updates/$releasever/$basearch
gpgcheck=1
exclude=gaim
failovermethod=priority


其中gpgcheck,exclude 的含义和[main] 部分相同,但只对此服务器起做用,
failovermethode 有两个选项roundrobin 和priority,意思分别是有多个url可供选择时,yum 选择的次序,
        roundrobin 是随机选择,若是链接失败则使用下一个,依次循环。
        priority 则根据url 的次序从第一个开始。
        若是不指明,默认是roundrobin。

选择本身访问速度较快的镜像服务器地址复制并粘贴到repo文件中,咱们就能得到较快的更新速度了,格式以下baseurl所示:
baseurl=
ftp://ftp.sfc.wide.ad.jp/pub/Linux/Fedora/releases/10/Everything/i386/os
http://ftp.chg.ru/pub/Linux/fedora/linux/releases/10/Everything/i386/os
http://ftp.yz.yamagata-u.ac.jp/pub/linux/fedora/linux/releases/10/Everything/i386/os
http://mirror.nus.edu.sg/fedora/releases/10/Everything/i386/os
http://mirror.yandex.ru/fedora/linux/releases/10/Everything/i386/os
http://ftp.twaren.net/Linux/Fedora/linux/releases/10/Everything/i386/os
http://ftp.itu.edu.tr/Mirror/Fedora/linux/releases/10/Everything/i386/os





添加国际yum

添加源以前要肯定系统架构及版本!!!


RPMForge

RPMForge是CentOS系统下的软件仓库,拥有4000多种的软件包,被CentOS社区认为是最安全也是最稳定的一个软件仓库。
        到这里找到匹配本身系统的版本     http://repoforge.org/use/(我系统是centos6.3)
       #wget http://repository.it4i.cz/mirrors/repoforge/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
       #rpm -ivh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

而后/etc/yum.repos.d 这里就会多出一个rpmforge.repo yum源文件
        查看yum
        #yum repolist 
           repo id                                    repo name                                   status

base                                         CentOS-6 - Base                             6,696

extras                                       CentOS-6 - Extras                            63

rpmforge                                   RHEL 6 - RPMforge.net - dag        4,718

updates                                    CentOS-6 - Updates                         820



elrepo

     ELRepo项目侧重于硬件相关的包来加强你的经验与企业Linux。这包括文件系统驱动,显卡驱动,网络驱动程序,声音驱动,摄像头和视频驱动程序。

     一样去官网下载yum源的rpm包,安装……





EPEL(企业版 Linux 附加软件包)

 

 

 企业版 Linux 附加软件包(如下简称 EPEL)是一个由特别兴趣小组建立、维护并管理的,针对 红帽企业版 Linux(RHEL)及其衍生发行版(好比 CentOS、Scientific Linux、Oracle Enterprise Linux)的一个高质量附加软件包项目。

EPEL 的软件包一般不会与企业版 Linux 官方源中的软件包发生冲突,或者互相替换文件。EPEL 项目与 Fedora 基本一致,包含完整的构建系统、升级管理器、镜像管理器等等。
       随着时间的发展,EPEL 仓库愈来愈丰富,成为一个大型的软件收集仓库。安装epel源的好处就是epel这个项目是由fedora维护的,在维护的这个源中包含许多新的软件。
     
  ( CentOS 用户请注意: CentOS 用户能够直接经过 yum install epel-release 安装并启用 EPEL 源。CentOS Extras默认包含该包)


!!!这个不用到官网下载rpm包,能够直接用yum安装
安装:yum install epel-release.noarch


 


添加(更换)国内yum
 

网易163
网易(163)yum源是国内最好的yum源之一 ,不管是速度仍是软件版本,都很是的不错
 http://mirrors.163.com/  欢迎访问网易开源镜像站
进入网站选择本身系统版本的 repo,下载

1.更换系统自带的yum源

首先备份/etc/yum.repos.d/CentOS-Base.repo

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下载对应版本repo文件, 放入/etc/yum.repos.d/(操做前请作好相应备份)


注意!!!(系统没法识别$releasever,编辑下载文件,把文件里面的$releasever所有替换为版本号,即6,保存)

运行如下命令生成缓存

yum clean all
yum makecache


2.增长系统yum源

下载对应版本repo文件, 放入/etc/yum.repos.d/

编辑下载的163.repo文件:
(因系统没法识别
$releasever,编辑下载文件,把文件里面的$releasever所有替换为版本号,即6,保存)
为不与系统自带库重复 将163.repo文件中的 
[base]          改成[base163]
[updates]     改成[updates163]
[extras]        改成[extras163]

运行如下命令生成缓存

yum clean all
yum makecache

查看yum源  
#yum repolist

repo id                                                       repo name                                                        status

base                                                          CentOS-6 - Base                                                 6,696

base163                                                   CentOS-6 - Base - 163.com                               6,696

extras                                                        CentOS-6 - Extras                                                 63

extras163                                                  CentOS-6 - Extras - 163.com                               63

rpmforge                                                    RHEL 6 - RPMforge.net - dag                               4,718

updates                                                      CentOS-6 - Updates                                               820

updates163                                                CentOS-6 - Updates - 163.com                            820

 

repolist: 20,284




中科大的yum源
http://centos.ustc.edu.cn/

搜狐yum源
 http://mirrors.sohu.com



设置源的管理策略
         若是你喜欢优先从某个源安装软件,那么建议安装 yum-priorities 插件这个插件的做用是给多个源排定优先顺序, 当多个源中存在同一软件的时候, 软件会从优先级最高的源这装.

      #yum install yum-priorities

安装完后须要设置/etc/yum.repos.d/ 目录下的.repo相关文件(如CentOS-Base.repo),在这些文件中插入顺序指令:priority=N (N为1到99的正整数,数值越小越优先),
能够将系统自带yum设置为1,第三方源数值设为大于等于10

例如:

       [base]
name=CentOS-$releasever – Base
mirrorlist=http://mirrorlist.CentOS.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.CentOS.org/CentOS/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

 

 






 

配置本地yum

一、挂载系统安装光盘       # mount /dev/cdrom /media/CentOS/

二、配置本地yum源           # cd /etc/yum.repos.d/
                                                    # ls

        会看到四个repo 文件

CentOS-Base.repo 是yum 网络源的配置文件

CentOS-Media.repo 是yum 本地源的配置文件

3.修改CentOS-Media.repo       # cat CentOS-Media.repo
              
在baseurl 中修改路径为/media/CentOS(即为光盘挂载点)

      将enabled=0改成1(可用)

4.禁用默认的yum 网络源

将yum 网络源配置文件更名为CentOS-Base.repo.bak,不然会先在网络源中寻找适合的包,更名以后直接从本地源读取。

相关文章
相关标签/搜索