服务器无法联网,应该如何进行CentOS系统的离线安装?

在特定的工作环境,如高保密性网络、物理隔离的内网或网络信号不佳的场所,为CentOS系统进行不联网安装是一项非常实用且必要的技术,离线部署不仅确保了系统的安全性,避免了潜在的互联网攻击,还能实现标准化、可复制的批量安装,极大地提高了运维效率,其核心思想在于,将系统安装过程及后续所需的全部软件包都预先准备好,存储在本地介质(如光盘、U盘或硬盘)中,构建一个本地化的软件源。

服务器无法联网,应该如何进行CentOS系统的离线安装?

整个流程可以分为两个主要阶段:系统基础安装和本地软件源配置。

准备工作:万事开头难

在进行离线安装前,充分的准备工作是成功的关键,需要从CentOS官方网站获取与目标系统架构相匹配的完整版DVD ISO镜像文件,这个ISO文件不仅包含了系统安装程序,更重要的是,它内含了数千个常用软件包,这正是我们构建本地源的基石,切勿选择“Minimal”或“Live”版,因为它们不包含完整的软件仓库。

准备一个可启动的U盘作为安装介质,可以使用dd命令(在Linux/macOS上)或Rufus、UltraISO等工具(在Windows上)将下载的ISO镜像刻录至U盘,建议再准备一个存储设备,或直接利用目标机器的硬盘空间,来存放ISO镜像文件本身,以供后续配置本地源使用。

核心步骤:配置本地YUM源

当CentOS系统通过U盘介质完成基础安装后,它会默认配置指向互联网的官方YUM源,在没有网络连接的情况下,任何yum installyum update操作都会失败,首要任务就是将软件源指向本地。

第一步:挂载ISO镜像

假设已将CentOS的ISO镜像文件(CentOS-7-x86_64-DVD-2009.iso)复制到了系统的 /opt 目录下。

  1. 创建一个用于挂载的目录:

    sudo mkdir /mnt/cdrom
  2. 使用mount命令将ISO文件挂载到该目录:

    服务器无法联网,应该如何进行CentOS系统的离线安装?

    sudo mount -o loop /opt/CentOS-7-x86_64-DVD-2009.iso /mnt/cdrom

    执行后,/mnt/cdrom 目录下的内容就是ISO镜像里的所有文件,Packages 目录包含了所有的RPM软件包。

  3. 为了让系统重启后自动挂载,需要编辑 /etc/fstab 文件,添加如下一行:

    /opt/CentOS-7-x86_64-DVD-2009.iso /mnt/cdrom iso9660 defaults,loop 0 0

第二步:创建并配置本地仓库文件

YUM的配置文件存放在 /etc/yum.repos.d/ 目录中,为了防止系统尝试访问失效的网络源,最佳做法是先将该目录下的原有仓库文件进行备份或重命名。

sudo cd /etc/yum.repos.d/
sudo mkdir backup
sudo mv *.repo backup/

创建一个新的仓库配置文件,local.repo

sudo vim local.repo

在文件中填入以下内容:

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

这里的配置项解释如下:

  • [local]:仓库的唯一标识符。
  • name:仓库的描述性名称。
  • baseurl:指向软件包的路径,file:// 表示本地文件系统,后面跟挂载点。
  • gpgcheck=1:启用GPG签名校验,确保软件包的完整性和安全性。
  • enabled=1:启用此仓库。
  • gpgkey:指定GPG公钥文件的路径,该文件通常随系统一同安装。

第三步:验证与使用

服务器无法联网,应该如何进行CentOS系统的离线安装?

配置完成后,需要清理YUM缓存并重新生成元数据,以使新的本地源生效。

sudo yum clean all
sudo yum makecache

执行 yum repolist 命令,如果输出中能看到名为 local 的仓库,并正确列出了软件包数量,则说明本地源配置成功,你就可以像联网时一样,自由使用 yum install vim 等命令来安装ISO镜像中包含的任何软件了。

高级技巧与注意事项

