麒麟V10挂载ISO镜像配置本地YUM源

本文档介绍如何在麒麟V10系统中挂载ISO镜像文件,并配置本地YUM源。

1. 挂载ISO文件

假设ISO文件存放在 /opt/iso/ 目录,目标挂载路径为 /mnt/media/iso

1.1 临时挂载

1
mount -t iso9660 /opt/iso/Kylin-Server-V10-SP3-2403-Release-20240426-x86_64.iso /mnt/media/iso

1.2 永久挂载

编辑 /etc/fstab 文件,在末尾添加以下行:

1
/opt/iso/Kylin-Server-V10-SP3-2403-Release-20240426-x86_64.iso    /mnt/media/iso    iso9660    loop,ro,auto    0 0

2. 配置YUM源

/etc/yum.repos.d/ 目录下创建新的源配置文件 Kylin_Local.repo

1
2
3
4
5
6
[Kylin-Local]
name=Kylin V10 Local Repository
baseurl=file:///mnt/media/iso
enabled=1
gpgcheck=1
gpgkey=file:///mnt/media/iso/RPM-GPG-KEY-Kylin

配置项说明

  • baseurl: 指定本地ISO的挂载路径。
  • enabled: 设为 1 以启用此仓库。
  • gpgcheck: 设为 1 以启用GPG签名验证,确保软件包安全。
  • gpgkey: 指定用于验证的GPG公钥文件位置。

3. 测试源配置

配置完成后,执行以下命令测试源是否正常工作:

1
2
3
4
5
6
7
8
9
# 清理旧的YUM缓存并生成新缓存
dnf clean all
dnf makecache

# 列出已启用的仓库,检查本地源是否在列
dnf repolist

# 尝试搜索一个软件包,测试源功能
dnf search openssh-server

4. 扩展:搭建局域网共享源

若需在多台机器上使用,可在局域网内搭建一个共享源服务器。

4.1 在源服务器上操作

1
2
3
4
5
6
7
8
9
10
# 1. 安装Nginx Web服务器
dnf install -y nginx
systemctl enable --now nginx

# 2. 将ISO挂载到Nginx的Web目录
mount -t iso9660 -o loop /opt/iso/Kylin-Server-V10-SP3-2403-Release-20240426-x86_64.iso /usr/share/nginx/html/kylin-local/

# 3. 配置防火墙,允许HTTP访问
firewall-cmd --permanent --add-service=http
firewall-cmd --reload

4.2 在客户端机器上配置

将客户端YUM源配置文件中的 baseurl 修改为:

1
baseurl=http://<源服务器IP地址>/kylin-local

5. 常见问题与解决方案

问题1:挂载点不存在或权限不足

1
2
3
# 创建挂载目录并设置权限
mkdir -p /mnt/media/iso
chmod 755 /mnt/media/iso

问题2:GPG密钥验证失败

  • 临时解决方案(不推荐用于生产环境)
    Kylin_Local.repo 文件中将 gpgcheck=1 改为 gpgcheck=0
  • 正确解决方案
    检查GPG密钥文件路径和名称是否正确。
    1
    ls -l /mnt/media/iso/RPM-GPG-KEY-Kylin

问题3:软件包依赖缺失

1
2
3
4
# 查看详细的安装错误信息
dnf --verbose install <软件包名>

# 如果确认本地源缺少某些依赖,可以考虑配置多个YUM源(如结合官方网络源)