美文网首页
M25_第四周:Yum源HTTP网络仓库搭建

M25_第四周:Yum源HTTP网络仓库搭建

作者: 顽媃啊 | 来源:发表于2017-08-05 21:30 被阅读0次

    什么是yum,yum是Yellow dog Updater, Modified 的简称,是杜克大学为了提高RPM 软件包安装性而开发的一种软件包管理器。起初是由yellow dog 这一发行版的开发者Terra Soft 研发,用python 写成,那时还叫做yup(yellow dog updater),后经杜克大学的Linux@Duke 开发团队进行改进,遂有此名。yum 的宗旨是自动化地升级,安装/移除rpm 包,收集rpm 包的相关信息,检查依赖性并自动提示用户解决。yum 的关键之处是要有可靠的repository,顾名思义,这是软件的仓库,它可以是http 或ftp 站点,也可以是本地软件池,但必须包含rpm 的header,header 包括了rpm 包的各种信息,包括描述,功能,提供的文件,依赖性等。正是收集了这些header 并加以分析,才能自动化地完成余下的任务。

    yum 的理念是使用一个中心仓库(repository)管理一部分甚至一个distribution 的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、删除等等操作,减少了Linux 用户一直头痛的dependencies 的问题。这一点上,yum 和apt 相同。apt 原为debian 的deb 类型软件管理所使用,但是现在也能用到RedHat下的rpm了。

    yum 主要功能是更方便的添加/删除/更新RPM 包,自动解决包的依赖性问题,便于管理大量系统的更新问题。

    yum 可以同时配置多个资源库(Repository),简洁的配置文件(/etc/yum.conf),自动解决增加或删除rpm 包时遇到的依赖性问题,保持与RPM 数据库的一致性。

    这里给大家介绍的是安装httpd服务搭建网络仓库:

    1、首先安装httpd服务:

    http.png

    2、安装好后我们开启服务:

    [ root@localhost ~ ]#systemctl start httpd.service
    [ root@localhost ~ ]#ps aux|grep httpd
    root      4668  0.5  0.4 221936  5004 ?        Ss   10:47   0:00 /usr/sbin/httpd -DFOREGROUND
    apache    4669  0.0  0.2 221936  2956 ?        S    10:47   0:00 /usr/sbin/httpd -DFOREGROUND
    apache    4670  0.0  0.2 221936  2956 ?        S    10:47   0:00 /usr/sbin/httpd -DFOREGROUND
    apache    4671  0.0  0.2 221936  2956 ?        S    10:47   0:00 /usr/sbin/httpd -DFOREGROUND
    apache    4672  0.0  0.2 221936  2956 ?        S    10:47   0:00 /usr/sbin/httpd -DFOREGROUND
    apache    4673  0.0  0.2 221936  2956 ?        S    10:47   0:00 /usr/sbin/httpd -DFOREGROUND
    root      4675  0.0  0.0 112648   960 pts/1    R+   10:47   0:00 grep --color=auto httpd
    

    如下图: jt.png

    3、现在我们暂时还是无法访问的,先来关闭防火墙:

    [ root@localhost ~ ]#systemctl  stop firewalld.service
    

    4、关闭后我们用另外一台机器访问http地址:

    fu.png

    5、配置服务端的仓库

    因为是光盘挂载,要实现网络仓库得把光盘里面的包和文件拷贝到服务器端,如:

    先挂载光盘到服务端的机器上:

    [ root@localhost ~ ]#mount /dev/sr0  /mnt
    // sr0: 光盘 mount: 挂载命令  /mnt: 挂载目录
    

    挂载好后,光盘里面的文件和目录都在/mnt目录下

    gp.png

    6、接下来我们把里面文件拷贝到/var/www/html(httpd服务页面文件存放目录),因为文件特别多拷贝的时候需要多等待,因为是服务端,所以必须要拷贝到机器上面,如果是本地端直接挂载光盘即可:

    [ root@localhost /var/www/html ]#cp -a /mnt/* ./
    [ root@localhost /var/www/html ]#ls
    CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
    EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL
    

    7、 都设置好后,我们去另外一台机器把Yum源设置成刚刚服务端源:

    首先把/etc/yum.repos.d/目录下的repo包备份到一个目录

    bf.png

    编辑文件:vim /etc/yum.repos.d/yyc.repo

    root@CentOS ~ ]#vim /etc/yum.repos.d/yyc.repo 
      [yyc]    
      name=wzc
      baoeurl=http://172.18.252.144/$releasever
      gpgcheck=0 
    
    //第一行:RepositoryID,库的ID,这个可以随意取,但是不要有空格和一些奇怪的字符,不然很可能会出错
    //第二行:库的名字,这个可以有空格
    //第三行:yum源地址,也就是我们刚刚配置的服务端的源,$releasever是你系统的主版本号
    
    
    pz.png

    这样目前来说就配置好了,我们来测试是否成功

    [ root@CentOS ~ ]#yum repolist    
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    http://172.18.252.44/6/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
    Trying other mirror.
    To address this issue please refer to the below knowledge base article 
    
    https://access.redhat.com/articles/1320623
    
    If above article doesn't help to resolve this issue please open a ticket with Red Hat Support.
    
    repo id                                repo name                          status
    yyc                                    wzc                                6,706
    repolist: 6,706
    
    //yum repolist获取当前有效repolist中所能安装的所有rpm包列表
    
    cg.png

    这样就好了,使用的包都是服务端的包安装的

    相关文章

      网友评论

          本文标题:M25_第四周:Yum源HTTP网络仓库搭建

          本文链接:https://www.haomeiwen.com/subject/srvwlxtx.html