CDFS光盘文件系统复制提取与镜像归档避坑指南

发布时间:2026/10/31 18:09:25
CDFS光盘文件系统复制提取与镜像归档避坑指南

上周帮朋友整理一箱旧光盘,插进光驱后,资源管理器里那个盘符的属性写着“文件系统:CDFS”。他本来只想把里面的照片和文档复制出来,结果拖到一半弹出“无法读取源文件或磁盘”,整盘卡住不动。这个场景太典型了:CDFS是 Windows 给光盘文件系统贴的标签,它决定了你看到什么文件名、能不能写、以及复制文件时会在哪里翻车。这篇就把 CDFS 是什么、光盘怎么把文件完整复制出来、哪些坑必须提前绕开,一次讲清楚。不管你是刚接手一批归档盘的行政、要给老资料做数字化的设计,还是想抢救家里十几年前刻的相册盘,下面的内容都能直接照着做。

1. CDFS 到底是什么:从光驱属性里那三个字母说起

1.1 一张光盘插进去,系统看到的到底是什么

把光盘放进光驱,操作系统并不是“看见一个盘”,而是看见一段按照特定规则排列的扇区,再由驱动程序按规则翻译成目录和文件。CDFS 就是这套翻译规则的实现,全称 Compact Disc File System,直译过来就是光盘文件系统。你在盘符属性里看到“文件系统:CDFS”,意思是当前这层驱动正在用光盘那套只读规则来解释这张盘,而不是 NTFS、exFAT 那套可读可写规则。

这里要先建立一个关键认知:CDFS 不是一个“格式”,更像是 Windows 对光盘类介质的一套读取接口。光盘上真正躺着的数据结构,绝大多数情况下是 ISO 9660 标准定义的;CDFS 驱动负责把 ISO 9660 的目录记录解析成你熟悉的文件夹树,同时在有 Joliet 扩展时把长文件名和中文显示出来。所以同一张盘,在 Windows 里显示“CDFS”,在 Linux 里挂载成 iso9660,在苹果系统里又是另一种叫法,底层看的其实是同一批扇区。

这也解释了一个常见疑惑:为什么同一张盘,在不同电脑上文件名不一样,有的显示“新建文本文档.txt”,有的显示“NEWTEX~1.TXT”。不是盘坏了,是不同系统读取的扩展不一样,回退到了最基础的 8.3 短名。理解这一点,后面处理乱码和长文件名问题就有方向了。

1.2 CDFS 与 ISO 9660:一个名字两套说法

很多人把 CDFS 和 ISO 9660 混着用,日常交流问题不大,但真要排查故障就得分开看。ISO 9660 是国际标准,规定了光盘上目录、路径表、文件记录怎么摆;CDFS 是操作系统侧的驱动实现,负责把标准读出来。标准是“盘上怎么写”,CDFS 是“系统怎么读”。一张盘完全符合 ISO 9660,但某个系统的 CDFS 实现有 bug,照样可能读不全。

ISO 9660 最初的设计相当保守:文件名 8.3 格式、只允许大写字母数字和下划线、目录层级最多 8 层。这套限制在 1990 年代没问题,放到今天就很难受了。于是有了几个扩展:Joliet 扩展让文件名支持最长 64 个 Unicode 字符,中文、日文、长文件名都靠它;Rock Ridge 扩展给 Unix 系统保留权限、符号链接和长文件名;El Torito 扩展让光盘可以带引导信息,做成启动盘。

一张盘完全可以同时带多套目录结构:主目录树用基础 ISO 9660 保证老设备能读,附加 Joliet 树给 Windows 显示长名,再附加 Rock Ridge 树给 Linux 用。这就是所谓“多扩展共存”。所以你在一张盘上看到同名文件有两份目录记录,不是重复占用空间,而是为兼容性准备的多套索引。做镜像归档时,这些索引都会被完整保留。

1.3 为什么它天生只能读,改权限也没用

新手最常问的一句是:“光盘里的文件删不掉,是不是权限不够,怎么改?”答案是改不了,因为问题不在权限,在物理层。常见的只读光盘分两类:一类是工厂压制的 CD-ROM/DVD-ROM,数据在注塑时就压成了凹凸坑,物理上不可更改;另一类是 CD-R/DVD-R,靠激光把染料层烧出不可逆的痕迹,烧完就定型。这两类介质都没有“擦除重写”的能力。

