Oracle OCP知识点详解2:yum 等服务的搭建

一、YUM/DNF 服务架构解析

1.1 核心组件交互流程

复制代码
sequenceDiagram
participant Client
participant YUM
participant Repository
participant RPMDB

Client->>YUM: yum install oracle-database-preinstall
YUM->>Repository: 获取元数据(repodata)
Repository-->>YUM: 返回软件包列表
YUM->>RPMDB: 检查已安装依赖
YUM->>Client: 显示解决方案
Client->>YUM: 确认安装
YUM->>Repository: 下载.rpm文件
Repository-->>YUM: 传输软件包
YUM->>RPMDB: 执行安装并更新数据库

1.2 Oracle Linux 仓库类型

仓库类型 访问方式 典型用途
ULN (Unbreakable Linux Network) 在线认证 获取官方安全更新
本地镜像仓库 HTTP/NFS 内网高速访问
Oracle Public Yum 公共HTTP 基础包获取
EPEL 第三方源 扩展软件包支持

二、本地 YUM 仓库搭建

2.1 基础仓库创建

复制代码
# 创建仓库目录结构
mkdir -p /var/www/html/repos/OracleLinux/OL9/baseos/x86_64
cp /mnt/iso/*.rpm /var/www/html/repos/OracleLinux/OL9/baseos/x86_64/

# 安装创建工具
dnf install -y createrepo

# 生成仓库元数据
createrepo -v /var/www/html/repos/OracleLinux/OL9/baseos/x86_64/

# 配置 Web 服务
systemctl enable --now httpd
firewall-cmd --permanent --add-service=http
firewall-cmd --reload

三、ULN 仓库配置

3.1 注册系统到 ULN

复制代码
# 安装所需工具
dnf install -y uln-registration

# 注册系统(需替换认证信息)
uln_register --username oracle_ocp_user --password MySecurePass123! \
  --serverurl https://linux-update.oracle.com

# 查看已注册频道
uln-channel --list

四、故障排查与日志分析

4.1 常见问题处理

故障现象 排查命令 解决方案
仓库元数据无法下载 curl -v <repo_url>/repodata/repomd.xml 检查网络/Firewall/路径权限
软件包依赖冲突 dnf repoquery --deplist <package> 使用 --skip-broken 跳过
GPG 验证失败 rpm --import <new_key> 更新 GPG 密钥
下载速度慢 dnf --setopt=timeout=30 install <pkg> 调整超时时间或更换镜像源

4.2 关键日志文件

| 日志路径 | 信息类型 | 分析工具建议 |
|---------------------------|-----------|---------------------|------|-----------|
| /var/log/yum.log | 软件安装历史记录 | grep "Installed:" |
| /var/cache/dnf/* | 缓存元数据与软件包 | du -sh 查看缓存大小 |
| /var/log/httpd/access_log | 仓库访问日志 | `awk '{print $1}' | sort | uniq -c` |

欢迎在评论区提交您的仓库配置案例或技术疑问!带你了解OCP证书含金量解析与高效备考攻略 | 2025年职业发展必备_博睿谷培训

相关推荐
u01074754611 分钟前
mysql如何实现高可用集群架构_基于MHA环境搭建与部署
jvm·数据库·python
一 乐18 分钟前
工会管理|基于springboot + vue工会管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·工会管理系统
qq_3806191620 分钟前
如何在phpMyAdmin中处理特殊字符账号名的授权_反引号的正确包裹
jvm·数据库·python
2201_7568473322 分钟前
HTML函数在老旧浏览器运行慢是硬件问题吗_软硬协同分析【教程】
jvm·数据库·python
志栋智能25 分钟前
当巡检遇上超自动化:一场运维质量的系统性升级
运维·服务器·网络·数据库·人工智能·机器学习·自动化
Micro麦可乐26 分钟前
Redis只会用来做缓存?解锁Redis非缓存的九个应用场景,90%程序员不知道的隐藏技能
数据库·redis·缓存·消息队列·分布式锁·延迟队列·布隆过滤器
21号 130 分钟前
10.Redis 缓存
数据库·redis·缓存
雨墨✘38 分钟前
CSS如何提高团队协作效率_推广BEM规范减少样式沟通成本
jvm·数据库·python
hef28843 分钟前
如何实现SQL字段值的计算输出:算术运算符与别名结合
jvm·数据库·python
那个失眠的夜1 小时前
Spring 的纯注解配置
xml·java·数据库·后端·spring·junit