Введение

Программное обеспечение для записи оптических дисков

cdrtools (ранее известное как cdrecord) — это набор независимых проектов бесплатных программ/программ с открытым исходным кодом. Проект поддерживался более двух десятилетий Йоргом Шиллингом, скончавшимся 10 октября 2021 года. В связи с некоторыми проблемами лицензирования существует также форк Debian более старой версии cdrtools под названием cdrkit.

Происхождение и изменение названия

Первые выпуски cdrtools назывались cdrecord, поскольку они включали только инструмент cdrecord и несколько дополнительных утилит, но не mkisofs и cdda2wav. Копия mkisofs, созданная Эриком Янгдейлом в 1993 году для Yggdrasil Linux, была добавлена в 1997 году. В 1998 году была добавлена копия экспериментальной версии cdda2wav, созданной Хейко Эйсфельдтом.

В 1999 году проект начали называть cdrtools, чтобы лучше отразить тот факт, что он превратился в набор инструментов.

Поддержка записи DVD и Blu-ray дисков

Поддержка записи DVD (cdrecord ProDVD) в cdrecord началась в начале 1998 года по запросу архивистов данных Европейской южной обсерватории. Однако, поскольку соответствующая информация требовала соглашения о неразглашении, а DVD-приводы не были доступны публично, она не была включена в исходный код. В 2002 году Йорг Шиллинг начал предлагать бесплатные лицензионные ключи к закрытому исходному варианту cdrecord ProDVD для образовательных и исследовательских целей, а вскоре после этого – и для личного использования. 15 мая 2006 года поддержка записи DVD была добавлена в версию 2.01.01a09 с открытым исходным кодом после перехода на лицензию CDDL, что позволило отказаться от необходимости получения лицензионного ключа. Поддержка Blu-ray дисков была добавлена начиная с 2007 года. Отсутствие поддержки записи DVD в открытом исходном коде в 2001 году вызвало оживлённые дискуссии в списках рассылки, в то время как у Redhat уже была программа dvdrecord.

Спор о доступе к оборудованию

В отличие от cdrkit и libburnia, которые используют файлы устройств для доступа к аппаратному обеспечению, cdrtools использует другой метод, известный как CAM (Common Access Method – общий метод доступа), который доступен во многих операционных системах, включая те, в которых отсутствуют файлы устройств или доступ к ним разрешен только ядру. Это различие вызвало споры: некоторые пользователи Linux считают, что метод, используемый cdrtools, не подходит, в то время как другие утверждают, что пользователям cdrtools не нужно знать, какой метод применяется. В cdrtools запись оптических носителей (таких как CD, DVD и Blu-ray диски) осуществляется через интерфейс SCSI. Пользователям систем с несколькими устройствами записи необходимо указывать устройство SCSI, идентифицируемое тройкой чисел: scsibus, target, lun. Однако пользователям систем с одним устройством записи указывать устройство SCSI не требуется, поскольку cdrtools может найти его самостоятельно. К 2002 году все больше устройств записи стали использовать интерфейс ATAPI. Linux 2.6 позволил пользователям определять SCSI ID устройства по его пути в UNIX-системе (/dev/hdX), и был выпущен патч, упрощающий идентификацию устройства-записи для cdrecord, позволяя пользователю указывать имя устройства /dev/hdX (или даже использовать ссылку, управляемую udev, например /dev/cdrw). Однако Шиллинг отверг этот подход, а также другие модификации, применяемые дистрибутивами Linux, мотивируя это тем, что это усложнит программное обеспечение и снизит его переносимость, поскольку данная функция недоступна в других UNIX-системах, так как эти числа не являются уникальными, в отличие от управления udev в Linux. Торвальдс отметил, что ioctl были сохранены для обеспечения совместимости с cdrecord и не возвращают полезных значений.

Включение в набор инструментов Schily-Tools

Cdrtools является частью набора инструментов Jörg Schilling Schily Tools, который первоначально распространялся на SourceForge. Schilling прекратил обновление только альфа- и стабильной ветвей cdrtools в 2017 году с версией 3.02a9; версии 3.02a10 и выше включены только в исходный пакет schilytools. "Schily" Tool Box – это набор инструментов, написанных или поддерживаемых Йоргом Шиллингом. Он включает в себя программы: cdrecord, cdda2wav, readcd, mkisofs, smake, bsh, btcflash, calc, calltree, change, compare, count, devdump, dmake, основанный на SunPro Make, hdump, isodebug, isodump, isoinfo, isovfy, label, mt, obosh, od, p, POSIX patch, pbosh, sccs, scgcheck, scpio, sdd, sfind, sformat, smake, sh/bosh (Bourne sh), star, star sym, strar, suntar, gnutar, tartest, termcap и ved. Последняя версия Schily Tools, опубликованная самим Йоргом Шиллингом, – релиз от 18 сентября 2021 года. После его смерти разработку Schily Tools продолжила группа добровольцев. Вместо размещения на SourceForge, она размещена на некоммерческой платформе Codeberg. В память о нем его финальная версия cdrtools 3.02a10 (где буква "a" указывает на то, что программное обеспечение находится в стадии семантической альфы) была объявлена новой стабильной версией 3.02 без существенных изменений.

История версий

+ История версий cdrtools Название проекта Предварительные выпуски Стабильные выпуски Заметки первая последняя версия дата cdrecord 1.00 1996 02 04 1.01 1996 10 04 1.02 1996 12 20 1.03 1997 05 16 1.04 1997 05 23 1.5a1 1.5a9 1.05 1997 09 15 1.6a01 1.6a15 1.06 1998 04 18 1.6.1a1 1.6.1a7 1.06.1 1998 10 19 1.8a01 1.8a40 1.08 2000 01 28 1.8.1a01 1.8.1a09 1.08.1 2000 04 27 1.9a01 1.9a05 1.09 2000 07 20 cdrtools 1.10a01 1.10a19 1.10 2001 04 22 1.11a01 2.0pre1 1.11a40 2.0pre3 2.00 2002 12 25 Поддержка DVD-видео с июля 2002 года. 2.00.3 2003 05 28 2.01a01 2.01a38 2.01 2004 09 09 Эта серия была последней версией, лицензированной по GPL, и использовалась в качестве основы для ответвления cdrkit. 2.01.01a01 2.01.01a80 3.00 2010 06 02 В мае 2006 года большая часть cdrtools была переведена на лицензию CDDL. 3.01a01 3.01a31 3.01