linux使用系统iso制作yum本地库

Linux系统默认软件为.rpm格式,安装方式为:
rpm -ivh packages.rpm
但各种包之间可能存在依赖关系,安装某个包的话,需要先安装另一个包作为基础
配置yum库后,使用yum install能够解决依赖关系,自动安装当前软件依赖的软件

centos系统安装镜像为两个iso文件CentOS-5.6-x86_64-bin-DVD-1of2.iso/CentOS-5.6-x86_64-bin-DVD-2of2.iso,
里面已经包含适合该系统版本5.6的大部分软件包 分别都存放在iso包根目录下的CentOS目录下

默认yum的系统配置文件存放目录为/etc/yum.repos.d/,里面包含文件(CentOS-Base.repo,CentOS-Base.repo,CentOS-Debuginfo.repo,CentOS-Media.repo CentOS-Vault.repo)
如果当前服务器能连接外网,那么使用Yum install会自动根据配置文件连接CentOS官网下载相应所需安装包,并进行安装。

当外网受限,只能内网时,默认/etc/yum.repos.d/的配置不能完成我们的需求,这时就需要用两个iso镜像做成yum源了。
大概过程如下(root操作):

  1. 上传两个iso镜像到root用户主目录下
  2. mkdir /mnt/01
    mkdir /mnt/02
  3. 执行
    mount -o loop -t iso9660 /root/CentOS-5.6-x86_64-bin-DVD-1of2.iso /mnt/01
    mount -o loop -t iso9660 /root/CentOS-5.6-x86_64-bin-DVD-2of2.iso /mnt/02
    cp -r /mnt01/Packages /var/ftp/pub
    cp -r /mnt02/Packages/* /var/ftp/pub/Packages
    cp -r /mnt01/repodata /var/ftp/pub
  4. 修改/etc/yum.repos.d/的配置文件CentOS-Base.repo文件,该目录下的其他配置文件要么删除或者更改位置要么更改名称,目的只使CentOS-Base.repo生效
    vi /etc/yum.repos.d/CentOS-Base.repo将内容修改如下:
    # 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.
    #
    #
    [base]
    name=CentOS-$releasever - Base
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
    baseurl=file:///var/ftp/pub
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
  5. 下面就可以使用yum install mysql或者yum groupinstall chinese-support的方式来安装所需要的功能或者软件了
    yum clean all
    yum list all
    yum makecache
    yum install zlib*
    yum groupinstall
  6. 如果其他主机也想使用此yum,则先开启此主机vsftp服务,然后修改其他主机的/etc/yum.repos.d/的配置文件CentOS-Base.repo文件,该目录下的其他配置文件要么删除或者更改位置要么更改名称,目的只使CentOS-Base.repo生效。
    vi /etc/yum.repos.d/CentOS-Base.repo将内容修改如下:
    baseurl=ftp://192.168.1.1/pub
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
  7. 这样其他主机就可以操作
    yum clean all
    yum list all
    yum makecache
    yum install zlib*
    yum groupinstall

You may also like...

发表评论