即使你用可擦写介质(CD-RW、DVD-RW),情况也只是“可以整盘擦掉重来”,而不是像 U 盘那样随便删一个文件。原因在于文件系统的组织方式:ISO 9660 的目录和路径表是顺序写在盘上的,删文件需要在原位置改写目录记录,而光盘的写入必须按轨道顺序进行,不能原地覆盖。想改内容,只能重新生成一整张新盘。

再叠加一层软件限制:Windows 的 CDFS 驱动只实现了读取路径,没有实现写入路径。所以哪怕介质可擦写,挂载成 CDFS 之后依然是只读。Linux 挂载光驱时默认也是ro选项,想写必须换成 UDF 包写模式,且需要额外工具配合。日常场景下最省事的结论就是:把光盘当只读介质,复制出来再处理,别指望在盘上编辑。

1.4 CDFS、Joliet、Rock Ridge、UDF 的对照表

为了少走弯路,下面这张表建议存下来。它解决的是“我这张盘到底该用什么方式读”的判断问题,很多复制失败、乱码、文件缺失,根子都在这里。

名称作用层级典型用途文件名能力能否写入
ISO 9660基础标准几乎所有数据光盘8.3,大写否,需整盘重写
CDFS系统驱动Windows 读取光盘取决于盘的扩展否,只实现读
JolietISO 9660 扩展Windows 长文件名、中文最长 64 字符 Unicode否
Rock RidgeISO 9660 扩展Unix 权限、符号链接长名、保留权限否
El ToritoISO 9660 扩展启动光盘不涉及否
UDF独立文件系统DVD 视频、蓝光、包写长名,支持大文件部分支持包写
CD-DA音频标准音乐 CD无文件概念否

看表能得出一个很实用的判断:如果一张盘在 Windows 里显示 CDFS 且文件名正常,说明它带 Joliet;如果文件名全是短横线和波浪号,说明 Joliet 缺失或驱动没识别到。如果一张 DVD 视频盘显示的是 UDF,那它就不该用 CDFS 的思路去复制文件,得按视频结构处理。

2. 复制之前先判断:盘的类型决定你该用哪种方法

2.1 数据盘、音频盘、视频盘:CDFS 不是万能钥匙

很多人拿到盘就双击,看到一堆文件就开始拖,这在一部分盘上没问题,在另一部分盘上会直接踩空。判断盘的类型,比急着复制重要得多。

数据盘最常见,里面是文档、照片、安装包,文件系统一般是 ISO 9660 加 Joliet。这类盘可以直接按文件复制,也可以整盘做镜像。音频 CD 是另一回事,它上面没有文件系统,只有音轨,每首歌是一段 PCM 采样数据,你在资源管理器里看不到任何文件,只能看到.cda这种几十字节的快捷方式。这类盘必须用抓轨的方式转成 WAV 或 FLAC,直接复制.cda得到的是一堆废文件。视频 DVD 通常是 UDF 文件系统,里面有VIDEO_TS目录和.VOB文件,可以按文件复制,但要保持目录结构完整,否则播放器不认。还有一类混合盘,比如早期的一些软件盘带音轨,或者带隐藏的引导区,这类盘整盘镜像最稳妥。

判断方法很直接:打开盘看根目录有没有正常文件;用播放器能不能识别成音乐 CD;看容量是 700MB 左右还是 4.7GB 左右。三种信息一对,基本不会误判。

2.2 看容量、看会话、看是否封盘

同样是数据盘,还有两个隐藏属性会影响复制结果:会话数量和是否封盘。CD-R 支持多区段写入,也就是今天刻一部分,明天再追加一部分。问题在于,很多老系统和老驱动只认第一个会话,后面追加的内容直接看不见。你在一台机器上看到 300MB 内容,换台机器可能只剩 150MB。

判断办法是看盘的容量和实际可见文件总量是否对得上。对不上,就说明有会话没被读到。这时候别用资源管理器复制,直接整盘做镜像,再用镜像工具查看所有会话。封盘是另一个关键词:刻录结束时如果没做“封盘”操作,这张盘在自己的刻录机上能读,换到别的光驱可能直接不认。遇到“别的电脑读不出来”的盘,先怀疑没封盘。

这两个属性都看不到图形界面提示,属于隐性问题。我的习惯是拿到一批盘先抽查三张,做镜像看容量,对得上再批量处理,能省掉大量返工。

2.3 目标盘的文件系统与空间核算

复制之前必须算一笔空间账,这一步被跳过的人最多。目标盘的剩余空间至少要满足两个条件:能装下光盘上的实际数据,且能装下你打算生成的镜像文件。

