Linux网络服务之部署YUM仓库

YUM简介

CentOS使用yum和dnf 解决rpm的包依赖关系。

YUM:rpm的前端程序,可解决软件包相关依赖性,可在多个库之间定位软件包,up2date的替代工具,CentOS 8 使用dnf代替了yum,不过保留了和yum的兼容性,配置也是通用的。

YUM 的前身是 YUP(Yellow dog Updater,Yellow dog Linux 的软件更新器),最初由 TSS 公司(Terra Soft Solutions,INC.)使用 Python 语言开发而成,后来由杜克大学(Duck University)的 Linux 开发队伍进行改进,命名为 YUM(Yellow dog Updater,Modified)。 要成功使用 YUM 机制来更新系统和软件,需要有一个包含各种 rpm 安装包文件及其依 赖软件的软件仓库(repository),提供软件仓库的服务器也称为“源”服务器。在客户机中只 要正确指定软件仓库的地址等信息,就可以通过对应的“源”服务器来安装或更新软件。

YUM(Yellow dog Updater,Modified):

  • 基于RPM包构建的软件更新机制
  • 可以自动解决依赖关系
  • 所有软件包由集中到YUM软件仓库提供

在这里插入图片描述

yum工作原理

yum依赖于环境,依赖于服务端和客户端,允许跨网络。

Yum基于C/S模式:

  • yum 服务器存放rpm包和相关包的元数据
  • yum客户端访问yum服务器进行安装或查询等

Yum实现过程:

先在yum服务器上创建 yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下),当yum客户端利用yum/dnf工具进行安装时包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。

在这里插入图片描述
服务器(RPM包和元数据缺一不可):

  • RPM包 (存放在包文件夹Packages中)
  • 元数据(存放在元数据文件夹repodata中,其中包含:目录(软件的目录),软件的依赖关系,软件的分组

#查看光盘中自带的Yum仓库,可以看到Packages文件夹和repodata文件夹:

[root@localhost ~]# mount /dev/sr0 /mnt //将光盘挂载到/mnt/目录下
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# ls /mnt //查看光盘内的包文件夹和元数据文件夹
CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7
EFI images Packages RPM-GPG-KEY-CentOS-Testing-7
EULA isolinux repodata TRANS.TBL

在这里插入图片描述

如何实现安装服务

在这里插入图片描述

yum客户端配置

yum客户端配置文件

/etc/yum.conf #为所有仓库提供公共配置
/etc/yum.repos.d/*.repo #每个仓库的配置文件

yum主配置文件

位置:/etc/yum.conf在这里插入图片描述

日志文件

位置:/var/log/yum.log

[root@localhost yum.repos.d]# head -5 /var/log/yum.log //查看日志文件
Jan 19 10:55:29 Installed: tree-1.6.0-10.el7.x86_64
Feb 21 23:21:53 Installed: finger-0.17-52.el7.x86_64
Mar 19 17:10:29 Updated: 32:bind-license-9.11.4-26.P2.el7_9.9.noarch
Mar 19 17:10:30 Updated: 32:bind-libs-lite-9.11.4-26.P2.el7_9.9.x86_64
Mar 19 17:10:30 Updated: 32:bind-libs-9.11.4-26.P2.el7_9.9.x86_64

yum命令详解

在这里插入图片描述
包组:
在这里插入图片描述

yum仓库搭建方式

软件仓库的提供方式:

  • 本地目录:file://绝对路径
  • FTP服务:ftp://ip地址/站点里的路径
  • HTTP服务:http://域名或者ip地址/站点里的路径

搭建本地yum仓库

步骤1、挂载光盘(/dev/sr0或/dev/cdrom都可以,/dev/cdrom是/dev/sr0的软链接)
在这里插入图片描述
步骤2、切换到 /etc/yum.repo.d/目录,将自带的仓库文件移走。
在这里插入图片描述
步骤3、新建yum仓库文件。在这里插入图片描述
步骤4、清理缓存并安装软件。
在这里插入图片描述

http方式搭建云仓库

http方式搭建云仓库,在外网和内网的环境下都可以使用,但多用于内网。

服务端:192.168.72.10

客户端:192.168.72.129

步骤1、服务端安装hhtpd服务程序。
在这里插入图片描述
步骤2、服务端切换到/var/www/html/ 目录,新建子目录centos7,并将光驱挂载到centos7目录下(也可以将光驱中的所有软件包拷贝到该目录下)。在这里插入图片描述
步骤3、服务端关闭防火墙和selinux,启动httpd服务。在这里插入图片描述
步骤4、客户端切换到/etc/yum.repos.d/目录,新建文件夹,将默认的yum仓库文件移动到该目录下。编写新的仓库文件在这里插入图片描述
在这里插入图片描述
步骤5、清理yum缓存,重新建立元数据。并测试使用yum能否成功安装软件包。在这里插入图片描述
在这里插入图片描述

ftp方式搭建云仓库

ftp方式搭建云仓库,在外网和内网的环境下都可以使用,但多用于内网。

服务端:192.168.72.10

客户端:192.168.72.129

步骤1、服务端安装vsftpd服务程序。
步骤2、服务端切换到 /var/ftp/ 目录下新建一个子目录centos,并将光驱挂载到centos目录下(也可以将光驱内的所有文件包复制到centos目录下)。在这里插入图片描述
步骤3、服务端开启vsftpd服务,关闭防火墙和selinux。在这里插入图片描述
步骤4、客户端安装ftp程序,测试ftp服务是否正常。在这里插入图片描述
步骤5、客户端编写yum仓库文件。在这里插入图片描述

在这里插入图片描述
步骤6、清理yum缓存,重新建立元数据。并测试使用yum能否成功安装软件包。在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值