在 Ubuntu Linux 上,我使用 Growthisofs 将文件写入 BD-R,如下所示:
growisofs -Z /dev/sr0 -R -J -f -graft-points ...
然后我想添加更多文件,但我没有引起足够的重视,我再次使用 -Z 选项运行 Gromisofs,而不是切换到 -M。现在,当我安装光盘时,我只能看到第二次刻录的文件。有什么我可以再次写入光盘以使两组文件可见(就好像我第二次正确使用了 -M 一样)?
我仍然拥有所有原始源文件,因此我可以简单地刻录一张新光盘并正确执行 - 即我不需要获取数据以防止丢失。我只是希望有一种方法可以不浪费光盘,因为所有数据都刻录在那里。
这是 dvd+rw-mediainfo 查询输出:
INQUIRY: [PIONEER ][BD-RW BDR-209D][1.31]
GET [CURRENT] CONFIGURATION:
Mounted Media: 41h, BD-R SRM+POW
Media ID: VERBAT/IMe
Current Write Speed: 12.0x4495=53940KB/s
Write Speed #0: 12.0x4495=53940KB/s
Write Speed #1: 10.0x4495=44950KB/s
Write Speed #2: 8.0x4495=35960KB/s
Write Speed #3: 6.0x4495=26970KB/s
Write Speed #4: 4.0x4495=17980KB/s
Write Speed #5: 2.0x4495=8990KB/s
Speed Descriptor#0: 00/12088319 [email protected]=53940KB/s [email protected]=53940KB/s
Speed Descriptor#1: 00/12088319 [email protected]=44950KB/s [email protected]=44950KB/s
Speed Descriptor#2: 00/12088319 [email protected]=35960KB/s [email protected]=35960KB/s
Speed Descriptor#3: 00/12088319 [email protected]=26970KB/s [email protected]=26970KB/s
Speed Descriptor#4: 00/12088319 [email protected]=17980KB/s [email protected]=17980KB/s
Speed Descriptor#5: 00/12088319 [email protected]=8990KB/s [email protected]=8990KB/s
POW RESOURCES INFORMATION:
Remaining Replacements:16843296
Remaining Map Entries: 0
Remaining Updates: 0
READ DISC INFORMATION:
Disc status: appendable
Number of Sessions: 1
State of Last Session: incomplete
"Next" Track: 1
Number of Tracks: 2
READ TRACK INFORMATION[#1]:
Track State: partial incremental
Track Start Address: 0*2KB
Free Blocks: 0*2KB
Track Size: 10564928*2KB
READ TRACK INFORMATION[#2]:
Track State: incomplete incremental
Track Start Address: 10564928*2KB
Next Writable Address: 11867264*2KB
Free Blocks: 221056*2KB
Track Size: 1523392*2KB
FABRICATED TOC:
Track#1 : 14@0
Track#AA : 14@12088320
Multi-session Info: #1@0
READ CAPACITY: 12088320*2048=24756879360
读取磁道#1的磁道大小(10564928*2KB)是第一次刻录的正确大小;磁道大小减去可用块大小 (1523392*2KB - 221056*2KB) 是第二次刻录的正确大小。
答案1
在不隐藏第二个会话的文件的情况下,几乎没有机会访问第一个会话中的文件。
现在有两个 ISO 9660 文件系统树。每个仅包含其会话的文件。超级块指向较新的树,因为它在伪覆盖格式的 BD-R 上被覆盖。
通过字节级操作,您可以使超级块指向较旧的树,但您将看不到较新的文件。
使用 -M,growisofs 会让 mkisofs(或兼容的替换程序)读取旧目录树并通过新文件扩展它。然后它会被写入介质上的剩余空间并由伪覆盖超级块指向。
我不知道 ISO 9660 生产程序可以读取两棵树,合并它们,并将结果写入第三个会话,而不写入数据文件。但只有这样的操作才能让结果适合剩余的 440 MiB 可用空间。
这似乎是growisofs 中的一个错误,它在已经编写的BD-R 上接受-Z。