yum的用法

yum命令用法:

 

yum仓库配置:

配置文件:指向仓库的位置以及相关的各种配置信息;每个yum命令行可以同时指向多个仓库,仓库间可以优先级等相关的配置;

有两部分组成:

主配置文件:/etc/yum.conf

为各仓库指向提供公共配置文件;

各仓库的定义:/etc/yum.repos.d/*.repo

 

 

配置文件在/etc/yum.repos.d/这个目录下,进入后现将原有的CentOS-Base.repo改为CentOS-Base.repo.bak,然后创建自己的yum仓库,即创建一个以.repo结尾的文件,里面的格式为:

 

[repositoryid]

# 对于当前系统的yum来讲,此repositoryid用於惟一标识此repository指向,因此,其必须惟一;中括号一定要有,里边的内容可以随便写,但不能有两个相同的容器名称。

name=

# 当前仓库描述信息;

baseurl=url://path/to/repository/

# 指明repository的访问路径;通常为一个文件服务器上输出的某repository

url:

ftp服务

ftp://SERVER/PATH/TO/REPOSITORY

http服务

http://SERVER/PATH/TO/REPOSITORY

本地目录:

file:///PATH/TO/REPOSTIROY注:file:/// 3/代表根目录

enabled={1|0}

此仓库是否可被使用,1为启用,默认为1

gpgcheck={1|0}

是否对程序包做校验,1为启用

gpgkey=url://path/to/keyfile

指明gpgkey文件路径;

  gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

cost=#

指明当前repository的访问开销,默认为1000

 

[root@localhost yum.repos.d]# vim ftpyum.repo.bak 

   [yumrepo]
   name=my local ftp test yumrepo
   baseurl=ftp://172.16.249.206/pub/xen
   gpgcheck=0
   enabled=1

 

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

   [local]
   name=my local cdrom in /data/mydata
   baseurl=file:///data/mydata
   gpgcheck=0

 

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

   [sohurepo]
   name=http sohu repo
   baseurl=http://mirrors.sohu.com/centos/6.6/os/x86_64/
   gpgcheck=0

 

yum有内置变量,用于保存当前平台的相信息;

           (1) $releasever: 当前OS发行版的主版本号;

                   例如,对CentOS 6.6 x86_64,主版本号为6一般http://mirrors.sohu.com/centos/6会指向http://mirrors.sohu.com/centos/6.6,是一个符号链接

           (2) $arch:平台

                   i386,i486

           (3) $basearch: 基础平台, 例如i686, i586, i486以及i386的基础平台同为i386

           

 

假如:

                   baseurl=http://mirrors.sohu.com/centos/6.6/os/x86_64/

                   当前系统为CentOS 6.6 x86_64

                   baseurl=http://mirrors.sohu.com/centos/$releasever/os/$basearch

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

   [sohurepo]
   name=http sohu repo
   baseurl=http://mirrors.sohu.com/centos/$releasever/os/$basearch
   gpgcheck=0

仓库baseurl指向的路径:repodata目录所在的父目录

 

因为yum会先下载容器的清单到本机的/var/cache/yum里边去,修改了baseurl却没有修改容器的名字(中括号里的文字),可能会造成本机的列表与yum服务器的列表不同步,就会出现无法更新的问题,此时就应删除本机上的旧数据即可

配置完成后,执行yumclean all先清理下之前的缓存,再用yum repolist 重新获取下激活的repo

 

 

yum命令常用使用方法:

 

    仓库管理:

           repolist: 列出已经配置的所有可用仓库        

                   repolist[all|enabled|disabled]        

 

    缓存管理:

           clean:清理缓存

                   clean[ packages | metadata | expire-cache | rpmdb | plugins | all ]

           makecache: 缓存创建

                   自动连接至每一个可用仓库,下载其无数据,将其创建为缓存;

例:yum clean all 清理缓存

    程序包查看:

            yumlist [all | glob_exp1] [glob_exp2] [...]

yum list php* 列出php相关的程序包

           yum list{available|updates|installed|extras|obsoletes} [glob_exp1] [...]

例: yum list installed|grep 'php' 查找安装过的php相关的软件

yum list updates 列出当前服务器上可以升级的软件

yum info 软件名  相当于rpm -qai 的结果


 

    程序包安装:

           install package1[package2] [...]

  yum install zsh

           注意: 只需要提供包名;

 

           如果某包有在不同仓库中有多个不同版本,默认会安装最新版本;

 

           如果要安装指定版本:install PACKAGE-VERSION ...

   

      重新安装(覆盖安装)

           reinstall package1[package2] [...]

 

    程序包升级:

           update [package1][package2] [...]

 

    程序包降级:

           downgrade package1[package2] [...]

 

    卸载:

           remove | erase package1[package2] [...]

例:yum remove zsh

           所有依赖于正卸载的程序包的程序包会被一并卸载;

 

    查询:

           查询程序的相关简要信息:info PACKAGE ...

 

           在包名和sumary信息中搜索指定的关键字:search KEYWORD ...

例:yum search zsh

           查询指定文件由哪个程序包安装生成:provides|whatprovides /PATH/TO/SOMEFILE

 

    安装或升级本地的程序包文件:

           localinstall rpmfile1[rpmfile2] [...]

 

           用于安装仓库中并不存在的程序包文件,这些程序包有可能又依赖于仓库中的某些程序包;

 

           localupdate rpmfile1[rpmfile2] [...]

 

    包组管理:

           列出所有包组:grouplist

           显示指定包组详情:groupinfo group1 [...]

 

           安装:groupinstall group1 [group2] [...]

 

           卸载:groupremove group1 [group2] [...]

 

           升级:groupupdate group1 [group2] [...]

 

           Note: 可直接用installremoveupdate来管理包组:

                   @GROUP_NAME

 

                   例:yum install@"Server Platform Development"

 

    yum命令的可用选项:

           -y: 自动回答为“yes”

    --installroot=/SOME/PATH:将该软件安装在/SOME/PATH中而不使用默认路径

           --disablerepo=: 临时禁用在配置文件中配置并启用的某repository

           --enablerepo=:临时启用指定的某repo

           --nogpgcheck: 禁止做包校验;

 

如何使用发行版光盘作为yum repository

           (1) 挂载光盘到指定挂载点,如/media/cdrom /data/mydata

           (2) /etc/yum.repo.d/下新建yum.repo配置文件,类似如下所示:

[dvdbase]

name=CentOS6.6 X86_64 on dvd1

baseurl=file:///media/cdrom

gpgcheck=0

enabled=1   


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章