举个具体例子:一张 DVD-5 标称 4.7GB,实际可用约 4.38GB,盘上数据 4.2GB。如果你先做镜像再提取,需要 4.2GB 镜像加 4.2GB 文件,加上校验用的临时空间,目标盘至少准备 9GB。如果目标盘是 FAT32,单文件上限 4GB,那个 4.2GB 的镜像直接写不进去。所以目标盘优先选 NTFS 或 exFAT,别用 FAT32。

还要考虑簇大小带来的浪费。目标盘簇是 4KB 时,每个小文件平均浪费 2KB 左右,如果盘上有几万个小文件,浪费能到几十 MB。这不是大问题,但算空间时留 10% 余量比较稳。另外,复制过程中系统还会产生临时文件和日志,预留空间别卡得太死。

2.4 文件名、编码与路径长度:乱码的三条根因

复制出来发现文件名变成问号、下划线、乱码,或者一堆文件重名被覆盖,这是最高频的投诉。根因通常有三条。

第一条是 Joliet 缺失或未被识别。系统回退到基础 ISO 9660,长文件名被截成 8.3,中文直接变成下划线。第二条是编码不匹配。Joliet 用的是 UCS-2/UTF-16,某些老工具在生成光盘时用的是本地代码页,读的时候按 Unicode 解,自然乱码。第三条是路径长度超限。Windows 传统路径上限 260 个字符,光盘上的深层目录加上目标路径,很容易超。超了之后复制会中断,且报错信息往往很含糊。

对应的处理办法:优先用支持 Joliet 和 Rock Ridge 的镜像工具提取,而不是系统自带复制;遇到乱码先试着换工具的编码选项,或者用镜像挂载后从挂载点复制;路径太长就把目标目录尽量放浅,比如直接放D:\out\,别嵌套七八层。

3. 把文件复制出来:三条路径的完整实操

3.1 图形界面复制:最快上手,但别直接拖整盘

图形界面复制适合盘况良好、文件量不大的场景。步骤很简单:插入光盘,打开“此电脑”,右键光驱选“打开”,全选文件,复制到目标文件夹。听起来没有技术含量,但有几个细节决定了成败。

第一,先看总量再动手。选中全部文件,看状态栏的文件数和总大小,和目标盘剩余空间比一下。第二,不要整个光驱拖到目标盘,那样会把光盘根目录一起复制成一个子文件夹,某些情况下还会触发对隐藏轨道的读取,直接卡死。第三,遇到只读属性导致复制后无法编辑,复制完统一去掉只读,命令行一条attrib -R D:\out\*.* /S /D就能解决。

还有一个容易忽略的点:系统文件和隐藏文件默认不显示。有些软件盘的关键文件是隐藏的,直接全选复制会漏。复制前在“查看”里勾上“隐藏的项目”,或者干脆用命令行加/H参数。图形界面复制最大的问题是遇到坏块会整个卡住,没有跳过机制,这时候必须换方案。

3.2 命令行复制:robocopy / xcopy / cp 的差别与参数

文件量大、目录深、需要保留时间戳的时候,命令行比拖拽靠谱得多。Windows 下有两个常用命令,行为差别不小。

xcopy老是老,但简单直接:

xcopy E:\*.* D:\out\disc01\ /E /H /K /R /Y

/E复制所有子目录含空目录,/H包含隐藏和系统文件,/K保留只读属性,/R覆盖只读文件,/Y跳过覆盖确认。注意/K会把只读属性一起带过去,复制完要批量改回来。

robocopy更适合大批量和需要日志的场景:

robocopy E:\ D:\out\disc01\ /E /COPY:DAT /R:3 /W:5 /LOG:D:\out\copy01.log /TEE

/COPY:DAT表示复制数据、属性、时间戳,/R:3是失败重试 3 次,/W:5是每次重试等 5 秒。重试次数别设太大,遇到物理坏块会卡很久。实际经验是/R:1 /W:1更快,反正坏块重试多少次都读不出来,不如早点报错换镜像方案。

Linux 下就是cp或rsync:

