当前位置: 首页 > news >正文

Linux操作系统如何使用ISO镜像文件来搭建本地镜像源?

目录

一、部署本地源

1.1.部署本地源的原因

1.2.部署流程

方式一(将ISO内容解压至本地目录(通用)):

1.2.1.配置步骤

1.2.2.创建本地源配置文件

1.2.3.验证配置有效性

方式二(通过 file:// 协议直接引用ISO文件需系统支持):

2.2.1.上传系统ISO镜像源文件

2.2.2.备份原有的镜像配置文件

2.2.3.创建repo文件

2.2.4.配置repo文件内容

2.2.4.启用本地源


一、部署本地源

1.1.部署本地源的原因

        在实际的生产中,很多单位并不能直接将服务器接入互联网中来进行使用,这就使得我们不能直接接通互联网配置镜像源来直接进行软件包的下载、更新,这个时候如果需要避免接通外网,但是又有对离线环境安装软件包的需求。就可以使用镜像来作为本地源来进行管理。

        原因:在实际生产的过程中,为避免安装很多无关不必要的软件,以及减少软件漏洞,很多时候投入生产的操作系统,安装方式都是最小化安装,这就使得其实ISO中自带的很多安装包并没有得到安装。

1.2.部署流程

在Linux系统中,若要将ISO作为本地源,其核心思路有两种,一种是将ISO隐式挂载在操作系统上,这种通过隐式挂载的方式可以直接访问ISO文件内的文件系统内容;或则将ISO内容提前解压至本地目录,再通过文件路径指向源文件。

核心原理
        ISO镜像本质是一个文件系统快照(通常为iso9660格式),包含本地源所需的repodata(元数据)和Packages(软件包)等目录。不挂载时,需通过以下两种方式让包管理器(如yum/dnf、apt)识别ISO内的文件。

方式一(将ISO内容解压至本地目录(通用)):

部分Linux发行版的包管理器(如yum/dnf)支持通过循环设备(loop device)隐式挂载ISO,直接在配置文件中指定ISO文件路径,无需手动执行mount命令。系统会自动处理ISO的读取和解码。

例如:

1.2.1.配置步骤

1.上传iso文件

2. 创建临时挂载点和目标目录  
mkdir -p /tmp/iso-mount  /mnt/local-repo  

3. 临时挂载ISO(只读模式,不影响原文件)  

注意:

        为什么不是显式挂载还是隐式的临时挂载?

        无论是显式还是隐式挂载,基于iso文件的特殊性,都只能以“只读访问”的方式下来进行访问,一旦涉及到“需要写入操作”或“依赖长期稳定挂载”的场景下无法直接使用。
mount -o loop,ro /iso/CentOS-7-x86_64-DVD-2009.iso /tmp/iso-mount 

4. 复制ISO内所有文件至目标目录(保留目录结构)  
cp -r /tmp/iso-mount/* /mnt/local-repo/  

进入到Packages包里边就能看到该目录下有很多软件安装包

5. 卸载临时挂载点(此时ISO已无用,可删除)  
umount /tmp/iso-mount  
rmdir /tmp/iso-mount

1.2.2.创建本地源配置文件

在/etc/yum.repos.d/目录下新建.repo文件(如localyum.repo):

[localyum]

name=Local ISO Repository

baseurl=file:///mnt/local-repo  # 若直接使用ISO挂载路径,此处为file:///mnt

enabled=1         # 启用该源

gpgcheck=0      # 若ISO未签名,关闭GPG校验(或配置gpgkey指向ISO内的公钥)

注意:

        在yum配置文件中,注释是不被允许的。如果您需要注释掉某一行配置,可以使用其他方式来实现,比如将该行配置前面加上井号(#)来表示注释。但是请注意,这种方式可能会导致yum无法正确解析配置文件,从而引发错误。

1.2.3.验证配置有效性

刷新包管理器缓存,确认ISO内的源被识别:

yum clean all && yum makecache

验证:

测试安装WireShark软件

方式二(通过 file:// 协议直接引用ISO文件需系统支持):

2.2.1.上传系统ISO镜像源文件

这里以我本地环境进行示例:

2.2.2.备份原有的镜像配置文件

2.2.3.创建repo文件

在/etc/yum.repos.d/目录下创建local.repo文件,用于配置本地源信息。

2.2.4.配置repo文件内容

在local.repo文件中设置baseurl=file://iso文件位置,指定本地源的路径(需绝对路径  );设置gpgcheck=0,关闭GPG检查。

[localyum]  
name=Local ISO Repository  
baseurl=file:///iso/CentOS-7-x86_64-DVD.iso  
enabled=1
gpgcheck=0 

2.2.4.启用本地源

系统不支持!!!!

若提示“无法读取文件”,可能是系统不支持直接引用ISO文件(如apt不支持此方式),需改用方式一。

http://www.dtcms.com/a/464985.html

相关文章:

  • UMI 中使用qiankun问题记录
  • 演示和解读ChatGPT App SDK,以后Android/iOS App不用开发了?
  • Spring Boot 与 WebSocket:长连接掉线、心跳与消息广播的问题
  • 数琨创享:新能源行业标杆企业QMS质量管理平台案例
  • 如何用easyui做网站网站设计说明书5000字
  • 从MySQL到ClickHouse超大规模数据分析的架构迁移实践与性能对比
  • 架构图在什么网站可以做wordpress-saas
  • echarts不根据传入参数,自定义 legend 的内容(视觉映射)
  • H3C IRF
  • 【C++】继承深度解析:继承方式和菱形虚拟继承的详解
  • 徐州 网站 备案 哪个公司做的好phpcms 中英文网站
  • WebSocket | 一点简单了解
  • 算法题基础 : Java : BufferedReader、BufferedWriter 和 StringTokenizer 详解
  • 企业微信 自建应用审批流程引擎功能开发【报错分析】
  • Slf4j 接口文档左侧菜单有显示,但是点击后空白
  • 【AES加密专题】4.Sbox的解析和生成
  • 考完HCIE数通,能转云计算 / 安全 / AI方向吗?
  • 重庆企业网站建设推荐怎么申请域名和备案
  • 松江 网站建设公司拼多多推广联盟
  • 中国极端气象干旱事件(1951-2022)
  • 一文详解Go 语言内存逃逸(Escape Analysis)
  • 学习threejs,实现粒子化交互文字
  • 密码学基础:RSA与AES算法的实现与对比
  • RAG:生成与检索的完美结合
  • 一款由网易出品的免费、低延迟、专业的远程控制软件,支持手机、平板、Mac 、PC、TV 与掌机等多设备远控电脑!
  • [C# starter-kit] Blazor EntityTable 组件 | 预构建
  • 深入浅出 AI Agent:从概念本质到技术基石
  • 宁波网站制作服务wordpress搭建淘客网站
  • 第五章:Go的“面向对象”编程
  • 【实用工具】mac电脑计算文件的md5、sha1、sha256