YUM 源配置与使用方法
Cen YUM 源配置与使用方法 一、 YUM简介 yum,是Yellow dog Updater,Modified 的简称,是杜克大学为了提高RPM 软件包安装性而开发的一种软件包管理器。起初是由yellow dog 这一发行版的开发者Terra Soft 研发,用python 写成,那时还叫做yup(yellow dog updater),后经杜克大学的Linux@Duke 开发团队进行改进,遂有此名。yum 的宗旨是自动化地升级,安装/移除rpm 包,收集rpm 包的相关信息,检查依赖性并自动提示用户解决。yum 的关键之处是要有可靠的repository,顾名思义,这是软件的仓库,它可以是http 或ftp 站点,也可以是本地软件池,但必须包含rpm 的header,header 包括了rpm 包的各种信息,包括描述,功能,提供的文件,依赖性等。正是收集了这些header 并加以分析,才能自动化地完成余下的任务。 yum 的理念是使用一个中心仓库(repository)管理一部分甚至一个distribution 的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、删除等等操作,减少了Linux 用户一直头痛的dependencies 的问题。这一点上,yum 和apt 相同。apt 原为debian 的deb 类型软件管理所使用,但是现在也能用到RedHat 门下的rpm 了。 yum 主要功能是更方便的添加/删除/更新RPM 包,自动解决包的倚赖性问题,便于管理大量系统的更新问题。 yum可以同时配置多个资源库(Repository),简洁的配置文件(/etc/yum.conf),自动解决增加或删除rpm 包时遇到的依赖性问题,保持与RPM 数据库的一致性。 二、 YUM安装 (系统默认已安装) rpm -qa|grep yum 查看yum 是否已经安装 1、yum-metadata-parser-1.1.4-10.el7.x86_64 2、yum-3.4.3-118.el7.centos.noarch 3、yum-plugin-fastestmirror-1.1.31-24.el7.noarch 4、yum-plugin-fastestmirror-1.1.31-24.el7.noarch 5、yum-plugin-fastestmirror-1.1.31-24.el7.noarch rpm -e 加所查询的出的软件包全称即可; 卸载默认yum源; 1、rpm -e yum-metadata-parser-1.1.4-10.el7.x86_64 2、rpm -e yum-3.4.3-118.el7.centos.noarch 3、rpm -e yum-plugin-fastestmirror-1.1.31-24.el7.noarch 4、rpm -e yum-plugin-fastestmirror-1.1.31-24.el7.noarch 5、rpm -e yum-plugin-fastestmirror-1.1.31-24.el7.noarch 三、重新安装yum 这里可以通过wget 从网上下载相关包安装,也可以挂载系统安装光盘进行安装,这里选择挂载系统安装光盘进行安装。 # ls -l /dev | grep cdrom 查看已加载的光盘名称; # mkdir /mnt/cdrom # mount /dev/cdrom /mnt/cdrom/ # rpm -ivh yum-3.2.22-33.el5.centos.noarch.rpm yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm 上图为搜索需要安装的安装包名字。 # yum -v 详尽的操作过程 yum 的基础安装包包括: yum //RPM installer/updater yum-fastestmirror //Yum plugin which chooses fastest repository from a mirrorlist yum-metadata-parser //A fast metadata parser for yum 四、配置YUM文件 yum 的配置文件分为两部分:main 和repository main 部分定义了全局配置选项,整个yum 配置文件应该只有一个main。常位于/etc/yum.conf 中。 repository 部分定义了每个源/服务器的具体配置,可以有一到多个。常位于/etc/yum.repo.d 目录下的各文件中。 yum.conf 文件一般位于/etc目录下,一般其中只包含main部分的配置选项。 vim /etc/yum.conf 配置本地YUM源 CentOS-Base.repo 是yum 网络源的配置文件 CentOS-Media.repo 是yum 本地源的配置文件 修改CentOS-Media.repo cat CentOS-Media.repo # CentOS-Media.repo # # This repo is used to mount the default locations for a CDROM / DVD on # CentOS-5. You can use this repo and yum to install items directly off the # DVD ISO that we release. # # To use this repo,put in your DVD and use it with the other repos too: # yum --enablerepo=c5-media [command] # # or for ONLY the media repo,do this: # # yum --disablerepo=* --enablerepo=c5-media [command] [local-media] name=CentOS-$releasever - Media baseurl=file:///media/CentOS/ file:///mnt/cdrom/ file:///media/cdrecorder/ gpgcheck=0 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #在baseurl 中修改第2个路径为/mnt/cdrom(即为光盘挂载点) 将enabled=0改为1 #禁用默认的yum 网络源 mv CentOS-Base.repo CentOS-Base.repo.back 将yum 网络源配置文件改名为CentOS-Base.repo.bak,否则会先在网络源中寻找适合的包,改名之后直接从本地源读取。 五、关于repo 文件的格式 所有repository 服务器设置都应该遵循如下格式: [serverid] name=Some name for this server baseurl=url://path/to/repository/ serverid 是用于区别各个不同的repository,必须有一个独一无二的名称; name 是对repository 的描述,支持像$releasever $basearch这样的变量; 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 等,比如: 六、配置网络源 163网易yum源配置信息 修改/etc/yum.repos.d/CentOS-Base.repo为: # CentOS-Base.repo 注意:在找到网络源例如 163网易开源镜像站:http://mirrors.163.com/。搜狐开源镜像站:http://mirrors.sohu.com/中国科学技术大学:http://mirrors.ustc.edu.cn/ (IPv4+IPv6) http://mirrors4.ustc.edu.cn/ http://mirrors6.ustc.edu.cn/ 东北大学: http://mirror.neu.edu.cn/ (IPv4 only) http://mirror.neu6.edu.cn/ (IPv6 only) 这些网址需要查看是否存在,验证网址是否存在,验收地址里是否有你需要的镜像源。 例如配置信息 [base] name=CentOS-$releasever - Base #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os baseurl=http://mirrors.163.com/centos/7/os/$basearch/ #//163镜像地址目录-使用时需验证网址是否存在; gpgcheck=0 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 #//验证的秘钥网络地址秘钥。需验证网址中是否存在你所需要的秘钥; priority=1 #released updates [updates] name=CentOS-$releasever - Updates #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates baseurl=http://mirrors.163.com/centos/7/updates/$basearch/ gpgcheck=0 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras baseurl=http://mirrors.163.com/centos/7/extras/$basearch/ gpgcheck=0 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus baseurl=http://mirrors.163.com/centos/7/centosplus/$basearch/ gpgcheck=0 enabled=1 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 配置完成!!! 使用命令测试清楚yum clean all 缓存; 在进行安装第三方软件安装包例如 yum -y install ltfp ------------------------------------------------------------------------------------------- (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |