6、CentOS搭建本地Yum源以及使用163的Yum源
6、CentOS搭建本地Yum源以及使用163的Yum源
刘付kin 发表于1年前
6、CentOS搭建本地Yum源以及使用163的Yum源
  • 发表于 1年前
  • 阅读 26
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

#1:===利用ISO镜像制作基于本地磁盘路径的yum源====

原理:centos iso本身就是一个yum源,在centOS6.7/Packages里面有很多的rpm包,这些包的映射关系保存在centOS6.7/repodata/中,所以我们只需要将它挂在到相应的目录,然后在配置文件哪里去指向这个yum源就行了。

其实Yum源也是很简单的,只要那个文件夹中拥有repodata/repomd.xml这个文件,它就描述着RPM包之间的依赖关系,这个依赖文件在ISO中的centOS6.7/repodata/就已经提供了,如果想要自己去创建这个依赖文件夹,可以使用createrepo 命令,详情可见第三种创建方式。

  • 1:挂载操作系统的镜像文件到一个指定的目录下,默认挂载在/mnt/cdrom下

      mkdir /mnt/centOS6.7/
      mount /dev/cdrom /mnt/centOS6.7/
    
  • 2:将/etc/yum.repos.d/的配置文件“删除”或者重命名为后缀不是.repo的文件。

      cd /etc/yum.repos.d/
      rename .repo .repo.bak *
      vi /etc/yum.repos.d/localFile.repo
    
  • 内容为:

      # CentOS-Media.repo
      #
      #  This repo can be used with mounted DVD media, verify the mount point for
      #  CentOS-6.  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=c6-media [command]
      #  
      # or for ONLY the media repo, do this:
      #
      #  yum --disablerepo=\* --enablerepo=c6-media [command]
    
      [localFile-Yum]
      name=localFile-Yum
      baseurl=file:///mnt/centOS6.7
      gpgcheck=1
      enabled=1
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    

#2:利用ISO镜像制作内网web服务器Yum源:http://localhost/centOS6.7

原理:centos iso本身就是一个yum源,在centOS6.7/Packages里面有很多的rpm包,这些包的映射关系保存在centOS6.7/repodata/中,所以我们只需要安装一个httpd Apache服务器,然后将镜像挂载到的将它挂在web的html下就行了。

  • 1:挂载操作系统的镜像文件到/var/www/html/centOS6.7下,因为httpd的默认工作路径就是这个:/var/www/html/

      mkdir /var/www/html/centOS6.7
      mount /dev/cdrom /var/www/html/centOS6.7/
    
  • 2:将/etc/yum.repos.d/的配置文件“删除”或者重命名为后缀不是.repo的文件。

      cd /etc/yum.repos.d/
    
      rename .repo .repo.bak *
    
      vi /etc/yum.repos.d/httpWeb.repo
    
  • 内容为:

      # CentOS-Media.repo
      #
      #  This repo can be used with mounted DVD media, verify the mount point for
      #  CentOS-6.  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=c6-media [command]
      #  
      # or for ONLY the media repo, do this:
      #
      #  yum --disablerepo=\* --enablerepo=c6-media [command]
    
      [httpWeb-Yum]
      name=httpWeb-Yum
      baseurl=http://localhost/centOS6.7
      gpgcheck=1
      enabled=1
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    

#3:===自己对iso中的packages中的rpm包进行依赖关系的处理====**

这里边利用iso镜像文件提供的包作为rpm包源,同时借助createrepo 生成依赖关系

  • 1:首先将镜像文件中的rpm包拷贝到一个文件中,如:/usr/mysoft/yum/Packages 中,

      mkdir /mnt/centOS6.7/
    
      mkdir /usr/mysoft/yum/
    
      mount /dev/cdrom /mnt/centOS6.7/
    
      cp -r /mnt/centOS6.7/Packages  /usr/mysoft/yum/
    
  • 2:生成rpm依赖需要createrepo 工具来处理依赖关系,所以需要先从上述的rpm包中安装createrepo 工具。

    首先检测系统是否已经安装了这个工具

      rpm -aq | grep create*
    

    如果还没有安装,则需要安装

      rpm -ivh createrepo-0.9.9-17.el6.noarch.rpm
    

    其中会遇到一些依赖关系,需要一一安装

  • 3:利用createrepp 处理rpm包之间的依赖关系(需要10分钟左右,提示:Spawning worker 0 with 3720 pkgs,等待就好)

      createrepo /usr/mysoft/yum/Packages/
    
      完成后会在/usr/mysoft/yum/Packages/  生成一个repodata文件夹,里面就有相关的依赖关系文件
    
      cat /usr/mysoft/yum/Packages/repodata/repomd.xml
    
  • 4:配置yum源配置文件,在vi /etc/yum.repos.d/createRepo.repo中

      [createRepo-Yum]
      name=createRepo-Yum
      baseurl=file:///usr/mysoft/yum/Packages
      enabled=1
      gpgcheck=0
    
  • 5:yum 清除之前的缓存,

      yum clean all
    
  • 6:yum 列出来

      yum list
    

#4:==========使用163的服务器==========**

  • 1:到http://mirrors.163.com的 centos帮助文档中下载CentOS6-Base-163.repo文件,存放到/etc/yum.repos.d中

      http://mirrors.163.com/.help/CentOS6-Base-163.repo
    
  • 2:将Centos6-Base-163.repo中的$releasever改为对应的Centos的版本号即可,这里给大家一个网友修改好的文件

      # CentOS-Base.repo
      #
      # The mirror system uses the connecting IP address of the client and the
      # update status of each mirror to pick mirrors that are updated to and
      # geographically close to the client.  You should use this for CentOS updates
      # unless you are manually picking other mirrors.
      #
      # If the mirrorlist= does not work for you, as a fall back you can try the 
      # remarked out baseurl= line instead.
      #
      #
    
      [163Yum]
      name=CentOS-6 - Base - 163.com
      baseurl=http://mirrors.163.com/centos/6/os/$basearch/
      #mirrorlist=http://mirrorlist.centos.org/?release=6$releasever&arch=$basearch&repo=os
      gpgcheck=1
      gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
    
      #released updates 
      [updates]
      name=CentOS-6 - Updates - 163.com
      baseurl=http://mirrors.163.com/centos/6/updates/$basearch/
      #mirrorlist=http://mirrorlist.centos.org/?release=6$releasever&arch=$basearch&repo=updates
      gpgcheck=1
      gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
    
      #additional packages that may be useful
      [extras]
      name=CentOS-6 - Extras - 163.com
      baseurl=http://mirrors.163.com/centos/6/extras/$basearch/
      #mirrorlist=http://mirrorlist.centos.org/?release=6$releasever&arch=$basearch&repo=extras
      gpgcheck=1
      gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
    
      #additional packages that extend functionality of existing packages
      [centosplus]
      name=CentOS-6 - Plus - 163.com
      baseurl=http://mirrors.163.com/centos/6/centosplus/$basearch/
      #mirrorlist=http://mirrorlist.centos.org/?release=6$releasever&arch=$basearch&repo=centosplus
      gpgcheck=1
      enabled=0
      gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
    
      #contrib - packages by Centos Users
      [contrib]
      name=CentOS-6 - Contrib - 163.com
      baseurl=http://mirrors.163.com/centos/6/contrib/$basearch/
      #mirrorlist=http://mirrorlist.centos.org/?release=6$releasever&arch=$basearch&repo=contrib
      gpgcheck=1
      enabled=0
      gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6
    
标签: YUM
共有 人打赏支持
粉丝 7
博文 100
码字总数 72832
×
刘付kin
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: