| 特性方面 | 本地ISO文件 | 外置ISO镜像(如虚拟光驱) |
|---|---|---|
| 来源 | 存储在系统中的.iso文件 |
虚拟机分配的虚拟光驱(如/dev/sr0)或物理光盘 |
| 主要挂载命令 | mount -o loop /path/to/file.iso /mnt/iso |
mount /dev/sr0 /mnt/cdrom |
| 挂载点准备 | 需手动创建目录,如mkdir /mnt/iso |
需手动创建目录,如mkdir -p /mnt/cdrom |
| 文件系统类型 | 通常自动识别或指定-t iso9660 |
通常为iso9660 |
| 适用场景 | 灵活使用本地存储的ISO文件 | 使用虚拟机光驱或物理光盘 |
| 开机自动挂载 | 在/etc/fstab中添加:/path/to/file.iso /mnt/iso iso9660 loop,defaults 0 0 |
在/etc/fstab中添加:/dev/sr0 /mnt/cdrom iso9660 defaults,ro 0 0 |
📌 挂载ISO镜像
挂载是将ISO镜像文件或设备连接到Linux目录树的过程,以便访问其中的内容。
-
准备挂载点:创建一个空目录作为挂载点。
# 用于挂载本地ISO文件 sudo mkdir -p /mnt/iso # 用于挂载外置ISO镜像(如虚拟光驱) sudo mkdir -p /mnt/cdrom-p选项确保如果父目录不存在则一并创建。/mnt目录通常用于临时挂载。 -
执行挂载
-
挂载本地ISO文件:使用
-o loop选项将文件视为块设备。sudo mount -o loop /path/to/your-image.iso /mnt/iso系统通常能自动识别ISO9660文件系统,必要时可用
-t iso9660指定。 -
挂载外置ISO镜像(如虚拟光驱):如果虚拟机已配置ISO镜像,通常对应
/dev/sr0或/dev/cdrom(后者常是前者的软链接)。sudo mount /dev/sr0 /mnt/cdrom如需明确指定文件系统:
sudo mount -t iso9660 /dev/sr0 /mnt/cdrom外置ISO镜像通常被识别为只读设备。
-
-
验证挂载结果:使用
lsblk或df -h查看挂载情况,或直接列出挂载点内容:ls /mnt/iso # 或 ls /mnt/cdrom成功挂载后,此处应显示ISO镜像内的文件和目录。
🔧 配置软件源
成功挂载ISO镜像后,可以将其配置为软件源。这里以常见的YUM(DNF)和APT包管理器为例。
-
备份现有源配置(建议步骤)
修改前备份/etc/yum.repos.d/或/etc/apt/sources.list及相关目录下的原有源文件,以便必要时恢复。# 对于YUM/DNF(CentOS/RHEL/Fedora等) sudo tar -czf yum-repos-backup.tar.gz -C /etc/yum.repos.d/ . # 对于APT(Debian/Ubuntu等) sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup sudo tar -czf apt-sources-backup.tar.gz -C /etc/apt/sources.list.d/ . 2>/dev/null || true -
配置YUM/DNF本地源(适用于基于RPM的系统)
在/etc/yum.repos.d/目录下创建新的.repo文件,如local.repo。sudo vi /etc/yum.repos.d/local.repo文件内容示例(关键:
baseurl指向你的挂载点,并确保gpgcheck=0):[Local-ISO-Repo] name=Local Repository from ISO baseurl=file:///mnt/iso # 如果ISO挂载在/mnt/iso # 或者 baseurl=file:///mnt/cdrom # 如果使用外置镜像挂载在/mnt/cdrom enabled=1 gpgcheck=0 # 如果ISO没有GPG密钥,则设为0跳过检查 #gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release # 如果启用GPG检查,指定密钥文件注意:
baseurl使用file://协议,后跟挂载点的绝对路径。 -
配置APT本地源(适用于基于Debian的系统)
编辑APT的源列表文件。可以直接修改/etc/apt/sources.list,或在/etc/apt/sources.list.d/下添加新文件(如local-iso.list)。sudo vi /etc/apt/sources.list.d/local-iso.list添加以下行(关键:使用
file:协议指向挂载点):deb file:/mnt/iso ./ # 或者 deb file:/mnt/cdrom ./某些Debian/Ubuntu ISO可能需要更具体的路径,如
dists/和pool/目录的精确位置,请根据ISO实际结构调整。 -
更新软件源缓存
配置完成后,更新包管理器缓存,使新源生效。# 对于YUM/DNF sudo yum clean all sudo yum makecache # 或者使用更新的dnf sudo dnf clean all sudo dnf makecache # 对于APT sudo apt-get update
⚙️ 设置开机自动挂载
手动挂载的ISO在重启后需要重新挂载。若要实现开机自动挂载,可编辑/etc/fstab文件。
-
编辑
/etc/fstab文件sudo vi /etc/fstab在文件末尾添加相应配置行。
-
添加配置行
- 针对本地ISO文件:
/path/to/your-image.iso /mnt/iso iso9660 loop,defaults,ro 0 0 - 针对外置ISO镜像(虚拟光驱):
/dev/sr0 /mnt/cdrom iso9660 defaults,ro 0 0
注意:外置设备开机时可能不一定就绪,有时使用
noauto选项(表示启动时不自动挂载)并结合脚本或其他方式在系统启动后挂载更稳妥。 - 针对本地ISO文件:
-
测试自动挂载
添加配置后,使用以下命令测试是否正确,避免系统启动失败:sudo mount -a此命令会尝试挂载
/etc/fstab中所有配置的文件系统。若无错误输出,且能正常访问挂载点,则配置成功。
💎 关键要点与验证
- 权限问题:挂载、创建目录、编辑系统配置文件通常需要
sudo权限。 - 挂载点状态:卸载ISO镜像使用
umount命令(如sudo umount /mnt/iso)。卸载前确保没有进程正在使用挂载点。 - 源配置的准确性:确保
baseurl或deb行中的路径与实际挂载点完全一致。YUM/DNF源中的gpgcheck=0仅用于测试或可信环境。 - 验证软件源:配置完成后,尝试使用新源搜索或安装软件,以验证其是否正常工作。
# YUM/DNF 示例:搜索一个软件 yum search <package_name> # APT 示例:搜索一个软件 apt-cache search <package_name>
希望这份详细的教程能帮助你顺利完成操作。如果在具体步骤中遇到问题,请随时提出。