您的位置:首页 > 运维架构 > Linux

CentOS 下yum配置本地源

2015-01-18 20:33 309 查看
我的linux学习之路

今天回家不料断网了,想下载个东西都没办法,于是来玩下yum配置本地源。

其实自己也不会,网上搜了下,总结出以下两种办法:

一 . 通过CentOS DVD 来安装软件,光盘里面提供的软件足以满足我们需要了,而且DVD里的软件版本都是稳定版,下载速度还快,对于学习CentOS来说,将CentOS
DVD作为默认yum源可以大大提高学习效率。

我的为CentOS
6.4 用的是虚拟机,虚拟机加载光盘方法:虚拟机->可移动设备->CD/DVD->设置,选择好光盘。

下来开始步骤了:

1.[root@localhost
~]# mkdir /media/CentOS //为光盘创建一个挂载目录

2.[root@localhost
~]#mount  /dev/cdrom /mnt/centos //挂载

3.[root@localhost
yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.bak //用yum的网络更新方式,简单地将默认首选的CentOS-Base.repo改名为CentOS-Base.repo.bak即可

4.[root@localhost
~]# vim /etc/yum.repos.d/CentOS-Media.repo //配置本地源



[c6-media]

name=CentOS-$releasever - Media

baseurl=file:///media/CentOS/

file:///media/cdrom/

file:///media/cdrecorder/

gpgcheck=1

enabled=0

修改为

[c6-media]

name=CentOS-$releasever - Media

baseurl=file:///media/CentOS/

gpgcheck=1

enabled=1

其中baseurl修改为DVD的挂载目录,enabled=1开启本地更新模式

:wq 保存退出

6.[root@localhost
~]# yum clean all //清除原有的yum信息

7.[root@localhost
yum.repos.d]# yum list //检查DVD软件列表

这样以后就默认使用DVD安装软件了,如果想恢复网络安装模式,将
CentOS-Base.repo.bak 更名还原即可。

PS.每次重启系统后需要手工挂载DVD到/media/CentOS/,如果嫌麻烦可以自己写脚本自动挂载。

二.
1. [root@localhost ~]# mkdir yumload //创建存贮rpm包的文件夹

2.
[root@localhost ~]# cp /media/CentOS/Packages/  yumload/   //复制过去

3.
然后使用createrepo指令创建本地repo,CentOS6默认不安装createrepo,需要手动安装,没关系,在我们的DVD光盘中已经集成了createrepo的包,如果报需要依赖安装其他包的使用,依次安装即可。

[root@localhost
Packages]# rpm -ivh createrepo-0.9.9-17.el6.noarch.rpm

error:
Failed dependencies:
python-deltarpm is needed by createrepo-0.9.9-17.el6.noarch //可能出现此信息,不要着急

[root@localhost
Packages]# rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.i686.rpm

error:
Failed dependencies:
deltarpm = 3.5-0.5.20090913git.el6 is needed by python-deltarpm-3.5-0.5.20090913git.el6.i686

[root@localhost
Packages]# rpm -ivh deltarpm-3.5-0.5.20090913git.el6.i686.rpm  //一步步找其依赖关系

Preparing...
               ########################################### [100%]

  1:deltarpm               ########################################### [100%]

[root@localhost
Packages]# rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.i686.rpm 
Preparing...                ########################################### [100%]

    1:python-deltarpm        ########################################### [100%]

[root@localhost
Packages]# rpm -ivh createrepo-0.9.9-17.el6.noarch.rpm

Preparing...
               ########################################### [100%]

    1:createrepo             ########################################### [100%]

将依赖包装完。。

4.
[root@localhost ~]# createrepo yumload/ #创建yum仓库,耐心等待

Spawning
worker 0 with 3114 pkgs

Workers Finished

Gathering worker results

Saving Primary metadata

Saving file lists metadata

Saving other metadata

Generating sqlite DBs

Sqlite DBs complete

5..在/etc/yum.repo.d/下创建一个repo文件,文件名可以自定义,但一定要以repo结尾,并添加一下内容:

[ultraera.org]                    #仓库名称可以自定义
name=This is a local repo    #描述信息
baseurl=file:///yumload/            #这里填写仓库的url,注意 有三个正斜线 
enabled=1                    #是否开启仓库,1为开启,0为关闭
gpgcheck=0                #是否检查gpgkey,1为开启,0为关闭

6.到这里本地yum源就已经搭建完成了,接下来重新初始化yum缓存:
[root@ultraera repodata]# yum clean all

7.测试group信息是否添加正确可以用如下代码,只要有输出信息就表示成功了
[root@ultraera ~]# yum grouplist
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  centos yum