CentOS无网络时,如何用本地光盘源安装软件?

在CentOS系统的管理和维护中,软件包的安装与更新是日常操作的核心,我们会依赖于网络上的官方或第三方YUM源,在某些特定场景下,如网络隔离的环境、内网服务器集群、或需要快速批量部署时,配置一个本地化的软件源就显得尤为重要,使用CentOS的安装光盘(CD/DVD)或其ISO镜像文件作为本地源,是一种最直接、最可靠的离线解决方案,本文将详细介绍如何配置和使用CentOS本地CD源。

CentOS无网络时,如何用本地光盘源安装软件?

准备工作

在开始配置之前,您需要准备以下两样东西:

  1. CentOS安装介质:这可以是物理的CentOS安装DVD光盘,也可以是从官方渠道下载的、与您系统版本和架构(如x86_64)完全一致的ISO镜像文件。
  2. 系统权限:您需要拥有root权限或通过sudo执行命令的权限,因为挂载设备和修改系统配置文件都需要管理员权限。

挂载光盘或镜像文件

配置本地源的第一步是将安装介质的内容“呈现”给系统,这个过程称为“挂载”。

创建一个用于挂载的目录,通常习惯使用/mnt/cdrom

mkdir /mnt/cdrom

根据您介质的类型,选择以下一种方式进行挂载:

挂载物理光盘:
将CentOS安装光盘放入服务器的光驱中,然后执行以下命令:

mount /dev/cdrom /mnt/cdrom

挂载ISO镜像文件:
如果您下载的是ISO文件,无需刻录,可以直接使用-o loop选项将其挂载到指定目录,假设您的ISO文件存放在/home/centos.iso

mount -o loop /home/centos.iso /mnt/cdrom

挂载成功后,您可以通过ls /mnt/cdrom命令查看目录内容,应该能看到Packagesrepodata等文件夹,这证明介质已成功挂载。

配置YUM仓库文件

YUM(或DNF,在CentOS 8及以后版本)通过读取/etc/yum.repos.d/目录下的.repo文件来获取软件源信息,为了不影响系统默认的网络源,最佳实践是创建一个新的仓库文件专门用于本地源。

CentOS无网络时,如何用本地光盘源安装软件?

使用文本编辑器(如vinano)在该目录下创建一个新文件,例如local-cdrom.repo

vi /etc/yum.repos.d/local-cdrom.repo

在文件中输入以下内容:

[local-cdrom]
name=CentOS Local CD-ROM Repository
baseurl=file:///mnt/cdrom
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

下表详细解释了这些参数的含义:

参数 含义
[local-cdrom] 仓库的唯一标识符,用于区分不同的源。
name 仓库的描述性名称,会显示在YUM命令的输出中。
baseurl 仓库的地址。file:///表示这是一个本地文件路径,指向我们挂载的目录。
gpgcheck 是否进行GPG签名校验,设置为1可以确保软件包的完整性和来源可信。
enabled 是否启用此仓库。1表示启用,0表示禁用。
gpgkey GPG公钥文件的路径,用于校验软件包签名,此路径通常在系统中已存在。

注意gpgkey路径中的版本号(如CentOS-7)需要与您的系统版本相匹配。

验证与使用

配置完成后,需要清理YUM缓存并重新加载仓库信息。

执行以下命令清理所有缓存:

yum clean all

列出所有可用的仓库,检查我们的本地源是否已成功加载:

yum repolist

在输出的列表中,您应该能看到名为local-cdrom的仓库,以及其包含的软件包数量,如果看到相关信息,说明配置成功,您就可以像使用网络源一样,通过yum install <package_name>命令来安装软件了,系统会优先从本地CD源中获取。

CentOS无网络时,如何用本地光盘源安装软件?

实现开机自动挂载

上述挂载操作在系统重启后会失效,为了使本地源永久可用,需要将挂载信息写入/etc/fstab文件。

编辑/etc/fstab文件,在末尾添加一行,对于ISO文件,添加如下内容:

/home/centos.iso /mnt/cdrom iso9660 defaults,loop 0 0

对于物理光盘,则添加:

/dev/cdrom /mnt/cdrom iso9660 defaults 0 0

保存后,系统每次启动时都会自动执行挂载操作,确保本地源始终可用。


相关问答FAQs

Q1:我已经按照步骤配置了,但执行 yum repolist 后,本地源显示的软件包数量是0,这是为什么?
A1:这是一个常见问题,通常由以下几个原因造成:

  • 挂载失败:请首先确认光盘或ISO文件是否已成功挂载到/mnt/cdrom,使用df -hls /mnt/cdrom命令检查。
  • :请检查.repo文件中的baseurl路径是否与实际的挂载点完全一致,注意是file:///(三个斜杠)。
  • 问题:确保您使用的ISO是完整的安装镜像,而不是LiveCD或最小化启动镜像,因为后者可能不包含完整的软件包仓库。
  • 仓库未启用:检查.repo文件中的enabled=1是否设置正确。

Q2:我可以用U盘来代替CD/DVD作为本地源吗?
A2:完全可以,使用U盘作为本地源与使用光盘或ISO文件的原理是相同的,您只需要将U盘插入服务器,找到其设备名(如/dev/sdb1),然后将其挂载到指定目录(例如/mnt/usb),接着在.repo文件中将baseurl修改为file:///mnt/usb即可,后续步骤与配置CD源完全一样。

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-10-05 19:01
下一篇 2025-10-05 19:05

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

QQ-14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信