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年职业发展必备_博睿谷培训

相关推荐
帧栈3 小时前
开发避坑指南(31):Oracle 11g LISTAGG函数使用陷阱,缺失WITHIN子句解决方案
oracle
瓜酷月..3 小时前
MySQL的高可用+MHA
数据库·mysql
差不多的张三3 小时前
【解决方案】powershell自动连接夜神adb端口
数据库·adb
小马哥编程4 小时前
【软考架构】第6章 数据库基本概念
数据库·oracle·架构
自学也学好编程4 小时前
【数据库】PostgreSQL详解:企业级关系型数据库
数据库·postgresql
.Eyes6 小时前
OceanBase 分区裁剪(Partition Pruning)原理解读
数据库·oceanbase
MrZhangBaby7 小时前
SQL-leetcode— 2356. 每位教师所教授的科目种类的数量
数据库
一水鉴天7 小时前
整体设计 之定稿 “凝聚式中心点”原型 --整除:智能合约和DBMS的在表层挂接 能/所 依据的深层套接 之2
数据库·人工智能·智能合约
翔云1234567 小时前
Python 中 SQLAlchemy 和 MySQLdb 的关系
数据库·python·mysql
孙霸天8 小时前
Ubuntu20系统上离线安装MongoDB
数据库·mongodb·ubuntu·备份还原