美高梅官方网站66159

在CentOS 6.1发布之前,RHEL的克隆版本不只CentOS一个

作者:新闻公告    来源:未知    发布时间:2020-05-06 03:43    浏览量:

CentOS 6.0已经正式发布一段时间了,做为一个大版本的第一个版本肯定有很多问题。而RHEL 6.1的发布则修补了很多问题,当然还增强(或增加)了一些功能,所以真正重要的用于生产服务器的RHEL分支还是期待CentOS 6.1吧。(毕竟RHEL不是所有人承受的起的,但是Fedora 16也是不错的选择) 图片 1

redhat使用centos配置yum源

Red Hat公司的产品中,有RedHat Linux(如Redhat8,9)和针对企业发行的版本Red Hat Enterprise Linux。CentOS 是Community ENTerprise Operating System的简称,我们有很多人叫它社区企业操作系统,不管你怎么叫它,它都是linux的一个发行版本。

在构成RHEL的大多数软件包中,都是基于GPL协议发布的,也就是我们常说的开元软件,正因为是这样,Red Hat公司也遵循这个协议,将构成RHEL的软件包公开发布,只要是遵循GPL协议,任何人都可以在原有的软件构成的基础上再开发和发布。CentOS就是这样在RHEL发布的基础上将RHEL的构成克隆再现的一个Linux发行版本。RHEL的克隆版本不只CentOS一个,还有White Box Enterprise Linux和TAO Linux 和Scientific Linux。

虽然说是RHEL的克隆,但并不是一模一样,所说的克隆是具有100%的互换性(真的么?)。但并不保障对应RHEL的软件在CentOS上面能也够100%的正常工作。并且安全漏洞的修正和软件包的升级对应RHEL的有偿服务和技术支持来说,数日数星期数个月的延迟情况也有。

redhat企业版若要适用yum源等于是适用了红帽的商业支持,需要付费注册。但 Red Hat Enterprise版和centOS从实质上说是一回事,只不过前者会获得redhat提供的商业服务。那么,我们只需要将 Red Hat Enterprise版中的yum配置成centOS的即可。下面是整个配置过程:

实验环境:

Red Hat Enterprise 5.4, CentOS 5.4.

  • 删除Red Hat Enterprise中的yum软件:

rpm -qa | grep yum.

然后将列出的所有yum相关程序都删除: rpm -e youryumapp

  • 保存你的yum配置文件,执行如下命令:

cd /etc/yum.repos.d/

mv CentOS-Base.repo CentOS-Base.repo.bak

  • 选取对应版本的CentOS的源配置文件,这里我们用中科大的CentOS源:

wget

比较好的源还有网易和搜狐的:

wget

wget

  • 修改配置文件。

有的源配置文件的内容可能如下:

  1. [ base ]
  2. name=CentOS-$releasever - Base
  3. mirrorlist=
  4. baseurl=
  5. baseurl=http: //mirrors.sohu.com/centos/$releasever/os/$basearch/
  6. gpgcheck=1
  7. gpgkey=http: //mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

