使用growisofs备份审计数据

在Redhat Enterprise Linux 5.0上使用growisofs写入DVD + R和DVD-R时,我们遇到了问题。 我们要做的是备份我们存储的审计数据,这基本上是每天审计数据的一个.zip文件。 .zip文件相对较小,一般只有几兆字节。 在写入DVD + R或DVD-R时,我们从growisofs收到以下错误消息:

 :-(无法预先64(2)主卷描述符:input/输出错误
你很可能要使用-Z选项。

growisofs也退出,退出代码为150.根据我读的Debian邮件列表文章(链接不再工作) growisofs返回errno +128,所以这似乎与errno=22 ,即EINVAL (无效参数)相对应。

主卷描述符是肯定存在的,因为我们已经用-Z初始化了DVD。 我们要做的第一件事就是growisofs -Z ,然后是每个文件一个growisofs -M命令。 这个错误通常发生在我们写的第二个文件上 – 也就是说,DVD用-Z初始化,我们成功地写了一个.zip文件,然后第二个.zip文件产生这个错误信息。

一个简单的解决方法是物理地popupDVD,然后重新插入它在DVD再次工作,我们能够写下其余的文件。 虽然这并不理想。 错误是不一致的,但它是相当频繁的,popup似乎总是解决这个问题。

以下是我们用来写入DVD的命令:

 growisofs -Z /dev/dvd -rJ -use-the-force-luke=notray blank.iso for each FILE: growisofs -M /dev/dvd -rJ -use-the-force-luke=notray "$FILE" 

以下是来自dvd+rw-mediainfo /dev/dvd的示例输出,如果有帮助:

咨询:[TEAC] [DV-W28EC] [1.0B]
 GET [当前]configuration:
 已安装的介质:1Bh,DVD + R
 媒体ID:RITEK / F16
 当前写入速度:8.0x1385 = 11080KB / s
 写入速度#0:8.0x1385 = 11080KB / s
 写入速度#1:6.0x1385 = 8310KB / s
 写入速度#2:4.0x1385 = 5540KB / s
 写入速度#3:2.4×1385 = 3324KB / s
 速度描述符#0:00/2295103 [email protected]=11080KB/s [email protected]=11080KB/s
 速度描述符#1:00/2295103 R @ 6.0x1385 = 8310KB / s W @ 6.0x1385 = 8310KB / s
 速度描述符#2:00/2295103 R @ 4.0x1385 = 5540KB / s W @ 4.0x1385 = 5540KB / s
 速度描述符#3:00/2295103 R @ 2.4x1385 = 3324KB / s W @ 2.4x1385 = 3324KB / s
阅读DVD结构[#0h]:
 媒体书types:00h,DVD-ROM书[修订0]
 传统导出:2295104 * 2KB = 4700372992
读取光盘信息:
 光盘状态:可追加
 会议次数:21
 上届会议状态:空
  “下一个”曲目:21
 曲目数:21

任何想法是什么导致这个问题或如何解决它?

Linux上的CD / DVD刻录机处理一直是片状的,没有太多开发人员或供应商对解决问题感兴趣。 DVD + R是最糟糕的。

如果您的驱动器是可以popup的types,请在每次写入操作后执行“popup磁盘”和“popup-t磁盘”。 我从来没有敢于用户growisofs成长一个ISO文件系统,只是写入DVD + R当dvdrecord / cdrecord停止在DVD + R的工作。 无论是增长还是cdrecord,我通常不得不popup/试图获得一个新的写入磁盘工作。

我在Ubuntu 9.04和growisofs 7.1上遇到了这个问题,结果是我试图备份的文件无法访问。 我会build议检查,以确保$文件存在,并具有适当的权限,然后传递给growisofs。 我假设消息“:-(无法pread64(2)主卷描述:input/输出错误,你最有可能使用-Z选项。”可能是一个错误,因为问题是源文件,而不是目的地媒体。

简短的回答 – Strace它。 我并不否认上述任何回应在他们的案例中都是正确的 – 但是我之所以这样做,是因为我没有对DVD驱动器的写入权限。 然后再次发生,因为我没有权限访问底层的SCSI通用设备(/ dev / sg1)。 所以总之 – 这看起来像是一个非常普遍的错误,可能有许多根本原因。