好吧,我可能有点傻,但我正在编写一个 ISO 抓取工具,它实际上只是在 dd 之上添加的 GUI,我无法让它在 Snow Leopard 上生成无损坏的 ISO。我尝试了以下变体(所有变体均未安装 /dev/disk1,这是应该的):
dd if=/dev/disk1 of=/Users/[me]/Desktop/anIso.iso bs=2048 conv=sync,notrunc
dd if=/dev/disk1 of=/Users/[me]/Desktop/anIso.iso bs=2048 conv=notruc
dd if=/dev/disk1 of=/Users/[me]/Desktop/anIso.iso bs=2048
dd if=/dev/disk1 of=/Users/[me]/Desktop/anIso.iso
在这四种情况下,单击生成的 iso 都会弹出一个窗口,提示“无法读取以下磁盘映像”,并列出文件。如果有用的话,输出(至少对于命令的第一个变体)是:
408258+1 records in
408259+0 records out
836114432 bytes transferred in 513.382815 secs (1628637 bytes/sec)
有什么想法吗?我读了手册页,变体 1 似乎肯定应该从指定的 cd 生成一个 iso
答案1
对于 CD-ROM,使用/dev/disk1s0
和 而不是/dev/disk1
。
/dev/disk1
将访问原始的 2352 字节块,这在读取音频 CD 时非常有用。在 CD-ROM 上,2352 字节中的 2048 个字节用于数据,其余大部分用于纠错。当您读取时/dev/disk1s0
,它将使用错误校正代码来纠正任何可能的错误,并返回每个块的(可能已纠正的) 2048 个数据字节,这正是您对 ISO 映像所需要的。
请注意,这与 DVD-ROM 不同,DVD -ROM 可以使用/dev/disk1
。DVD-ROM 使用不同的错误纠正方案,将数据分散到磁盘上,以提供更好的错误恢复能力。没有单独的设备名称可用于读取包含错误纠正代码的 DVD 数据。
答案2
音频 CD 通常不会dd
以 ISO 格式进行翻录和存储。音频 CD 数据 (CDDA) 更接近唱片上的音轨,以间隙为界向内螺旋。它们不包含文件系统。
相反,音频 CD 数据通常使用以下程序进行翻录:光盘目录或者偏执狂。音频 CD 通常以 BIN/CUE 对、WAV/CUE 对或每个音轨的单独 WAV 文件的形式存储,而不是 ISO 文件。CUE 文件是包含音轨布局的 ASCII 文本文件,BIN 或 WAV 文件包含实际的音频数据。
和偏执狂:
# read cd's table of contents
cdparanoia -Q
# rip several (1 thru N, inclusive) tracks to one big file
cdparanoia --batch 1-N bigfile.wav
和光盘目录:
cdrdao read-cd --read-raw --datafile foo.bin --device ATAPI:0,0,0 --driver generic-mmc-raw foo.toc
查看从命令提示符中抓取和刻录的方法了解更多血腥细节。
答案3
不确定发生了什么,但是您是否尝试过事后比较源和目标?
或许:
od -c source > source.txt
od -c target > target.txt
diff source target
我猜这会生成一些相当大的文件,而且我不确定差异输出有多大用处 - 但至少它应该提供文件是否相同的答案。
您的机器上运行着“FileVault”或其他程序吗?不确定这是否会影响这类事情?
dd 能与其他类型的二进制文件一起使用吗?(尝试将'/bin/ls'复制到另一个文件,看看它是否仍然有效?)
答案4
无论它值多少钱,以下是 diskutil 告诉我的有关驱动器中当前磁盘的信息:
Device Identifier: disk1
Device Node: /dev/disk1
Part Of Whole: disk1
Device / Media Name: MATSHITA DVD-R UJ-868
Volume Name: West Side Story
Escaped with Unicode: West%FF%FE%20%00Side%FF%FE%20%00Story
Mounted: No
File System: CD-DA
Type: cddafs
Name: CD Audio
Partition Type: CD_partition_scheme
Bootable: Not bootable
Media Type:
Protocol: SATA
SMART Status: Not Supported
Total Size: 836.1 MB (836112480 Bytes) (1633032 512-Byte-Blocks + 96 Byte(s))
Volume Free Space: 0 B (0 Bytes) (exactly 0 512-Byte-Blocks)
Read-Only Media: Yes
Read-Only Volume: Not applicable (not mounted)
Ejectable: Yes
Whole: Yes
Internal: Yes
OS 9 Drivers: No
Low Level Format: Not Supported
Optical Drive Type: CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-R, DVD-R DL, DVD-RW, DVD+R, DVD+R DL, DVD+RW
Optical Media Type: CD-ROM
Optical Media Erasable: No