admin 管理员组

文章数量: 887021

Windows 7系统下搭建yum源服务

 

应用场景:1、在不能连接互联网的情况下,需要安装或者更新linux系统上的软件,比如开发环境需要的gcc、gcc-c++等

          2、一个rpm软件安装的时候,需要依赖一大堆其他rpm软件,并且有依赖顺序关系,手动一个一个安装十分麻烦。

 

资料:    对应系统的系统iso镜像。主要用到系统镜像中packages目录中的rpm包文件。

 

说明:目前yum的源服务器可以搭建在windows和linux平台,常用http  ftp等方式进行。

      由于出差经常会用到windows系统,所以,今天主要说明一下在windows7系统

使用自带ftp进行搭建。

 

windows7下搭建ftp

D盘创建目录yum,为ftp的根目录

 

控制面板----à程序---à打开关闭windows功能---àInternet信息服务

勾选 ftp服务器和web管理工具。然后点击确认,等待安装结束。

 

安装结束以后:

进入 控制面板--------系统和安全--------管理工具

在打开的如下图界面中,双击刚才安装的 “internet信息服务管理器”

弹出如下图的界面


右键单机左边,“添加ftp站点”选项

弹出如图所示的界面

 

下一步

 

下一步

 

完成

 

在你主界面的左边 就会有你建立的ftp站点

 

将光盘镜像中的packages包拷贝的ftp的根目录中,这里是D:\yum

 

Linux系统中创建Packages包中的rpm软件包依赖关系

创建目录/var/opt/repos

同样,将iso系统镜像中packages目录及该目录中的所有文件拷贝到所创建的目录中,通过命令:

进入packages 目录执行。

 

rpm –ivh

createrepo-0.9.9-18.el6.noarch.rpmpython-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm

安装createrepo程序,其中后两个是第一个的依赖文件,所有的包均在packages包。

 

该程序主要用来生成packages保重软件的依赖关系,

 

 

createrepo /var/opt/repos/packages

等待一会,会在packages目录中生成一个repodata文件夹。该文件夹中生成如下文件。

 

这些文件主要说明了 关于rpm程序包之间的依赖关系。将生成的repodata目录全部拷贝到windows的packages中。目的是为了,当linux运行yum的时候,可以通过ftp访问到rpm包之间的依赖关系。

 


 

Linux系统中yum 源的配置。

备份/etc/yum.repos.d/目录下的所有文件。然后将该目录下的所有文件删除掉。

在该目录下创建rhel-source.repo文件

内容为:

 

 [base]

 name=base

 baseurl=ftp://192.168.14.225/Packages

 enabled=1

 gpgcheck=1

  #gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6    #支持6.x

 

根据需要:一般会更改baseurl选项。也就是你配置的ftp服务的ip和对应的rpm包路径。

 

测试与安装

在linux系统上运行 yum list 命令来测试系统搭建是否成功。

用来显示出已经安装 未安装 和可以安装的软件包,此时说明你已经配置成功、

 

假如需要安装对应的软件包中的NetworkManager工具,只需要运行命令

yum install NetworkManager即可,会自动关联所需要的依赖关系。

 

 

后记:

1、  由于packages数据量比较大,一般4G左右。往windows和linux上拷贝的时候会占用一定时间,因此。以上工作建议在出差之前做。到实际使用的时候只需要linux配置yum的源(windows的ftp)既可以。这样只需要保证windows机器上有packages包就可以,省去了现场往linux服务器上拷贝packeages的麻烦。

 

2、该方法主要是针对centos 和redhat。对其他系统不使用。对于生成的依赖目录repodata中的文件,适用于相对应的版本。比如centos 6.5和 centos6.3.生成各自的资源依赖以后,保存起来,以后就不用再生成了。拷贝过去用就可以。

 

补充:1、测试成功后,可以关闭掉windows机器上的ftp服务,在进行yum安装时可以根据repodata中的xml文件找到依赖关系,但是无法下载;

2、之所以把package传到linux系统上,就是为了产生repodata文件夹,建立之间的依赖关系,在建立之后linux机器上的package是没有用的;

3、以后出差之前在自己windows机器上建立好packageyum源和之间的依赖关系,到现场只要在linux服务器配置yum源;

4、建立ftp源之后,可以访问如下地址 ftp://192.168.14.233/Packages/,ip随本机ip地址变化。

本文标签: 繁琐 软件 yum Linux