rpm包概述
-
RPM Package Manager,RPM包管理器
-
由红帽公司提出,适用于Rocky Linux、Redhat、SUSE等系列操作系统
-
建立集中数据库,记录软件包安装/卸载等变化信息,分析软件包依赖关系
-
RPM包 文件名特征
- 软件名-版本信息.操作系统.硬件架/构.rpm
- bash-4.2.46-30.el7.x86_64.rpm
- 操作系统:e代表企业版,l代表linux
yum仓库简介
-
YUM——Yellowdog Updater Modified,是Red Hat及其衍生版本(如CentOS、Fedora等)中使用的一个自动化软件包管理工具。它极大地简化了Linux系统上的软件安装、更新、查询和删除等操作,使得用户无需手动处理复杂的依赖关系。
-
Yum软件包管理:用于为客户端自动检查依赖关系并自动解决依赖关系(安装软件包)
-
Yum服务端可通过ftp://、http://、file://协议传递软件包
-
客户端配置文件要求:
- 客户端配置文件必须存放在:/etc/yum.repos.d/
- 客户端文件必须以.repo结尾
- /etc/yum.repos.d/下边的文件必须同时可用
实验
- 本实验在虚拟机A完成(这里使用你的虚拟机就行,我这边使用的Rocky)
构建服务端
- 虚拟机A操作,确保下方红色区域两个选项都有勾选
虚拟机A操作
[root@javasv-A ~]# mkdir /mydvd #创建挂载点
[root@javasv-A ~]# vim /etc/fstab #编写挂载文件
...此处省略一万字,在最后一行追加下方内容,注意空格...
/dev/cdrom /mydvd iso9660 defaults 0 0
[root@javasv-A ~]# mount -a #刷新文件
构建客户端
虚拟机A操作
[root@javasv-A ~]# mkdir /etc/yum.repos.d/bak/
[root@javasv-A ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak #备份,*代表通配符
[root@javasv-A ~]# vim /etc/yum.repos.d/mydvd.repo
[AppStream] #指定源名称
name=AppStream #指定源描述信息
baseurl=file:///mydvd/AppStream/ #指定仓库地址
enabled=1 #启用该仓库
gpgcheck=0 #不做签名认证
[BaseOS] #指定源名称
name=BaseOS #指定源描述信息
baseurl=file:///mydvd/BaseOS/ #指定仓库地址
enabled=1 #启用该仓库
gpgcheck=0 #不做签名认证
Yum仓库使用
- 清空缓存:dnf clean all
- 查看仓库状态:dnf repolist -v
- 安装软件包:dnf -y install 软件名
- 卸载软件包:dnf remove 软件名
[root@javasv-A ~]# dnf clean all #清空缓存
[root@javasv-A ~]# dnf repolist -v #查看目前仓库状态
在虚拟机A安装软件测试yum客户端配置是否成功
[root@javasv-A ~]# dnf -y install vsftpd #安装vsftpd软件
[root@javasv-A ~]# dnf -y install bind-chroot #安装bind-chroot软件
[root@javasv-A ~]# rpm -q vsftpd #查看是否成功安装vfstpd
[root@javasv-A ~]# rpm -q bind-chroot #查看是否成功安装bind-chroot
卸载vsftpd和bind-chroot
[root@javasv-A ~]# dnf remove vsftpd #卸载vsftpd
...此处省略一万字...
确定吗?[y/N]:y
[root@javasv-A ~]# dnf remove bind-chroot #卸载bind-chroot
...此处省略一万字...
确定吗?[y/N]:y