CentOS 系统下光驱挂载完整指南
在物理服务器维护、安装遗留软件或读取特定光盘数据时,CentOS 系统中挂载物理光驱仍是必备技能,虽然云环境和虚拟化普及让光驱使用减少,但掌握其原理与操作能有效应对特定场景需求。

理解基础:设备识别与挂载原理
CentOS 将硬件设备视为特殊文件,存放在/dev 目录,物理光驱通常被识别为/dev/sr0(第一个光驱)或/dev/cdrom(常作为/dev/sr0 的符号链接),使用lsblk 命令可清晰查看块设备信息:
lsblk
输出示例:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 100G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 99G 0 part / sr0 11:0 1 1024M 0 rom <--- 这就是光驱设备
手动挂载光驱:详细步骤
1、检查光盘状态与设备路径
确保光盘已正确插入光驱,确认设备路径,通常为/dev/sr0 或/dev/cdrom:

ls -l /dev/cdrom
# 通常输出:lrwxrwxrwx. 1 root root 3 Mar 25 10:15 /dev/cdrom -> sr02、创建挂载点目录
挂载点是一个空目录,作为光盘文件系统的访问入口,通常在/mnt 下创建:
sudo mkdir -p /mnt/cdrom # -p 确保父目录存在3、执行挂载命令
使用mount 命令,指定光驱设备路径和挂载点,关键参数:
-t iso9660: 指定光盘标准文件系统类型。
-o ro: 以只读 (ro) 模式挂载,保护光盘数据。

sudo mount -t iso9660 -o ro /dev/sr0 /mnt/cdrom 若不确定文件系统类型,可省略-t iso9660,mount 通常能自动检测。
4、验证挂载结果
使用mount 或df -hT 命令检查:
df -hT | grep cdrom
# 输出示例:/dev/sr0 iso9660 700M 700M 0 100% /mnt/cdrom 也可直接访问/mnt/cdrom 目录查看光盘内容:
ls -l /mnt/cdrom实现开机自动挂载:/etc/fstab 配置
如需每次启动自动挂载光盘,需编辑/etc/fstab 文件。务必谨慎操作,错误配置可能导致系统无法启动!
1、 备份原文件:
sudo cp /etc/fstab /etc/fstab.bak2、 使用blkid 获取光盘的 UUID (推荐,比设备名更稳定):
sudo blkid /dev/sr0
# 输出示例:/dev/sr0: UUID="2023-11-27-15-30-00-00" LABEL="CENTOS_7_X64" TYPE="iso9660"3、 在/etc/fstab 末尾添加一行:
UUID=2023-11-27-15-30-00-00 /mnt/cdrom iso9660 ro,user,noauto 0 0noauto: 系统启动时不自动挂载(避免无盘导致启动失败),需手动mount /mnt/cdrom。
user: 允许普通用户挂载(需结合noauto)。
ro: 只读挂载。
* 最后两个0 表示 dump 不备份和 fsck 不检查。
卸载光驱的正确操作
访问完成后,卸载是必要步骤:
sudo umount /mnt/cdrom 或使用设备路径 sudo umount /dev/sr0
卸载前请确保没有进程正在访问/mnt/cdrom 下的文件! 否则会提示device is busy。lsof /mnt/cdrom 可查看占用进程,卸载成功后可安全弹出光盘。
疑难问题与解决思路
mount: no medium found: 最常见错误,表示未检测到光盘,检查光盘是否插入正确、光驱物理连接是否正常、光盘是否损坏,尝试eject /dev/sr0 弹出再重新插入。
mount: /mnt/cdrom: WARNING: device write-protected, mounted read-only: 这是正常提示,确认挂载为ro 模式即可。
mount: /mnt/cdrom is not a directory: 挂载点路径错误或未创建,检查mkdir 是否执行。
mount: wrong fs type...: 文件系统类型指定错误,尝试省略-t 参数或使用-t auto。
无法弹出光盘 (eject: unable to eject, last error: Inappropriate ioctl for device): 通常是因为未卸载 (umount) 就尝试弹出,先卸载再弹出。
挂载 Windows 制作的包含中文文件名的光盘乱码: 尝试指定正确的字符集挂载
sudo mount -t iso9660 -o ro,iocharset=utf8 /dev/sr0 /mnt/cdrom
# 或尝试 iocharset=cp936 (对应 GBK 编码)普通用户无法访问挂载点内容: 检查挂载点目录 (/mnt/cdrom) 的权限 (ls -ld /mnt/cdrom),如需普通用户访问,可在挂载后修改权限 (谨慎操作) 或使用sudo chmod o+rX /mnt/cdrom。
观点
物理光驱虽非日常高频使用的组件,但在特定运维场景和遗留系统支持中不可或缺,熟练掌握mount/umount 命令、理解/etc/fstab 配置逻辑以及具备排查常见问题的能力,是 Linux 系统管理员扎实基本功的体现,清晰的设备识别、规范的挂载点管理以及对文件系统权限的深入理解,能有效避免操作失误,确保数据访问的安全与效率,面对"光驱挂载"这类基础任务,保持严谨的态度尤为重要。
