3

Я заархивировал свою коллекцию носителей на двухслойные диски BD-R, но продолжаю получать следующие ошибки ввода-вывода в конце процесса записи (обычно> 95% завершено):

:-[ WRITE@LBA=168e800h failed with SK=5h/END OF USER AREA ENCOUNTERED ON THIS TRACK]: Input/output error
:-( write failed: Input/output error
/dev/sr0: flushing cache
/dev/sr0: closing track
/dev/sr0: closing session
:-[ CLOSE SESSION failed with SK=5h/INVALID FIELD IN CDB]: Input/output error
/dev/sr0: reloading tray 

Мой процесс архивации подробно описан ниже:

  1. dirsplit -m -s 46G /path/to/folder > делит исходную папку 61G на две папки, размер которых <= 46 ГБ. (Емкость Blu-Ray DL составляет 50050629632 байт == 46,61 ГБ)
  2. genisoimage -ldots -allow-lowercase -allow-multidot -d -iso-level 4 -l -o /path/to/file.iso /path/to/folder > генерирует ISO-образ, который совместим со структурой папок OS X и имена файлов.
  3. growisofs -Z /dev/sr0=/path/to/file.iso > записывает ISO-образ на диск Blu-ray.

Интересно то, что я могу успешно смонтировать и прочитать с записанного диска, хотя growisofs не удалось закрыть сеанс. Но я не уверен, что все данные были записаны на диск.

Я сравнил контрольные суммы md5 как диска, так и файла img (благодаря изящному совету от ewindisch в Unix & Linux), но две строки не совпали . В выводе dd говорится, что размер диска составляет 48 ГБ, а не 46 ГБ, которое было записано на нем.

Однако запуск cmp -b -l /path/to/image.iso /dev/sr0 вернул cmp: EOF on /dev/sr0 что означает, что образ диска меньше, чем iso-файл.

Так что, насколько я могу судить, growisofs частично записал образ на диск, но по какой-то причине остановился. Хотя я могу смонтировать "неполный" диск, мне нужно выяснить, почему запись прекратилась.

Может кто-то указать мне верное направление? Я не могу найти никаких записей в /var/log/* написанных growisofs, и могу только перейти к загадочным выводам в верхней части этой страницы.

3 ответа3

3

@danielcraigie:

Я столкнулся с точно такой же проблемой при записи ISO-образа размером 50 011 897 856 байт, что всего на 37,8 МБ меньше максимальной емкости Blu-ray DL, которую вы упомянули (50050629632 байт).

Вот что решило проблему в моей ситуации:

 growisofs -use-the-force-luke=spare:none -dvd-compat -overburn -Z /dev/sr0=/path/to/file.iso

Я подозреваю, что параметр -overburn не был необходим, но я не могу сказать это наверняка, потому что я не пробовал записывать диск без этого параметра. Эти BD-R DL довольно дорогие. Параметр -dvd-compat заставляет growisofs закрывать дорожку / сессию / диск, чтобы сделать его более совместимым с некоторыми проигрывателями Blu-ray, которые не любят мультисессионные диски.

Плохо документированный параметр -use-the-force-luke = spare: ни один из параметров не является ключевым параметром для решения проблемы. Он инструктирует Growsofs не предварительно форматировать чистый носитель BD-R. Предварительное форматирование носителя мгновенно занимает 256 МБ дискового пространства для управления дефектами.

Так что теперь вместо того, чтобы получить страшные :-[ CLOSE SESSION failed на 95-96% процесса записи диска, я получаю это:

49979686912/50011897856 (99.9%) @4.0x, remaining 0:01 RBU  96.0% UBU  51.1%
builtin_dd: 24419872*2KB out @ average 3.9x4390KBps
/dev/sr0: flushing cache
/dev/sr0: closing track
/dev/sr0: closing session
/dev/sr0: reloading tray
1

Как упоминалось в ответе Beef Eater, это вызвано тем, что "резервная область" управления дефектами занимает 256 МБ пространства, а это означает, что образ вашей файловой системы UDF больше не помещается на диск. Есть две вещи, которые вы можете сделать с этим:

  1. Соответственно уменьшите размер изображения и воспользуйтесь встроенным управлением дефектами, требуемым спецификацией Blu-Ray (хотя при скорости записи 50%). Вы можете узнать фактическое доступное для записи пространство на носителе, указанном несколько раз в выводе dvd+rw-mediainfo , например:

    $ dvd+rw-mediainfo /dev/dvd
    ...
    READ FORMAT CAPACITIES:
     formatted:             11826176*2048=24220008448
    READ TRACK INFORMATION[#1]:
     Track State:           complete
     Track Start Address:   0*2KB
     Free Blocks:           0*2KB
     Track Size:            11826176*2KB
    READ CAPACITY:          11826176*2048=24220008448
    

    Это говорит о том, что на диске доступно 11826176 * 2 КБ = 23652352 КБ свободного места, которое затем можно использовать в качестве входных данных для инструментов разделения или создания изображений, например

    $ truncate -s 23652352K my_image.udf
    $ mkudffs my_image.udf
    ... fill up the image etc ...
    
  2. Отключите управление дефектами на диске и удалите свободную область, что позволит вам записывать диск на полной скорости на полную мощность. Это можно сделать с помощью инструмента dvd+rw-format , как описано здесь , например,

    $ dvd+rw-format /dev/dvd -ssa=none
    

    Поскольку в этой ситуации не будет никакого управления дефектами, вы можете захотеть проверить диск вручную после его записи, например, с помощью команды diff -r .

0

Мои записи на диски Blu-ray объемом 25 ГБ также заканчивались ошибкой:

:-[ CLOSE SESSION failed with SK=5h/INVALID FIELD IN CDB]: Input/output error

на Ubuntu 14.04 LTS trusty, когда я запустил эту команду:

growisofs -Z /dev/sr1 -V "BD_Disk_Name" -R -iso-level 3 "/path/to/directory/to/burn"

Я не хотел использовать

-use-the-force-luke=spare:none

решение, потому что я не хотел отказываться от проверки ошибок.

Похоже, что это известная ошибка (у меня нет представителя для добавления ссылки, но она находится на уровне дефектов, точка Debian Org, номер 713016), которая была исправлена в 'dvd+rw-tools 7.1-11'. К сожалению, для меня эта версия недоступна в '14 .04 LTS trusty ', но она доступна в' vivid '.

Так что, если вы оказались в одной лодке, вот как я получил более новую версию.

В других местах было предложено использовать "закрепление" для получения программного обеспечения из более новых выпусков, но я не пробовал это, поскольку эта страница, которая описывает, как это сделать, предполагает, что это может быть проблематично, и рекомендует лучшую альтернативу закреплению. К сожалению для меня они пропустили шаг, так что вот что я нашел сработало:

Вы должны 'cd' туда, где вы хотите, чтобы файлы сборки заканчивались.

Отредактируйте этот список, чтобы добавить deb-src для релиза, в котором есть то, что вам нужно:

nano /etc/apt/sources.list

В моем случае я добавил эту строку в список sources.list:

deb-src http://archive.ubuntu.com/ubuntu vivid main restricted universe multiverse

Затем выполните «обновление»:

sudo apt-get update

Затем получите зависимости:

sudo apt-get build-dep dvd+rw-tools

Теперь вы можете получить источник:

apt-get -b source dvd+rw-tools=7.1-11

Установите 'dvd+rw-tools_7.1-11_i386.deb':

dpkg --install dvd+rw-tools_7.1-11_i386.deb

Однако это не установило новую версию growisofs, поэтому мне пришлось запустить это (возможно, если бы я запустил это первым, он установил бы все?):

dpkg --install
(Reading database ... 62345 files and directories currently installed.)
Preparing to unpack growisofs_7.1-11_i386.deb ...
Unpacking growisofs (7.1-11) over (7.1-10build1) ...
Setting up growisofs (7.1-11) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...

Убедитесь, что установлена более новая версия growisofs:

dpkg -s growisofs

Package: growisofs
Status: install ok installed
Priority: optional
Section: video
Installed-Size: 202
Maintainer: Optical Media Tools Team <pkg-opt-media-team@lists.alioth.debian.org>
Architecture: i386
Source: dvd+rw-tools
Version: 7.1-11
Replaces: dvd+rw-tools (<< 7.1-9)
Depends: libc6 (>= 2.4), libstdc++6 (>= 4.1.1)
Breaks: dvd+rw-tools (<< 7.1-9)
Description: DVD+-RW/R recorder
[...]

Наслаждайтесь записью на диски Blu-ray!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .