Volgograd

Волгоград Linux User Group

Организована 23 ноября 2002 года

Проект заморожен Птн Июл 6 02:11:14 MSD 2012


Вход:  Пароль:  

TarasAblamsky/articles/DVDWriting


Это старая версия TarasAblamsky/articles/DVDWriting за 2004-07-23 18:43:08..

Запись DVD в linux


Про то как записывать DVD[±]R[W](всякие там разные dvd) под linux.
Оглавление документа

Запись dvd c файловой системой ISO9660 (самые обычные dvd)


1. ставим dvd+rw-tools

Пакет этот занимает 179300 байт

Обратите внимание на файлик index.html — это такое небольшое HOWTO, которым я и руководствовался, в виду того, что man growisofs еще не написан.

2. Программа, которая записывает dvd, называется growisofs
по опциям она почти полностью совпадает с mkisofs. То есть запись DVD
это практически тоже самое что и создание iso, в смысле если вы умеете
делать iso, то вы уже умеете писать dvd ;)

Итак, берем наш любимый скрипт для создания iso, меняем в нем слово 'mkisofs' на 'growisofs -Z /mnt/cdrom' и получаем скрипт для записи DVD!

Вот так это выглядит у меня:

3. Все! передаем ему в качестве параметра имя директории которую хотим записать и радуемся ;)

В рассмотренном выше примере мы пишем сразу на dvd, как бы минуя этап
создания iso-образа. Это может быть не всегда удобно, записать уже
подготовленный раньше образ(пусть img.iso) можно так:

growisofs -Z /dev/cdrom=img.iso

Примечание: Опция -Z используется для новых пустых дисков, опция -M для перезаписываемых.

Все получилось настолько просто что я даже не обратил внимания на версии
всяких программ и ядра. Вот они:

Скорее всего они все из Сизифа.

Запись dvd с файловой системой UDF


Недавно обнаружил что файловая система iso9660 не поддерживает файлы размером больше 2Gb.
Для записи таких файлов можно использовать файловую систему UDF. На самом деле в linux можно записывать диски с совершенно любой поддерживаемой ядром файловой системой (например reiserfs или даже fat ;) ), но вот только бедные несчастные пользователи windows не смогут их прочитать. С UDF же есть шанс что и пользователям windows удастся прочитать записанные нами диски.

Для работы с UDF нам потребуется пакет udftools (сайт проекта здесь )
Если вы пользуетесь пакетным дистрибутивом, имеет смысл взять пакет из своего дистрибутива. Я использовал udftools-1.0.0-alt0.1b3, по-моему из какого-то из срезов Сизифа.

Создать образ диска с файловой системой UDF можно следующим образом:

Создаем пустой файл нужного размера (здесь 4Gb)


Затем с помошью программы mkudffs из пакета udftools создаем в этом файле файловую систему UDF

Обратите внимание на параметр -r который указывает версию UDF. Дело в том, что по умолчанию используется версия 2.01, а мы ведь переживаем за бедных пользователей поделок от Microsoft в которых она может не поддерживаться (Проверено, на windows 98 UDF2.01 не читается).

Монтируем теперь этот файл как устройство loopback

Не очень приятный момент, так как приходится пользоваться привелегиями root как для монтирования так и для смены владельца файлов в нашей новой ФС. Должен быть какой-то способ проще, нужно что-то типа mkisofs только для UDF, мы же не собираемся пока работать с этими dvd в режиме rw (это, кстати, совсем другая песня)
Такой способ есть, это программа mkisofs из состава dvdrtools насколько я понял, она умеет делать образ с файловой системой udf (ключ -udf). Проверил — работает.

То есть udf-образ можно создать так:

еще раз обращаю внимание что программа mkisofs должна быть из состава dvdrtools.

Теперь набиваем наш образ диска файлами которые хотим записать, то есть просто копируем все что надо в каталог куда смонтирован образ.

И размонтируем образ


Все. Образ готов. Теперь осталось его залить на dvd, что мы и делаем так же как и в случае с iso-образом.


Наверное имеет смысл все вышеперечисленные действия завернуть в скрипт, который будет подобно примеру выше (где про iso9660) создавать dvd из файлов в директории.

Полезные ссылки

http://gazette.linux.ru.net/lg83/stoddard.html — статья про то как записывать видео-dvd диски.

PS
говорят также что xcdroast и k3b умеют писать dvd, но поскольку они мне не интересны, я их даже не смотрел.