对于更复杂的场景,可能需要安装ISO镜像之外的软件,可以在一台能上网的相同系统上,使用 yumdownloader --devel --resolve 命令下载目标软件及其所有依赖包,然后将这些RPM文件一并拷贝到离线环境中,使用 yum localinstall *.rpmrpm -ivh *.rpm 进行安装。

为了更高效地管理自定义软件包,可以使用 createrepo 命令,将下载好的所有RPM文件放入一个目录(如 /my_local_repo),然后在该目录下运行 createrepo .,它会生成仓库所需的元数据,之后,只需将 local.repo 文件中的 baseurl 指向这个新目录即可。

本地源类型 优点 缺点 适用场景
直接挂载ISO 配置简单,快速 软件包版本固定,无法更新 单机、临时性或测试环境
自定义RPM目录 灵活性高,可增删软件包 需手动管理依赖和元数据 需要特定软件包的定制化环境
HTTP/FTP本地服务器 集中管理,多机共享 配置相对复杂,需额外服务 大规模内网批量部署

相关问答FAQs

Q1: 系统安装并配置好本地源后,如何执行系统更新?
A1: 使用本地源进行系统更新(yum update)只能将系统更新至当前ISO镜像所包含的版本,如果你的ISO是CentOS 7.9,那么更新后系统版本不会超过7.9,要获得更新的安全补丁或功能,你需要下载更新的ISO镜像文件,替换掉旧的ISO并重新挂载,或者手动下载更新的RPM包并放入自定义仓库中。

Q2: 如果我需要安装的软件及其依赖包不在官方的DVD ISO镜像里,最稳妥的解决方法是什么?
A2: 最稳妥的方法是利用一台与离线环境系统版本、架构完全相同的、可以连接互联网的机器,在这台机器上,使用 yumdownloader --resolve <软件名> 命令下载目标软件及其所有依赖关系,这个命令会自动处理依赖,将所有需要的RPM包下载到当前目录,将整个目录下的所有RPM文件复制到离线环境中,通过 yum localinstall /path/to/rpms/*.rpm 命令进行安装,YUM会自动从本地文件中解决所有依赖关系。

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

(0)
热舞的头像热舞
上一篇 2025-10-15 01:46
下一篇 2025-10-15 01:50

相关推荐

  • centos开机按e后怎么修改启动参数进入救援模式?

    在CentOS系统中,开机按“e”键进入GRUB引导菜单是进行系统调试、修复或临时修改启动参数的重要操作,这一功能特别适用于系统无法正常启动、需要进入救援模式或修改内核参数的场景,以下将详细介绍该操作的具体步骤、适用场景及注意事项,帮助用户更好地理解和应用这一功能,进入GRUB引导菜单的步骤当CentOS系统启……

    2025-11-28
    0018
  • CentOS下访问网站失败怎么办?排查步骤有哪些?

    在CentOS系统中访问网站是日常运维和开发中的常见需求,无论是通过命令行工具排查网络问题,还是通过图形界面浏览网页,掌握正确的方法能提高工作效率,本文将详细介绍在CentOS下访问网站的多种方式,包括命令行工具、图形界面浏览以及常见问题的排查方法,使用命令行工具访问网站命令行工具是CentOS系统中高效访问网……

    2025-11-06
    005
  • CentOS Java 系统退出后如何正确恢复和解决?

    CentOS与Java环境配置及退出操作指南CentOS环境准备1 安装CentOS您需要在您的服务器上安装CentOS,您可以从官方网站下载CentOS的ISO镜像,然后使用虚拟机软件或物理服务器进行安装,2 配置网络安装完成后,确保您的服务器可以连接到互联网,配置网络,包括设置IP地址、子网掩码、网关和DN……

    2026-01-31
    003
  • 安装centos时filesystem选啥?ext4还是xfs?怎么选才对?

    在安装CentOS操作系统的过程中,文件系统的选择与配置是一个关键环节,文件系统是操作系统用于管理存储设备上数据的方式,它决定了数据的组织结构、访问效率以及存储特性,正确理解并配置文件系统,能够确保系统运行的稳定性和数据的安全性,选择合适的文件系统类型是第一步,CentOS支持多种文件系统,其中最常用的是ext……

    2025-12-20
    006

发表回复

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

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

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

关注微信