• 自定义yum仓库


                                             自定义yum仓库

    案例4:自定义yum软件仓库

    4.1问题

    本例要求在CentOS真机上利用RHEL7的光盘镜像文件准备一个软件仓库目录,完成下列任务:

    创建目录/var/www/html/rh7dvd

    挂载rhel-server-7.2-x86_64-dvd.iso到上述目录

    另外,利用收集的一些第三方RPM软件包文件,配置为可发布的yum仓库目录,相关任务如下:

    挂载RHEL7光盘镜像文件到/var/www/html/目录

    下载LibreOffice办公软件的rpm集合版文件

    将其中的内容释放到/opt/libreoffice/目录

    /opt/libreoffice/目录建立仓库档案

    4.2方案

    作为yum软件源的目录需要准备的内容:

    大量的.rpm软件安装包文件

    针对这些软件包的repodata/仓库档案

    repodata/仓库档案提供的数据:

    filelists.xml.gz:提供所有软件包的文件安装清单

    primary.xml.gz:提供所有软件包的基本/主要信息

    other.xml.gz:提供所有软件包的其他信息

    repomd.xml:提供上述档案数据文件.xml.gz的下载和校验信息

    4.3步骤

    实现此案例需要按照如下步骤进行。

    步骤一:准备/var/www/html/rh7dvd仓库目录

    1)创建目录/var/www/html/rh7dvd

    [root@room9pc13~]#mkdir /var/www/html/rh7dvd

    2)挂载rhel-server-7.2-x86_64-dvd.iso到上述目录

    [root@room9pc13~]#vim  /etc/fstab

    ....

    /ISO/rhel-server-7.2-x86_64-dvd.iso /var/www/html/rh7dvd  iso9660  loop,ro 0 0

    [root@room9pc13~]#mount -a

    3)确认部署结果

    [root@room9pc13~]#ls /var/www/html/rh7dvd/

    addons images Packages RPM-GPG-KEY-redhat-release

    EFI isolinux release-notes TRANS.TBL

    EULA LiveOS repodata

    GPL media.repo RPM-GPG-KEY-redhat-beta

    步骤二:准备/opt/libreoffice/仓库目录

    1)将获取的LibreOffice软件集合包释放到指定目录

    [root@room9pc13~]#ls LibreOffice_5.1.6.2_Linux_x86-64_rpm.zip

    LibreOffice_5.1.6.2_Linux_x86-64_rpm.zip

    [root@room9pc13~]#unzip LibreOffice_5.1*.zip -d /opt/libreoffice

    Archive:LibreOffice_5.1.6.2_Linux_x86-64_rpm.zip

    inflating:/opt/libreoffice/install

    creating:/opt/libreoffice/langpack_zh-CN/

    creating:/opt/libreoffice/langpack_zh-CN/RPMS/

    ....//释放到/opt/libreoffice目录

    2)使用createrepo建立档案

    [root@room9pc13~]#createrepo /opt/libreoffice/

    Spawning worker 0 with 53 pkgs

    Workers Finished

    Saving Primary metadata

    Saving file lists metadata

    Saving other metadata

    Generating sqlite DBs

    Sqlite DBs complete

    3)确认repodata/档案资料

    [root@room9pc13~]#ls /opt/libreoffice/repodata

    1a5d8311268f33ad2cbf91382110e1ef9875aeea366897253a5d27fd42f9e317-other.xml.gz

    2cd176f0b00492c0c13e0a659eda7dedeb1ab526dec5fd7c9bac7758558770d2-filelists.xml.gz

    6ecab3585a93a917202e177b9569046238332af449a6492fcace96ea79374668-filelists.sqlite.bz2

    b09a1f838262e0b67a5ab0d6be516bd921a914afd89864e09650f95662a20371-primary.sqlite.bz2

    b6fcf4a24de5dc08585bf52bd34be50d7df376d5fbcf50903bfd3c1dfdf160bf-other.sqlite.bz2

    f57724cf309cc102b2ee25596bf8fb39db3c23880404209ac1e379f7b9fd5c49-primary.xml.gz

    repomd.xml


    案例5:发布及测试yum仓库

    5.1问题

    沿用案例5,本例要求掌握发布及测试yum仓库的方法,方便在网络内提供集中的yum源服务器,主要完成下列任务:

    CentOS真机上发布yum源,包括:rhel7系统的光盘目录仓库、LibreOfficerpm软件包仓库

    在主机pc207上使用上述yum

    5.2方案

    通过网络发布yum软件源时,只需要配置HTTPFTP资源服务器,然后将提前准备好的yum仓库目录部署到可访问的资源位置即可。

    在访问网络yum软件源时,注意客户端的baseurl地址必须与资源提供方式一致:

    baseurl=htp://服务器地址/目录名==/var/www/html/目录名

    baseurl=ftp://服务器地址/目录位置==/var/ftp/目录名

    5.3步骤

    实现此案例需要按照如下步骤进行。

    步骤一:在CentOS真机上发布yum仓库

    1)快速搭建httpd服务器(若已建好,此步可跳过

    [root@room9pc13~]#yum -y install httpd//装包

    [root@room9pc13~]#systemctl restart httpd//起服务

    [root@room9pc13~]#systemctl enable httpd//设置开机自启

    2)确认前一步已经部署到Web网站目录的RHEL7光盘数据:

    [root@room9pc13~]#du -sh /var/www/html/rh7dvd///检查部署结果

    3.9G/var/www/html/rh7dvd/

    3)将准备好的LibreOffice仓库目录部署到Web网页目录

    [root@room9pc13~]#mv /opt/libreoffice/ /var/www/html/

    [root@room9pc13~]#du -sh /var/www/html/llibreoffice/ //检查部署结果

    234M/var/www/html/libreoffice

    步骤二:在pc207上访问yum仓库

    1)添加新的yum仓库设置

    [root@pc207~]#vim /etc/yum.repos.d/new.repo

    [rh7dvd]

    name=RHEL 7.2 Server

    baseurl=http://192.168.4.254/rh7dvd

    gpgcheck=0

    [libreoffice]

    name=LibreOffice 5

    baseurl=http://192.168.4.254/libreoffice

    gpgcheck=0

    2)测试新的yum仓库

    [root@pc207~]#yum repolist

    ....

    repo id repo name status

    libreoffice LibreOffice 5 53

    rh7dvd RHEL 7.2 Server 4620

    ....

  • 相关阅读:
    MD5 初探。
    VFW程序分析
    IE版本简单兼容 JS闭包和JS对象解说。
    句柄和指针
    超时时间已到。在从池中获取连接之前超时时间已过。出现这种情况可能是因为所有池连接都已被使用并已达到最大池大小
    DataGrid模板列上的ImageButton 不能触发ItemCommand事件
    html转换成文本
    几种取数据库随机记录的方法
    打开.net时CPU占用率100%的问题个人处理办法
    强制输出wxl
  • 原文地址:https://www.cnblogs.com/qingbai/p/11936515.html
Copyright © 2020-2023  润新知