使用 Growthisofs 的 -Z 标志而不是 -M 写入 BD-R 光盘的第二个会话。第一次会议可以显示吗?

使用 Growthisofs 的 -Z 标志而不是 -M 写入 BD-R 光盘的第二个会话。第一次会议可以显示吗?

在 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。

相关内容