一定要将其中所有mirrorlist注释掉(加#),baseurl替换成5中的格式(网易和中科大可参照修改)。

好了,经过以上步骤,redhat中的源已经配置成了CentOS的源。只需再安装yum组件进行更新即可。

  • 从CentOS中安装相应版本yum组件。

这里需要从与你的redhat系统对应的CentOS的安装包中找到yum的安装组件。CentOS与Redhat的版本对应见另一篇博客:

在CentOS安装包中找到以下组件并安装:

sudo rpm -ivh yum-updatesd-0.9-2.el5.noarch.rpm
sudo rpm -ivh yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm

sudo rpm -ivh yum-3.2.22-20.el5.centos.noarch.rpm yum-fastestmirror-1.1.16-13.el5.centos.noarch.rpm

注意:最后两个包最好一起装,因为这两个rpm包有相互依赖的关系。这也是一个小技巧,以后遇到有相互依赖包情况时可以一起安装。

  • 更新yum

执行yum makecache缓存本地数据。再执行yum list,是否看到本地缓存的所有yum安装包数据?

图片 2

恭喜你,你已经成功的替换了Redhat源,可以好好享受Linux带来的乐趣了!

如果有任何问题和建议,欢迎随时留言交流指正。

Red Hat公司的产品中,有RedHat Linux(如Redhat8,9)和针对企业发行的版本Red Hat Enterprise Linux。CentOS 是Community ENTerprise...

yum(Yellow dog Updater, Modified) 是一个与apt类似的软件包管理器,在Fedora,Redhat,SUSE,CentOS等Linux发行版中采用。

按照计划官方先推出CentOS 6,然后再进行CentOS 6.1的工作。Karanbir今年早些时候曾表示CentOS 6将在未来的数个星期内发布,而之后的CentOS 6.1则紧跟,不过目前情况不好。

软件包管理器可以解决rpm的依赖管理问题,使得软件的安装、升级更加容易。

官方进度在此:
不过,在CentOS 6.1发布之前,CentOS官方临时发布了CentOS 6.0 CR Repo,有需要的可以下载用于CentOS 6.0上。同时这也说明CentOS 6.1会再次跳票(大家都习惯了吧!):

yum使用中心仓库(repository)最为软件源,管理软件包,而各Linux系统通过yum的配置连接到这个源来获取软件包。

yum install centos-release-cr yum update

Table of Contents

  • 1 理由
  • 2 规划
  • 3 架设
  • 4 使用

然后会有大量更新,更新即可。

1 理由

尽管有很多的免费镜像提供yum源服务,但是还是有必要建立自己的yum服务器,主要出于以下几点考虑:

  1. 网络速度:访问互联网可能比较慢
  2. 节省带宽:如果有大量的服务器,架设自己的yum源可以有效节省互联网带宽
  3. 联网限制:对于有些内网服务器,不能连接到互联网
  4. 对于RHEL(Redhat Enterprise Linux),需要购买服务
  5. 便于发布自己开发的rpm包

翻译:cicku

2 规划

本公司服务器操作系统主要是RHEL和CentOS,所以希望同时提供这些操作系统的yum源。

由于没有购买RHEL服务,所以RHEL源使用DVD中的文件构建一个“静态”的源。

而CentOS则可以与一个发布的源进行同步,以保持更新。官方认可的镜像服务可以在 查找速度较快并且支持rsync的镜像,但是我找到了一个国内的镜像不在该列表中: mirrors.ustc.edu.cn/centos/. 这个镜像支持rsync 服务,可以进行同步更新。

yum源的规划如下: centos/ centos源,其目录结构与其他镜像站点相同

rhel/ RHEL源 6Server/ 5erver/ os/ x8664/ # 将RHEL dvd的iso光盘文件挂载到此目录 updates/ x8664/ # 使用mirrordir从 同步 custom/ x8664/ # 自己开发的内部使用的软件包 Packages/ # 打包的rpm文件 repodata/ # 用createrepo生成的索引文件 RPM-GPG-KEY-redhat-5Server RPM-GPG-KEY-redhat-6Server CentOS-mycompany.repo RHEL-mycompany.repo

3 架设

yum源可以使用http或ftp提供服务,这里使用nginx作为webserver,提供http方式的访问。

1.在/path/to/your/mirrors 创建好上面规划的目录结构。

  1. 对于centos,使用命令:
        rsync -avrt rsync://mirrors.ustc.edu.cn/centos/ –exclude=debug/ –exclude=i386/ –exclude=isos/ /path/to/your/mirrors/centos
    可以实现同步。也可以将此命令加入crontab,我设置的周期是每天同步。
  2. 对于RHEL,分成几个部分:
    1)用dvd镜像文件提供基本的软件包,只需要将RHEL dvd的iso光盘文件挂载到对应的目录即可,同时为了方便,可以将其中的RPM-GPG-KEY文件复制到/path/to/your/mirrors/RHEL目录下面,并按照版本命名。
    2)对于rhn提供的updates,也可以建立一个镜像。由于redhat.com不提供rsync服务,需要用mirrordir实现同步:
       mirrordir /var/files/mirrors/RHEL/5Server/updates/x86_64
    如果没有安装mirrordir,可以从 下载。 该命令也可以加入到crontab的计划任务中以实现定期同步。

    3)如果有一下内部开发的软件包,可以创建一个custom文件夹,将发布的rpm放到其中的Packages目录,再通过命令:
       cd path/to/your/mirrors/RHEL/5server/custom/x8664 createrepo -o . Packages
    创建索引文件

4 使用

为了便于使用,可以提供写好的repo文件,用户只需放到/etc/yum.repos.d/目录下,再执行yum update 即可。这里创建了CentOS-mycompany.repo 和 RHEL-mycompany.repo 放到/path/to/your/mirrors目录下,分别用于CentOS和RHEL。

在repo文件中可以尽量使用变量,以提高通用性。常用的变量包括:

$releasever,发行版的版本

$arch,cpu体系(划分过于细致,在repo文件中一般不使用,而是使用下面的$basearch)

$basearch,cpu的基本体系组

我的两个repo文件参考如下:

RHEL-mycompany.repo:

[base]
name=RHEL-mycompany - Base
baseurl=http://dev.mycompany.com/mirrors/RHEL/$releasever/os/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-redhat-$releasever


[updates]
name=RHEL-mycompany - Update
baseurl=http://dev.mycompany.com/mirrors/RHEL/$releasever/updates/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-redhat-$releasever


[extras]
name=RHEL-mycompany - Extra
baseurl=http://dev.mycompany.com/mirrors/RHEL/$releasever/extras/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-redhat-$releasever


[custom]
name=RHEL-mycompany - Custom
baseurl=http://dev.mycompany.com/mirrors/RHEL/$releasever/custom/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-redhat-$releasever

CentOS-mycompany.repo:

[base]
name=CentOS-mycompany - Base
baseurl=http://dev.mycompany.com/mirrors/centos/$releasever/os/$basearch/
gpgchecksever=1
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-CentOS-$releasever

#released updates
[update]
name=CentOS-mycompany - Updates
baseurl=http://dev.mycompany.com/mirrors/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-CentOS-$releasever



#additional packages that may be useful
[extras]
name=CentOS-mycompany - Extras
baseurl=http://dev.mycompany.com/mirrors/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-CentOS-$releasever

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-mycompany - Plus
baseurl=http://dev.mycompany.com/mirrors/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-CentOS-$releasever

#contrib - packages by Centos Users
[contrib]
name=CentOS-mycompany - Contrib
baseurl=http://dev.mycompany.com/mirrors/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-CentOS-$releasever


#packages of mycompany
[custom]
name=CentOS-mycompany - custom
baseurl=http://dev.mycompany.com/mirrors/centos/$releasever/custom/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://dev.mycompany.com/mirrors/centos/RPM-GPG-KEY-CentOS-$releasever

 

 

Author: Holbrook Wong <wanghaikuo@gmail.com>

Date: 2012-08-17 15:17:22 CST

HTML generated by org-mode 6.33x in emacs 23

下一篇:没有了

更多新闻推荐

Copyright © 2015-2019 http://www.77zhth.net. 美高梅官方网站66159有限公司 版权所有