mkdir -p /data/disc01 cp -r /media/cdrom/* /data/disc01/ # 或者保留权限和时间戳 rsync -a --progress /media/cdrom/ /data/disc01/

注意cp -r遇到读错误默认会中断,加-f也救不了物理坏块。批量场景建议用rsync,它支持断点续传,中断后重跑只补缺失部分。

3.3 先做整盘镜像再提取:坏盘的标准动作

只要盘有年头、有划痕、读起来有异响,就别直接复制文件,先做整盘镜像。原因很实在:文件复制是随机读取,磁头要来回跳,对弱盘压力大;整盘镜像是顺序读取,一次扫过去,成功率更高。而且镜像做成功之后,后面的提取、重试、换工具都不再消耗光盘,等于把一次性的脆弱读取变成了可反复操作的本地文件。

Linux 下最直接:

dd if=/dev/sr0 of=/data/disc01.iso bs=2048 conv=noerror,sync status=progress

bs=2048是光盘扇区大小,按扇区读效率最高。conv=noerror,sync让 dd 遇到坏块不中断,用零填充继续往下读,代价是坏块位置的数据丢了,且你不知道丢在哪。所以更好的做法是用带坏块映射的恢复工具,它能记录哪些扇区读失败,最后给你一份坏块清单。Windows 下没有原生 dd,用常见的镜像处理软件选择“忽略读取错误”并生成 ISO 即可,关键是勾上重试和降速选项。

镜像做完先别急着删盘。校验一下镜像能不能正常挂载、目录树是否完整、文件数量对不对。挂载 ISO 在 Windows 10 以后直接双击就行,Linux 用mount -o loop disc01.iso /mnt/iso。

3.4 镜像挂载与批量提取

镜像挂载之后,提取就变成纯本地操作了,速度取决于硬盘而不是光驱,几百 MB 的盘几秒就完事。这时候可以放心用脚本批量处理。

挂载点复制到目标目录,建议保留原始目录结构:

mount -o loop,ro /data/disc01.iso /mnt/iso rsync -a /mnt/iso/ /data/out/disc01/ umount /mnt/iso

批量处理多张盘时,把镜像文件名和输出目录做成对应关系,比如disc01.iso对应out/disc01/,一个 for 循环就能跑完。这一步的价值在于可重复:某张盘提取出来的文件有缺失,重新挂载再提一次就行,不用再去碰光驱。

需要提醒的是,镜像挂载看到的是文件系统视图,不是扇区视图。如果盘上有非文件系统数据,比如隐藏轨道、引导扇区、多会话中未被识别的部分,挂载是看不到的,但镜像文件里完整保留着。所以归档场景下,镜像文件本身才是第一手资料,提取出来的文件只是副本。

3.5 复制后的校验:别用眼睛看文件大小

复制完打开几个文件看看能不能打开,这不叫校验。真正的校验要比对哈希值,因为文件大小相同但内容损坏的情况太常见了,尤其是坏块被零填充之后,大小一点不差,内容已经废了。

Windows 下:

certutil -hashfile D:\out\disc01\photo.jpg SHA256

Linux 下:

sha256sum /data/out/disc01/photo.jpg

批量校验可以生成清单文件再比对。镜像场景更简单,直接对镜像算哈希,记录在归档台账里,以后每次迁移都比对一次,能提前发现介质老化。如果手头有原始盘和提取文件,也可以用二进制比较工具逐字节比,比如fc /b或cmp,但速度慢,适合抽查关键文件。

校验的另一个作用是发现“静默截断”。有些复制工具遇到读错误不报错,直接写个短文件就结束,大小看着差不多,实际少了尾部数据。哈希一比就露馅。

4. 常见问题与排查实录

4.1 循环冗余检查(CRC)报错:从清洁到降速的顺序

“无法读取源文件或磁盘”“数据错误(循环冗余检查)”,这是光盘复制最常见的报错,意思是某个扇区校验不通过。排查要按成本从低到高排:先清洁盘面,用柔软无绒布从中心向外径向擦,别转圈擦,也别用酒精;再换一台光驱试,老光驱的激光头老化很常见,换一台读得出来的概率不低;然后降速读取,很多工具支持限制读取速度,降到 8x 甚至 4x,弱盘的成功率明显上升。

这三步都不行,就上镜像加重试工具,让它反复尝试坏块区域,实在读不出来就跳过并记录位置。跳过的部分数据确实丢了,但至少能把剩下 95% 的内容抢救出来。最忌讳的是用一个工具反复拖拽重试,每次卡在同一个位置,除了磨损光盘没有任何收益。

还有一点值得说:CRC 报错有时不是盘的问题,是光驱供电不足。外置光驱用 USB 供电,电压不稳会导致读盘失败,换一个带独立供电的接口或者用 Y 型线能解决。

4.2 文件名变短、变下划线、中文乱码

文件名显示成FILE0001.TXT或者一串下划线,说明系统没读到 Joliet 扩展,回退到了基础 ISO 9660。这种情况下直接复制,得到的文件名就是短的,复制完还得手动改,工作量巨大。正确做法是换一个支持 Joliet 的镜像工具提取,或者在 Linux 下挂载时指定-o iocharset=utf8,让编码正确解析。

中文乱码还有一层原因是原始盘生成时编码就不对。有些老刻录软件默认用本地代码页写文件名,读的时候按 Unicode 解,怎么调都乱。这种情况只能接受乱码,提取后按文件内容或修改时间重新命名。实操中我一般先提取,再用批量重命名工具按“日期+序号”统一命名,虽然丢了原名,但至少可用。

路径过长导致的复制失败容易被误判成乱码问题。报错信息往往是“文件名或扩展名太长”或者直接中断。解决办法是把目标目录放浅,或者用支持长路径的工具。

4.3 复制到一半提示空间不足或文件过大

空间不足有两种:真不足和假不足。真不足就是目标盘剩余空间不够,算一下就知道。假不足多半是 FAT32 的单文件 4GB 限制,报错信息通常写“文件过大”或者“参数不正确”。光盘上单个大文件超过 4GB 的情况在 DVD 镜像、虚拟机磁盘、视频素材里很常见,目标盘必须换成 NTFS 或 exFAT。

还有一种情况是目标盘是网络映射盘,实际可用空间看起来够,但中间有配额限制或者单文件大小限制。复制大文件前先写一个测试大文件验证一下,比复制到一半失败强。

光盘本身也有单文件限制。传统 ISO 9660 布局对单文件大小有约束,早期实现常见 2GB 门槛,要放大文件得用 UDF。如果你复制出来的大文件总是缺一截,先确认盘是不是 UDF 格式,以及工具是否正确识别。

4.4 光驱不认盘、读盘慢、声音大

光驱不认盘,先分清是“完全看不到盘符”还是“看到盘符但读不出内容”。前者多半是硬件或驱动问题:换盘试、换光驱试、检查设备管理器有没有黄色感叹号。后者是盘的问题,划痕、污渍、分层、变形都可能导致。

读盘慢伴随“咔咔”声或者频繁降速,通常是盘面有划痕或者激光头功率不足。这时候别硬读,越读越热,弱盘越难读。正确做法是让光驱歇一会儿,或者换一台光驱。有些盘在垂直放置的光驱里读得更顺,这是因为重力对变形盘的影响不同,听起来玄学,实际试过确实有效。

DVD-9 双层盘容易出现分层问题,读外层数据时反复失败。这类盘做镜像时速度要压得很低,4x 甚至 2x,成功率会高一些。

4.5 复制完打不开、文件大小是 0

文件复制出来了,大小正常,双击打不开,或者提示文件损坏。这种情况八成是坏块被零填充了,文件头或关键数据段正好落在坏块上。校验哈希能发现,但发现了也救不回来,只能回到镜像里看坏块位置,评估能不能从别的副本补。

文件大小是 0 的情况不一样,通常是复制过程中断但文件已经创建,或者权限问题导致写入失败。检查目标目录权限、磁盘是否只读、是否有杀毒软件拦截。还有一种可能是文件名里有特殊字符,写入时被系统拒绝,创建了空文件。

复制完打不开的另一个原因是文件本身依赖光盘上的相对路径。比如某些软件的安装包,单独复制出来能运行但找不到资源,必须保持完整目录结构。这类情况整目录复制,别只挑文件。

4.6 常见问题速查表

现象最可能原因优先动作
循环冗余检查报错盘面划痕或激光头老化清洁盘面,换光驱,降速读取
文件名变短或下划线Joliet 未识别换支持 Joliet 的工具提取
中文乱码编码不匹配挂载时指定 UTF-8,或提取后重命名
提示文件过大目标盘 FAT32换 NTFS 或 exFAT
复制中途卡死无报错坏块导致读取挂起改用镜像工具并设置超时跳过
文件大小 0写入中断或权限不足检查权限、空间、杀软拦截
换电脑读不出盘未封盘或多会话整盘镜像,换原刻录机读取
复制后无法编辑只读属性被保留批量去掉只读属性
光驱不认盘硬件或驱动换盘换口换光驱,查设备管理器
视频 DVD 播放异常目录结构被破坏保持 VIDEO_TS 完整复制

5. 归档与长期保存:把一次性工作变成可复用流程

5.1 命名规范与目录结构:别让三个月后的自己骂人

复制光盘最怕的不是技术难,是做完之后找不到、对不上、说不清来源。我见过最惨的情况是几百张盘复制出来全叫“新建文件夹”,谁也说不清哪张盘对应哪批资料。所以第一步不是插盘,是定命名规则。

我的习惯是三层结构:批次目录、盘号目录、内容目录。批次用日期,比如202405-batch01;盘号用物理标签上的编号,比如disc-017;内容目录保持光盘原始结构不动。镜像文件单独放一个images子目录,命名和盘号一致,比如disc-017.iso。这样任何一个文件都能反查到来源盘。

目录结构不要扁平化。有些人图省事把所有文件摊在一个目录里,结果重名文件互相覆盖,损失无法挽回。保持原始层级,即使层级很深,也比丢文件强。深层路径的问题用长路径支持或者压缩包解决,别用扁平化解决。

还要记一份台账,哪怕是简单的表格:盘号、标签内容、容量、文件数、镜像哈希、提取时间、异常记录。这张表在后期迁移、校验、找文件时价值极高。

5.2 校验清单与三份备份:归档不是复制完就结束

光盘归档的核心不是“复制出来”,是“以后还能确认没坏”。所以每次归档都要留校验信息。最低要求是镜像文件的 SHA256,写在台账里;进阶做法是给每个提取目录生成一份文件清单,包含相对路径、大小、哈希,存成文本放在目录根部。以后任何时候重算一遍,和清单比对,就能知道有没有文件损坏或被误改。

备份遵循三份原则:一份在本地硬盘,一份在另一块物理硬盘或移动硬盘,一份在离线冷存储。光盘本身就是一份离线副本,所以严格说不需要再凑三份数字副本,但光盘会老化,数字副本至少要有两份且放在不同设备上。别把两份副本放在同一块硬盘的不同分区,硬盘坏了全没。

校验频率建议半年一次,至少一年一次。校验时不用全量算哈希,抽查 10% 加大文件全查,能发现大部分问题。发现哈希不一致,立刻从另一份副本恢复,别拖。

5.3 批量处理多张盘的脚本框架

盘多的时候,手动一张张处理效率太低。一个稳定的批处理框架大概长这样:先枚举光驱设备,再逐张做镜像,镜像成功后挂载提取,提取完校验,最后写日志。Linux 下用 shell 就能串起来,核心是每一步都有失败判断,失败就跳过并记录,不要中断整批。

伪代码思路是这样:对每个设备节点,用镜像工具生成带时间戳的 ISO,检查退出码;成功则挂载到临时目录,用rsync同步到目标目录;同步完算文件数和总大小,和镜像内的统计比对;最后卸载、记录日志。整套流程里最容易出问题的是挂载点没卸载干净导致下一张盘挂载失败,所以卸载要放在trap或者finally里,保证一定执行。

Windows 下可以用 PowerShell 串镜像工具和robocopy,逻辑一样。批处理的关键不是脚本多高级,是失败可追溯:哪张盘失败了、失败在哪一步、错误码是什么,日志里要能查到。

5.4 我在实际操作中踩过的几个坑

第一个坑是过度相信资源管理器。早期我拿到盘就直接拖,遇到弱盘就卡死,任务管理器都杀不掉,只能重启。后来改成先做镜像,成功率完全不一样。图形界面对坏盘几乎没有容错,这是设计决定的,不是设置问题。

第二个坑是忽略光盘的物理状态。有次一批盘复制出来大量文件损坏,折腾半天以为是光驱问题,最后发现盘面上有一层薄薄的霉斑,肉眼在灯光下看不出来,侧着光才看到。清洁之后重做,成功率立刻上来了。所以老盘上手先侧光检查盘面,这一步花不了两分钟,能省几小时。

第三个坑是只留了提取文件没留镜像。后来发现某些文件提取时被截断,想重提,盘已经还回去了。从那以后我的规矩是:只要盘有保存价值,镜像必须留,哪怕文件已经提取好了。镜像占空间,但它是一手证据。

第四个坑是没算时间。一张弱盘做镜像,降速到 4x 读取,4.7GB 要跑将近一小时,一批几十张盘就是几天。批量处理前先抽样估算单盘耗时,再排计划,别承诺当天交付。这个经验听起来和文件系统无关,但实际项目里,时间估算失误比技术问题更容易翻车。

最后再补一个细节:复制出来的文件如果还要长期使用,建议顺手把只读属性去掉、把时间戳保留、把目录结构固化,然后打一个校验清单。这三件事加起来不到五分钟,但能让这批资料在几年后依然可查、可用、可验证。光盘会老,流程不会。