`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Как изменилось финансирование ИТ-направления в вашей организации?

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Linux: "роспись" по компакт-дискам

0 
 

Являясь ближайшей родственницей Unix, Linux проповедует ту же идеологию по отношению к построению программного обеспечения -- "разделяй и властвуй". Суть ее заключается в том, что по возможности не следует создавать универсальные приложения. Каждая программа должна выполнять только свои функции и не содержать лишнего кода. Отлично проработанный механизм межпрограммного взаимодействия (конвейеры, сокеты и т. п.) позволяет решать комплексные задачи, комбинируя работу нескольких утилит, передавая между ними данные и вспомогательную информацию.

Подобный подход применяется и при записи CD. Предназначенное для этого ПО можно разделить на три категории. Первая -- это драйверы аппаратуры, которые, в отличие от большинства прочих, не располагаются резидентно в оперативной памяти, а используются как обычные программы, т. е. по необходимости. На текущий момент в большей части дистрибутивов Linux есть утилиты cdrecord и cdrdao, входящие в состав пакета cdrtools. Основное преимущество последней состоит в возможности создания аудиодисков без двухсекундных пауз между дорожками (запись в режиме disk-at-once -- DAO). При записи DVD-дисков чаще других применяются утилиты пакета dvd+rw-tools. Для этих же целей существует еще один набор -- dvdrecord, однако он является видоизмененной версией cdrecord и не имеет всех функций, предоставляемых dvd+rw-tools.

Ко второй категории относится ПО, формирующее на носителе файловую систему. В настоящее время несомненный лидер здесь -- утилита mkisofs, входящая в состав пакета cdrtools. До середины 2000 г. в Linux существовала еще одна программа подобного рода, mkhybrid, но затем проект слился с mkisofs. Благодаря этому, в частности, mkisofs стала "понимать" формат HFS (файловая система Mac OS). Кроме того, поддерживаются все актуальные стандарты и спецификации: ISO 9660, RockRidge, Joliet, El Torito (для загрузочных дисков), UDF (данная возможность пока проходит "обкатку", поэтому лучше пользоваться пакетом udftools), VideoCD.

Для формирования файловых систем на DVD-дисках применяется утилита growisofs, входящая в состав пакета dvd+rw-tools. Она представляет собой надстройку (front-end) над mkisofs, наличие которой в системе обязательно.

К третьей категории относятся графические надстройки над cdrecord, cdrdao, mkisofs и другими утилитами, фактически лишь формирующие пользовательский интерфейс и упрощающие выполнение тех или иных операций. Их существует несколько десятков, но в большинстве дистрибутивов Linux представлены xcdroast, cdbakeoven, k3b, gtoaster, gcombust или gcdmaster, причем первая присутствует практически всегда. Она не обладает всеми возможностями k3b или cdbakeoven, но, вероятно, сборщики дистрибутивов любят ее за стабильность и нетребовательность к ресурсам (несмотря на то, что сами разработчики оценивают ее состояние как 0.98alfa15). Если же ни одна из указанных программ вас не удовлетворит, попробуйте поискать требуемое на сайтах sf.net и freshmeat.net.


Использование консольных утилит

Нередко консольные утилиты оказываются эффективнее графических оболочек, и запись компакт-дисков -- не исключение. GUI лишь упрощает понимание (и избавляет от заучивания многочисленных команд и ключей), но не способствует увеличению производительности труда. Хотите пример? Пожалуйста. Сколько времени понадобится для того, чтобы сделать точную копию CD и сохранить ее на жестком диске? Используя графическую оболочку, мы должны ее сперва запустить, дождаться окончания инициализации, затем пробраться сквозь лес из пунктов меню, ввести имя образа и только после этого выполнить нужную операцию. Все это занимает по меньшей мере десятки секунд (а при работе с незнакомой программой -- и того больше). А вот как может выглядеть подобная операция в консоли (здесь и далее имена устройств и каталогов носят исключительно демонстрационный характер):

cpcd new.iso

Сколько времени потребуется, чтобы набрать такое? Ответ очевиден. Но, возможно, у вас возник другой вопрос -- в каком пакете находится утилита cpcd? На самом деле ни в каком, cpcd -- это скрипт, который содержит примерно следующее:

#!/bin/sh
cat /dev/cdrom1 > $1

При этом назвать его можно как угодно, но имя cpcd вполне соответствует тем функциям, которые он выполняет (CoPy CD). Надеюсь, подобный пример заставит скептиков взглянуть на использование консольных утилит немного иначе. Кстати, Linux изначально располагает всем необходимым и для работы с данными внутри полученного образа, никакие эмуляторы (как в Windows) не нужны:

mount -o loop new.iso /mnt/myiso

Процесс записи компакт-диска делится на две части: формирование образа (если это еще не сделано) и собственно прожиг. В самом простом случае это выглядит примерно так:

mkisofs -o home.iso /home/alex
cdrecord dev=0,1,0 -v speed=10 home.iso

Опция speed указывает скорость записи, а dev -- номер SCSI-устройства, присвоенный приводу. При этом неважно, действительно ли он использует SCSI-интерфейс. Дело в том, что в Linux для пишущих IDE-устройств применяется драйвер эмуляции SCSI. Чтобы выяснить необходимые параметры, достаточно выполнить команду

cdrecord -scanbus

Можно обойтись и без предварительного создания ISO-образа, формируя его на лету. Для этого стандартный вывод утилиты mkisofs перенаправляется на стандартный вход утилиты cdrecord:

mkisofs -r /home/alex | cdrecord dev=0,1,0 -v —eject speed=10 -

Обратите внимание на знак "-" в конце всей конструкции, именно он является той опцией, которая заставляет cdrecord читать данные со стандартного входа.

Формат командной строки для записи аудиодисков немного сложнее:

cdrecord dev=0,1,0 fs=4096k -v
-useinfo speed=10 -dao -pad
-audio "tr_12.wav" "tr_13.wav"

при этом необходимо, чтобы композиции были оцифрованы со следующими параметрами: частота 44,1 kHz, 16 бит, стерео.

Еще пара полезных примеров: очистка CD-RW

cdrecord dev=0,1,0 blank=fast speed=4

и копирование диск-в-диск

cdrdao copy -source-device 0,3,0 -device 0,4,0 -buffers 64

Необходимость применения многочисленных опций не должна вас пугать. Во-первых, самые основные запомнить не так уж сложно, во-вторых, можно "подсмотреть", как с подобными задачами справляются программы-надстройки. Для этого воспользуйтесь утилитой ps в момент их работы (запустите ее в отдельном терминале):

ps aux | grep cdrecord
ps aux | grep mkisofs

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

Таким образом, применение консольных инструментов действительно имеет несколько преимуществ, к примеру, позволяет устанавливать пишущий привод на достаточно маломощный компьютер. Они также удобны при автоматизации повторяющихся задач, при удаленном использовании приводов (скажем, через Web-интерфейс) и во многих других случаях, так что пренебрегать командной строкой не стоит.


CD Bake Oven
cdbakeoven.sourceforge.net

Linux "роспись" по компакт-дискам
По внешнему виду CD Bake Oven похож на своих коллег из мира Windows: Nero, WinOnCD и т. п.
Автор программы Алексей Подольский. Для ее работы необходимы KDE версии 3.1 и выше, а также утилиты cdrecord, cdrdao, mkisofs и сdda2wav (последняя используется для копирования аудиодисков). Интерфейс CD Bake Oven вполне интуитивен и делится на меню, перечень каталогов, список файлов в текущем каталоге и зону, где формируется проект. Подобная компоновка, как и поддержка drag'n'drop, типична для большинства приложений такого рода как в Linux, так и в Windows. При наличии в системе утилит mpg123 и ogg123 программа в состоянии создавать аудиодиски из MP3- и ogg-файлов. Поскольку в Linux обычным пользователям может быть запрещен доступ к определенным устройствам, CD Bake Oven располагает специальным мастером, позволяющим корректно настроить соответствующие привилегии.

Имеются, впрочем, и недостатки. В версии 2.x пока не доработан механизм интеграции с konqueror, отсутствует явная поддержка записи на DVD и, что совсем странно, не обеспечивается автоматическое удаление данных с диска в процессе перезаписи -- приходится это делать самостоятельно.


K3b
www.k3b.org

Linux "роспись" по компакт-дискам
Удобство, вот та характеристика, которая точно описывает достоинства k3b
Linux "роспись" по компакт-дискам
Опытные пользователи найдут в k3b все необходимые настройки и опции
Проект k3b начат в 1999 г. Себастьяном Труэгом (Sebastian Trueg). Хотя номер текущей версии далек от единицы (0.11.9), программа способна на многое (в том числе осуществляет запись на DVD), а последние релизы уже достаточно стабильны. Для ее работы как минимум требуются KDE версии 3.1.4 и пакеты cdrecord, mkisofs и dvd+rw-tools.

k3b задействует практически все возможности базовых утилит, а также поддерживает drag'n'drop, позволяет формировать и редактировать проекты; "понимает" мультисессионные и комбинированные диски; знакома с технологиями Burnfree и Justlink, умеет вычислять максимально допустимую скорость и проверять качество записи; располагает набором подключаемых модулей, позволяющих кодировать и декодировать данные в форматах ogg vorbis, MP3, FLAC и др., а также работает с онлайновыми справочниками CDDB.

Более того, при наличии в системе пакета eMovix программа может создавать загрузочные компакт-диски, содержащие комплект драйверов для видео- и звуковых карт, а также медиапроигрыватель Mplayer, в результате чего полученный CD будет фактически "самовоспроизводящимся".

На сегодняшний день k3b явно опережает большинство аналогичных разработок. Единственным недостатком (если это можно считать таковым) является то, что для работы программы необходимы библиотеки KDE.


X-CD-Roast
www.xcdroast.org

Linux "роспись" по компакт-дискам
Простота и доступность -- вот, что можно сказать о внешнем виде X-CD-Roast
Единственная из рассматриваемых здесь программ, написанная с использованием библиотеки GTK (сперва версии 1.x, а теперь -- 2.x). Автор -- Томас Нидэрайтэр (Thomas Niederreiter), проект стартовал в 1999 г. Чем привлекает X-CD-Roast прежде всего, так это простотой и продуманной компоновкой главного окна. Автор отказался от традиционного интерфейса (общее меню, панели инструментов, MDI), вместо этого предлагаются крупные кнопки и несколько вкладок. На первый взгляд программа выглядит старомодно, но на деле очень удобна. При этом X-CD-Roast обладает практически теми же возможностями, что и k3b, за исключением некоторых специальных функций, вроде поддержки файловой системы HFS, режима клонирования (точного копирования), кодирования и декодирования файлов в формате MP3 и ogg vorbis.

К сожалению, запись DVD в X-CD-Roast реализована через подключаемый модуль cdrecord-ProDVD, являющийся коммерческой разработкой и предоставляемый бесплатно только для использования в научных и образовательных целях, -- во всех прочих случаях применяйте k3b.


WebCDwriter
joerghaeger.de/webCDwriter

Linux "роспись" по компакт-дискам
В WebCDwriter выбор функциональных возможностей невелик, но он в состоянии удовлетворить простейшие нужды пользователей
Linux "роспись" по компакт-дискам
Оказывается, Web-броузеры можно использовать и не по прямому назначению. Пакет WebCDwriter -- живое тому подтверждение
Автор проекта Йорг Хагер (Jorg Haeger). Проект интересен тем, что позволяет производить прожиг CD/DVD через Web-интерфейс -- данный подход дает возможность пользователям локальной сети записывать компакт-диски удаленно. Графический интерфейс написан на Java, необходимым требованием для клиентской системы является наличие подключаемых Java-модулей. Схема работы, применяемая в этом случае, следующая -- клиент указывает необходимые файлы и каталоги, компонент CDWserver копирует их на свою машину (на которой, естественно, должен находиться и пишущий привод) в подкаталог /var/spool/CDWserver и затем в фоновом режиме осуществляет прожиг.

Программа поддерживает форматы Joliet, RockRidge и HFS. Из недостатков следует отметить ограниченные возможности, скажем, нельзя создавать загрузочные или аудиодиски. Впрочем, может автор и не ставил перед собой цель сделать универсальное приложение, а для задач резервного копирования имеющейся функциональности достаточно.


Заключение

Рассмотренные (и только упомянутые, из-за ограниченного объема обзора) программы показывают, что в Linux с записью оптических дисков дела идут совсем неплохо. В этой области "альтернативная" платформа вполне в состоянии удовлетворить потребности как рядовых, так и продвинутых пользователей -- т. е. действительно представляет собой реальную альтернативу. А с выходом в свет новой версии ядра 2.6 можно надеяться на дальнейшее расширение поддержки мультимедийных устройств и решение различных проблем (например, с UDF).
0 
 

Напечатать Отправить другу

Читайте также

 
 
IDC
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT