Я пытаюсь использовать существующую систему драйверов Linux для эффективного сброса данных с CD-ROM.
Например, если я вставлю «обычный» CDROM-диск с программным обеспечением и выполню команду
cat /dev/sr0
то на выходе получается куча необработанных данных с диска — и это здорово.
Однако некоторые другие типы компакт-дисков приводят к ошибкам ввода-вывода даже после небольшого объема данных.
Некоторые исследования привели меня к пониманию того, что данные по умолчанию считываются в «Режиме 1». (Информацию о формате/структуре можно найти здесь:https://en.wikipedia.org/wiki/CD-ROM#CD-ROM_format)
Что нужно сделать, чтобы прочитать диски с данными в режиме 2? Есть ли какие-то настройки драйвера или ядра, чтобы изменить режим?
Примечание: существуют и другие программы для решения этой задачи, например cdrdao, но у меня вопрос, как сделать это изначально.
Обновление 1: некоторые потенциальные зацепки:
- Общее описание архитектуры драйвера CD-ROM:http://www.tldp.org/HOWTO/SCSI-2.4-HOWTO/sr.html
- Потенциально полезный параметр модуля, который по умолчанию отключен:http://lxr.free-electrons.com/ident?i=xa_test(хотя включение не решает проблему)