The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

cdrecord (1)
  • >> cdrecord (1) ( Русские man: Команды и прикладные программы пользовательского уровня )
  • cdrecord (1) ( Linux man: Команды и прикладные программы пользовательского уровня )
  •  

    НАЗВАНИЕ

    cdrecord - запись компакт дисков (в том числе и музыкальных) из образа диска  

    СИНТАКСИС

    cdrecord [ общие_параметры ] dev=устройство [ опции_треков ] трек1...трекN

     

    ОПИСАНИЕ

    Cdrecord используется для записи цифровых или музыкальных компакт дисков на пишущие приводы компакт-дисков (Orange Book CD-Recorder).

    устройство определяет параметры scsibus/target/lun привода. Связь с SunOS сделана через общий драйвер SCSI scg. Остальные операционные системы используют библиотеку, эмулирующую этот драйвер. В этом случае синтаксис такой: dev= scsibus,target,lun или dev= target,lun. В последнем случае привод должен быть присоединен к шине SCSI компьютера по умолчанию. Scsibus, target и lun должны быть целыми числами. Некоторые операционные системы или реализации транспортов SCSI могут дополнительно требовать указания имени файла устройства. В этом случае синтаксис для устройства будет таким: dev= devicename:scsibus,target,lun или dev= devicename:target,lun. Если имя указываемого устройства в системе явно указывает на одно устройство SCSI, то может быть использована краткая форма dev= devicename:@ или dev= devicename:@,lun вместо длинной команды dev= devicename:scsibus,target,lun.

    Для доступа к удаленным устройствам SCSI необходимо предварять имя устройства SCSI индикатором удаленного устройства. Таким индикатором может быть либо REMOTE:user@host: либо .BIREMOTE:host:
    Корректным именем удаленного устройства SCSI может быть: REMOTE:user@host: для разрешения удаленного сканирования шины SCSI, или REMOTE:user@host:1,0,0 для доступа к устройству SCSI на host присоединенному к шине SCSI bus # 1,target 0 lun 0.

    Для создания cdrecord портируемым на все платформы UNIX , синтаксис dev= devicename:scsibus,target,lun более предпочтителен, так как он скрывает имя устройства, специфичное для ОС, от пользователя. Другие ОС могут и не поддерживать методы определения имени устройства, либо не иметь метода переопределения scsibus,target,lun.

    Scsibus Шина 0 является шиной SCSI по умолчанию на машине. Для более подробной информации смотрите сообщения при загрузке или смотрите в /var/log/messages информацию о настройках SCSI вашей машины. Если у вас есть проблемы с определением используемых значений scsibus,target,lun, то попробуйте использовать опцию -scanbus команды cdrecord описанную ниже.

    Если существует файл /etc/cdrecord.conf, то параметром для опции dev= может быть метка имени привода, указанная в файле (смотрите раздел ФАЙЛЫ).

    На совместимых с SVr4 системах cdrecord использует класс реального времени для получения наивысшего возможного приоритета (выше всех процессов ядра). На системах с POSIX real time scheduling cdrecord также использует распределение реального времени, но может и не получить приоритет выше, чем все процессы ядра.

    В режиме Track At Once каждый трек соответствует одному файлу, содержащему подготовленные данные для этого трека. Если аргументом является `-', то для трека используется стандартный ввод. Только один трек может быть принят с stdin.

     

    ОБЩИЕ ОПЦИИ

    Общие опции должны указываться до опций или названий имен файлов для треков.

    -version
    Выдать информацию о версии и завершить работу.
    -v
    Повысить уровень вывода информации. Используется, например, для показа продвижения процесса записи (отображения процентов записи).
    -V
    Повышение уровня выводимой информации относительно транспорта команды SCSI. Помогает при решении проблем с приводом, возникающих во время процесса записи. Если вы получаете непонятные сообщения об ошибках, то установите этот флаг для получения более подробных сообщений. -VV Дополнительно показывает содержимое буфера данных. Использование -V или -VV замедляет процесс и может быть причиной опустошения буфера.
    debug=#, -d
    Устанавливает значение отладки в # (при debug=#) или увеличивает уровень на единицу (при -d). Если вы укажите -dd, то это будет соответствовать debug=2. Это может помочь при поиске проблем во время использования драйвера для libscg, или при указании некорректных размеров или типов секторов. Использование -debug замедляет процесс и может быть причиной опустошения буфера.
    kdebug=#, kd=#
    Указывает scg-driver на изменение значения отладки ядра во время работы команд SCSI.
    -silent, -s
    Не выводить данные о статусе для команд SCSI с ошибками.
    -force
    Принудительно продолжать работу, даже при наличии некоторых ошибок. Эта опция пока позволяет реализовывать несколько методов, позволяющих очищать плохие (сбойные) перезаписываемые диски RW.
    -dummy
    Привод будет выполнять все шаги процесса записи, но с выключенным лазером. Рекомендуется выполнить несколько таких тестов перед действительной записью на компакт-диск, если неизвестны возможности и ресурсы системы.
    -dao
    Определяет режим Disk At Once (весь-диск-за-один-раз). Работает только с приводами MMC, поддерживающими режим Session At Once (запись-сессии-за-один-раз).
    -multi
    Позволяет записывать много-сессионные диски. Этот флаг должен присутствовать на всех сессиях записи много-сессионных дисков, за исключением последней (завершающей) сессии, закрывающей диск. Запись будет производиться таким образом, что в дальнейшем привод сможет записать дополнительный трек. Это достигается созданием таблицы содержимого диска TOC со ссылкой на следующую за треком область. Носители, созданные таким образом, не на 100% совместимы с фабрично изготовляемыми дисками (за исключением CDplus). Используйте эту опция только для создания много-сессионных дисков. Если указана эта опция, то тип трека по умолчанию станет типом CD-ROM XA mode 2. Приводы Sony не имеют фабричной поддержки для CD-ROM XA mode 2. Поэтому вам придется указывать опцию -data с этими приводами для создания много-сессионных дисков. Так как cdrecord не имеет кодека для преобразования секторов данных в звуковые сектора, то вам придется принудительно указать сектора CD-ROM , указав опцию -data , если вы хотите записать много-сессионный диск в режиме DAO/SAO. Не все приводы позволяют создавать много-сессионные диски в режиме DAO/SAO.
    -msinfo
    Получает информацию о много-сессионных дисках в форме, подходящей для mkisofs-1.10 или более поздних версий.

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

    -toc
    Получает и выводит таблицу содержания или PMA для компакт диска. С этой опцией cdrecord будет работать и с приводами CD-R, и с приводами CD-ROM.
    -atip
    Получает и выводит информацию ATIP (absolute Time in Pregroove) о носителях CD-R или CD-RW. С этой опцией, cdrecord будет пытаться получить информацию ATIP. Если в действительности приводы не поддерживают считывание информации ATIP, то может получиться так, что вам выведется уменьшенный набор данных, или вообще ничего не покажется. Только ограниченное количество приводом, совместимых с MMC поддерживает чтение информации ATIP.

    Если cdrecord может получить время начала записи lead-in для первой сессии, то он попытается декодировать его и вывести информацию о производителе носителя.

    -fix
    Диск будет просто завершен (fix), то есть будет записана TOC для CD-R. Это может использоваться в случаях, если по каким-то причинам диск был записан, но не завершен. Эта опция сейчас не работает со старыми приводами TEAC (CD-R50S и CD-R55S).
    -nofix
    Не завершать диск после записи треков. Может использоваться для поэтапного создания музыкальных дисков. Незавершенный диск не сможет использоваться в приводах "не-CD-RW", но существует несколько типов аудио CD-плейеров, умеющих понимать и воспроизводить такие диски.
    -waiti
    Ожидать, что появятся доступные данные на стандартном входе, перед попыткой активации драйвера SCSI. Это позволяет cdrecord считывать данные со входа даже при записи дополнительных сессий на много-сессионный диск. При записи другой сессии на много-сессионный диск mkisofs требует прочтения предыдущей сессии с устройства перед записью результата своей работы. Это может быть сделано, если cdrecord одновременно откроет драйвер SCSI.
    -load
    Загружает носитель в привод и завершает работу. Работает только при наличии механизма загрузки, но может быть полезным при использовании переносчика дисков Kodak.
    -eject
    Выгружает носитель после завершения работы. Некоторым устройствам (например Philips) требуется явное указание команды на извлечение носителя после записи. На таких приводах создание настоящего диска сразу после выполнения тестового создания -dummy не сработает.
    speed=#
    Устанавливает фактор скорости процесса записи в #. # является целым числом, представляя множитель для скорости воспроизведения музыкальных дисков (то есть около 150Кб/с для CD-ROM и около 172Кб/с для CD-Audio). Если не указана опция speed , то cdrecord попытается получить значение скорости из переменной окружения CDR_SPEED . Если ваш привод выводит ошибки при указании speed=2 или speed=4, то попытайтесь указать опцию speed=0.
    blank=type
    Очистка диска CD-RW и завершение работы, или очистка диска CD-RW перед записью. Тип очистки может быть таким:
    help
    Показать список возможных типов очистки.
    all
    Очистить весь диск полностью. Это может занять длительное время.
    fast
    Быстро и минимально зачистить диск. Это достигается уничтожением только записей PMA, TOC и pregap.
    track
    Очистить только трек.
    unreserve
    Разрезервировать зарезервированный трек.
    trtail
    Очистить конец трека.
    unclose
    Открыть последнюю (закрытую) сессию.
    session
    Очистить последнюю сессию.
    Если опции используются вместе с флагом -force , то можно будет очистить диски CD-RW, никаким другим образом больше не очищаемые. Заметим, что нужно указать blank=all так-как некоторые приводы не будут продолжать работу с некоторыми типами плохих дисков CD-RW. Заметим также, что cdecord пытается работать максимально эффективно с установленным флагом -force , но в конечном итоге успешная очистка диска зависит от производителя и параметров привода.
    fs=#
    Установить размер fifo (кольцевого буфера) в #. Можно использовать метод, как и в dd(1), sdd(1) или star(1). Число, представляющее размер, берется в байтах, если не указано другое. Если за числом указан символ `b', `k', `m', `s' или `f', то размер умножается на 512, 1024, 1024*1024, 2048 или 2352. Если размер состоит из чисел, разделенных `x' или `*', то берется число, равное их произведению. Таким образом, fs=10x63k будет определять размер fifo в 630 килобайт.

    Размер, указанный в аргументе fs= включает в себя разделяемую память, требуемую для администрирования. По меньшей мере это одна страница памяти. Если не указана опция fs=, то cdrecord будет пытаться получить размер fifo из переменной окружения CDR_FIFOSIZE . В текущий момент размер fifo по умолчанию равен 4 Мб.

    fifo используются для ускорения процесса записи. Это позволяет перенаправлять данные из mkisofs прямо в cdrecord. Если fifo активно и используется перенаправление из mkisofs в cdrecord при создании дисков, то cdrecord не будет выполнять никаких действий с диском, пока mkisofs не закончит свою работу. Рекомендуемый размер буфера fifo находится в диапазоне от 4 до 32 мегабайтов. Для простоты определения размера буфера fifo можно устанавливать его в размер внутреннего буфера привода CD-ROM, но не больше, чем половина оперативной памяти компьютера. Если размер буфера fifo слишком велик, то статистика определит низкий уровень заполненности буфера и выведет ошибку. Неразумно использовать слишком много пространства для fifo. Если требуется более 8 Мб для записи диска на не загруженной работой машине, то либо существуют проблемы с настройками оборудования, либо у вас некорректны программные настройки. Архитектура sun4c (например, Sparcstation-2) имеет разбивку страниц MNY для элементов таблицы по 16Мб на процесс. Поэтому использование более 14 Мб для fifo приведет к тому, что операционная система будет больше времени уделять постоянной перезагрузке таблиц MMU. В новых машинах от Sun, не имеющих таблиц MNU, нет таких проблем. Для PC-совместимых машин подобной информации нет.

    Если вы наблюдаете проблемы с незаполнением буфера, или видите fifo empty count, равное нулю, то у вас проблемы с оборудованием. В этом случае важен размер буфера fifo.

    dev=target
    Устанавливает устройство SCSI для записи, смотри примечания выше. Типичным определением устройства будет являться dev=6,0 . Если вместе с числовыми определениями привода должно быть передано имя файла, то оно будет зависеть от реализации. Корректное имя файла в этом случае может быть найдено в руководстве по операционной системе. На системах FreeBSD без поддержки CAM вам понадобится использовать управляющее устройство (например, /dev/rcd0.ctl). В этом случае корректными параметрами устройства могут быть dev=/dev/rcd0.ctl:@ .

    В Linux диски, присоединенные к адаптеру параллельного порта, размечены по виртуальной шине SCSI. Разные адаптеры соответствуют разным точкам назначения на этой виртуальной шине SCSI.

    Если не указана опция dev то cdrecord попытается получить имя устройства из переменной окружения CDR_DEVICE.

    Если аргумент к опции dev= не содержит символов ',', '/', '@' or ':', то он интерпретируется как метка имени, которую можно найти в файле /etc/cdrecord.conf (смотрите раздел ФАЙЛЫ).

    timeout=#
    Устанавливает таймер окончания действия команд SCSI по умолчанию в # секунд. Таймер окончания действия команд SCSI по умолчанию является максимально допустимым временем для отправки команд SCSI. Если команда SCSI выводит ошибку окончания таймера, то возможно стоит увеличить значение таймера окончания действия команд SCSI. Если команда корректно работает с увеличенным таймером, то сообщите об этой ситуации автору программы, как об ошибке. Если не указана опция timeout то по умолчанию используется значение таймера в 40 секунд.
    driver=name
    Позволяет использовать устройство name, указанное пользователем. Для получения списка возможных драйверов используйте команду driver=help. Смысл этой опции заключается в том, что она позволяет пользователю использовать cdrecord с приводами, похожими на поддерживаемые, но не сразу распознаваемые cdrecord. Используйте эту опцию максимально осторожно. Если будет использован некорректный тип привода, то возможно создание поврежденных дисков. Как минимум могут возникнуть проблемы с использованием опций -speed или -dummy.

    В списке существуют две особых записи драйвера: cdr_simul и dvd_simul. Эти записи предназначены для проведения проверочных тестов на любой скорости, или тестов для приводом, не поддерживающих опцию -dummy. Виртуальные драйвера реализуют привод с буфером в 1Мб, изменяемый через переменную окружения CDR_SIMUL_BUFSIZE. Виртуальный драйвер корректно эмулирует даже состояние внезапного опустошения буфера. Если присутствует опция -dummy то симуляция записи не прерывается в случае опустошения буфера.

    driveropts=option list
    Определяет опции, специфичные для драйвера. Опции задаются списком, разделяются запятыми. Для получения списка корректных опций используйте driveropts=help вместе с опцией -checkdrive . На текущий момент только опция burnproof реализована с поддержкой записи "Buffer Underrun Proof" с приводами, использующих технологию Sanyo BURN-Proof.

    -checkdrive
    Проверка привода на наличие диска внутри и завершение работы. Если приводя является известным, то cdrecord завершит работу с кодом 0.
    -prcap
    Выводит список возможностей для приводом, совместимых с SCSI-3/mmc, получаемый со страницы режимов 0x2A. Значения kB обозначают 1000 байтов (килобайт), значения KB обозначают 1024 байтов (Килобайт).
    -inq
    Сделать запрос на привод, вывести информацию и завершить работу.
    -scanbus
    Просканировать все устройства SCSI на всех шинах SCSI и вывести итоговую информацию. Эта опция полезна для обнаружения неизвестного адреса привода SCSI в системе. Выводимые как метки числа рассчитываются, как: bus * 100 + target
    -reset
    Попытка сбросить шину SCSI, на которой расположен привод. Не работает на некоторых системах.
    -ignsize
    Игнорировать известный размер носителя. Используйте опцию максимально осторожно, опция предназначена только для отладки, она не предназначена для записи дисков размером больше номинальной емкости.
    -useinfo
    Использовать файлы *.inf для переопределения параметров музыки. Если используется эта опция, то информация размера pregap считывается из файлов *.inf, ассоциированного с файлом, содержащим аудио данные для трека.
    defpregap=#
    Устанавливает размер pre-gap по умолчанию для всех треков, исключая первый. Эта опция имеет значение только с приводами TEAC при создании дисков методом track-at-once без двухсекундной задержки перед каждым треком.
    Эта опцию в будущем, возможно, уберут.
    -packet
    Устанавливает режим пакетной записи Packet . Это экспериментальный параметр.
    pktsize=#
    Устанавливает размер пакета в #, принудительно управляя режимом пакетной записи. Это экспериментальный параметр.
    -noclose
    Не закрывать текущий трек, полезно только в режиме пакетной записи. Это экспериментальный параметр.
    mcn=med_cat_nr
    Определить номер каталога Media Catalog Number диска в med_cat_nr.

     

    ОПЦИИ ТРЕКОВ

    Опции трека могут быть указаны вместе с именами файлов треков.

    isrc=ISRC_number
    Определить число International Standard Recording Number для следующего трека в ISRC_number.
    index=list
    Определить индексный список для следующего трека. Список является перечислением номеров, разделяемых запятой. Первый элемент в списке должен содержать 0, следующие номера должны увеличиваться (эти числа обозначают 1/75 часть секунды) и обозначать точки начала собственно индексов. Индексный список в виде: 0,7500,15000 определяет первый индекс в начало трека, второй - в 100 секундах от начала трека, третий - в 200 секундах от начала трека.
    -audio
    Если есть этот флаг, то все треки за ним записываются в формате CD-DA (похожем на Red Book). Файлы с данными для этих треков должны содержать 16-битный цифровой стереозвук качеством в 44100 сэмплов/сек. Порядок байтов должен быть следующим: MSB левый, LSB правый, MSB правый, LSB правый, MSB левый и т.д. Размер трек должен быть кратен 2352 байтам. Нельзя размещать основной образ музыкального трека на неформатированном диске , так как данные будут считываться блоками, кратными 2152 байтам во время процесса записи.

    Если файл имеет расширение .au или .wav то предполагается, что это файл в формате структурированных аудио данных. Cdrecord предполагает, что в этом случае файл является звуковым файлом Sun или файлом .wav от Microsoft и извлекает аудио данные из файлов, пропуская начальные заголовки. Во всех других случаях cdrecord будет работать корректно только если в файлах нет начальных (не относящихся к музыке) заголовков. Так как почти все структурированные аудио файлы не имеют размер, кратный целому числу блоков (по 1/75 секунды), то часто требуется указывать еще и опцию -pad. cdrecord распознает, что данные в файлах .WAV хранятся в порядке байтов Intel (little-endian), и будет автоматически менять местами байты в данных, если проигрыватель требует данные в порядке байтов big-endian. Cdrecord откажется обрабатывать любые аудио файлы, не соответствующие требованиям Red Book для 16-битного стереозвука в кодировке PCM качеством 44100 сэмплов/с.

    Использование других форматов структурированных аудио данных в качестве входящих данных для cdrecord срабатывает только если данные соответствуют структурам, описанным выше (данные raw pcm в порядке байтов big-endian). Однако, если форматы данных содержат заголовок, то в начале трека вы услышите щелчок.

    Если не указаны ни -data ни -audio, то cdrecord по умолчанию устанавливает опцию -audio для всех имен файлов, оканчивающихся на .au или на .wav и устанавливает опцию -data для всех остальных файлов.
    -swab
    Если присутствует этот флаг, то аудио данные считаются в порядке байтов little-endian. Некоторые типы приводов, например Yamaha, Sony и новые приводы SCSI-3/mmc требуют аудио данные в порядке байт little-endian, в то время как другие приводы требуют представления аудио данных в порядке байтов big-endian (в сетевом порядке), обычно используемого протоколом SCSI. Cdrecord распознает требуемый приводу формат аудио данных (big- или little-endian), и соответственно предоставляет ему данные в нужном формате. Вам нужно всего лишь указать флаг -swab если ваш поток данных имеет порядок байтов Intel (little-endian).

    Заметим, что подробный вывод cdrecord покажет вам потребность в смене порядка байтов входящих данных. Cdrecord не покажет вам, был ли флаг -swab применен для трека.

    -data
    Если указан этот флаг, то все последующие треки записываются в формате CD-ROM mode 1 (Yellow Book). Данные кратны 2048 байтам. Файл с треком данных должен содержать образ файловой системы в формате ISO-9660 или Rock Ridge (смотрите руководство по mkisofs для более подробной информации). Если трек данных является образом файловой системы ufs то размер ее части должен быть установлен в 2Кб или более для разрешения приводам с размером сектора 2Кб считывать данные.
    По умолчанию считается определенным флаг -data, если только не указаны другие флаги.
    Если не указаны ни -data,ни -audio,то cdrecord по умолчанию определяет флаг -audio для всех имен файлов, имеющих расширение .au или .wav и определяет флаг -data для всех остальных файлов.
    -mode2
    Если указан этот флаг, то все следующие треки будут записаны в формате CD-ROM mode 2 . Данные кратны 2048 байтам.
    -xa1
    Если указан этот флаг, то все следующие треки будут записаны в формате CD-ROM XA mode 1 . Данные кратны 2048 байтам.
    -xa2
    Если указан этот флаг, то все следующие треки будут записаны в формате CD-ROM XA mode 2 . Данные кратны 2048 байтам.
    -cdi
    Если указан этот флаг, то все следующие треки будут записаны в формате CDI . Данные кратны 2048 байтам.
    -isosize
    Использовать размер файловой системы ISO-9660 в качестве размера следующего трека. Эта опция необходима, если вы хотите считать образ трека с неформатированного раздела диска или с исходного образа на компакт диске. В первом случае опция -isosize нужна для ограничения размера диска до размера файловой системы ISO. Во втором случае опция -isosize нужна для предотвращения чтения программой cdrecord двух блоков, добавляемых каждый приводом в режиме track-at-once. Эти два блока не могут быть считаны и могут привести к ошибке незаполнения буфера, что приведет к созданию некорректной копии диска. Не используйте опцию, если cdrecord считывает данные трека с stdin. Эта опция в данный момент не может использоваться для определения размера файловой системы, если используется режим записи нескольких треков.
    -pad
    Если трек является обычным треком данных, то в конец его и всех последующих секторов будут добавлены 15 секторов, заполненные нулями. В этом случае опция -pad переопределяется опцией padsize=. Однако, она будет оставаться эквивалентом для padsize=15s. Если опция -pad ссылается на музыкальный трек, то cdrecord дополнит аудио данные до размера, кратного 2352 байтам. Дополнение аудио данных выполняется двоичными нулями, что соответствует в музыкальном треке полной тишине.

    -pad имеет силу, пока не отменено опцией -nopad.

    padsize=#
    Устанавливает размер данных, добавляемых к следующему треку в #. Противоположно по поведению опции -pad, значения для padsize= сбрасывается в ноль для каждого нового трека. Смотрите опцию fs= для списка возможных аргументов. Используйте эту опцию, если ваш привод не умеет считывать последние сектора треков, или если вы хотите считывать диск на системе Linux с файловой системой ISO-9660 с ошибкой упреждающего чтения. Если для трека данных используется пустой файл, то эта опция может использоваться для создания диска, полностью заполненного дополнением.
    -nopad
    Не дополнять последующие треки - по умолчанию.
    -shorttrack
    Разрешает всем последующим трекам нарушить правило длины трека Read Book, требующее минимальной длины трека в 4 секунды. Эта опция полезна только при использовании режима DAO. Не все приводы поддерживают эту возможность. Привод должен уметь воспринимать итоговый список CUE.
    -noshorttrack
    Восстанавливает правила длины трека Red Book. Минимальная длина треков равна 4 с.
    pregap=#
    Устанавливает размер pre-gap для следующего трека. Эта опция в данный момент имеет значение только для приводов TEAC при создании дисков методом track-at-once, без двух секунд тишины перед каждым треком.
    Эта опция в будущем исчезнет.
    -preemp
    Если установлен этот флаг, то все элементы TOC для последовательных аудио треков будут показывать, что аудио данные были сэмплированы с предискажением 50/15 мс. Однако, данные не изменяются в процессе передачи из файла на диск. Эта опция не влияет на треки данных.
    -nopreemp
    Если указан этот флаг, то все записи TOC для последующих аудио треков будут помечены, как созданные из линейных последовательных данных. По умолчанию этот флаг считается установленным.
    tsize=#
    Если исходный образ для следующего трека хранится на неформатированном диске, то используйте эту опцию для указания корректного количества данных на диске. Если образ для следующего трека хранится в обычном файле, то размер этого файла определяет длину нового трека. Если трек содержит образ файловой системы ISO 9660, то используйте опцию -isosize для определения размера образа файловой системы.
    В режиме Disk-at-Once, а с некоторыми приводами, использующих интерфейс программирования TEAC, также и в режиме Track-at-Once cdrecord должен знать размер каждого трека перед записью всего диска. Теперь cdrecord проверяет это и отменяет запись. Если это случается, то вам необходимо исполнить mkisofs -print-size перед этим и использовать вывод как аргумент для опции tsize= для cdrecord.
    Смотрите опцию fs= для более подробной информации о возможных аргументах.

     

    ПРИМЕРЫ

    Для всех приводимых примеров считаем, что привод присоединен к первичной шине SCSI компьютера. Идентификатор SCSI target id установлен в 2.

    Для записи на чистый диск с двойной скоростью, используя данные из файла cdimage.raw:


        cdrecord -v speed=2 dev=2,0 cdimage.raw

    Для создания образа файловой системы ISO 9660 с расширениями Rock Ridge:


        mkisofs -R -o cdimage.raw /home/joerg/master/tree

    Для проверки файла перед его записью на диск в Solaris:


        mount -r -F fbk -o type=hsfs /dev/fbk0:cdimage.raw /mnt

    В ОС Linux:


        mount cdimage.raw -r -t iso9660 -o loop /mnt

    После этого проверить:

        ls -lR /mnt

        umount /mnt

    Если критична общая скорость работы системы, а структура файловой системы не слишком сложна, то можно запускать cdrecord без создания образа файловой системы ISO 9660. Просто перенаправьте вывод:


        mkisofs -R /master/tree | cdrecord -v fs=6m speed=2 dev=2,0 -

    Рекомендуемый минимальный размер буфера fifo для работы этого перенаправления равен 4Мб. Так как по умолчанию размер буфера равен 4Мб, то опцию fs= нужно использовать только если вы хотите использовать другой размер буфера. Если ваша система перегружена, то запустите mkisofs отдельно. Для повышения приоритета mkisofs замените команду


        mkisofs -R /master/tree
    на

        priocntl -e -c RT -p 59 mkisofs -R /master/tree

    на Solaris и на


        nice --18 mkisofs -R /master/tree

    в операционных системах, не имеющих системы изменения приоритета, совместимого с UNIX International .

    Cdrecord запускается с приоритетом 59 на Solaris, поэтому mkisofs нужно запускать с приоритетом не больше 58. На других системах mkisofs нужно запускать не меньше чем с приоритетом nice --18.

    Процесс создания компакт диска без образа файловой системы на диске проверялся на Sparcstation-2 с приводом Yamaha CDR-400. При записи на скорости 4х процесс нормально отработал, при этом машина в целом была не загружена заданиями. Хорошая быстрая машина сможет писать на скорости 4х и при загруженной работой машине.

    Для записи простого диска CD-DA (музыкального диска) на скорости 1х, где каждый трек содержится в файлах с именами track01.cdaudio, track02.cdaudio, и т.п., используйте команду:


        cdrecord -v speed=1 dev=2,0 -audio track*.cdaudio

    Для проверки возможности записи на скорости 2х в примере выше, используйте опцию dummy:


        cdrecord -v -dummy speed=2 dev=2,0 -audio track*.cdaudio

    Для записи диска в комбинированном режиме с файловой системой ISO 9660 с образа cdimage.raw для первого трека, а остальных треков из файлов track01.cdaudio, track02.cdaudio, и т.п., используйте команду:


        cdrecord -v -dummy dev=2,0 cdimage.raw -audio track*.cdaudio

    Для работы с приводами, которым нужно сообщать размер трека перед началом записи, сначала исполните:


        mkisofs -R -q -print-size /master/tree

    а затем исполните


        mkisofs -R /master/tree | cdrecord speed=2 dev=2,0 tsize=XXXs -

    где XXX заменяется на вывод данных из предыдущего запуска mkisofs.

    Для копирования музыкального диска самым тщательным и аккуратным образом, сначала исполните


        cdda2wav -v255 -D2,0 -B -Owav

    и затем исполните


        cdrecord -v dev=2,0 -dao -useinfo  *.wav

     

    ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ

    CDR_DEVICE
    Может содержать идентификатор устройства, подходящий для вызова из транспортной библиотеки SCSI или метку в файле /etc/cdrecord.conf.
    CDR_SPEED
    Определяет скорость записи по умолчанию (также смотрите опцию -speed).
    CDR_FIFOSIZE
    Определяет размер буфера FIFO по умолчанию (также смотрите опцию fs=#).

     

    ФАЙЛЫ

    /etc/cdrecord.conf
    Для следующих опций могут быть определены значения по умолчанию в файле /etc/cdrecord.conf. Например: CDR_FIFOSIZE=8m или CDR_SPEED=2
    CDR_DEVICE
    Может содержать идентификатор устройства, подходящий для вызова из транспортной библиотеки SCSI или метку в файле /etc/cdrecord.conf, позволяющую определить привод в системе.
    CDR_SPEED
    Определяет скорость записи по умолчанию (также смотрите опцию -speed).
    CDR_FIFOSIZE
    Определяет размер буфера FIFO по умолчанию (также смотрите опцию fs=#).
    Любые другие метки являются идентификаторами для разных приводов
    в системе. Такой идентификатор не может содержать в названии символов ',', '/', '@' or ':'.

    Каждая строка за меткой содержит разделенный символами табуляции TAB список элементов. На данный момент они воспринимаются так: идентификатор привода SCSI ID, скорость по умолчанию для привода и размер буфера FIFO по умолчанию. Значения speed и fifosize могут быть установлены в -1 для указания cdrecord на использование общих глобальных настроек по умолчанию. Обычно строки выглядят так:

    teac1= 0,5,0   4       8m

    yamaha= 1,6,0  -1      -1

    Эти строки указывают cdrecord на привод teac1 на шине scsibus 0, target 5, lun 0 со скоростью записи 4х и размер буфера FIFO 8Мб. Второй привод находится на шине scsibus 1, target 6, lun 0 со скоростью записи привода и размером буфера FIFO по умолчанию.

     

    СМ. ТАКЖЕ

    cdda2wav(1), readcd(1), scg(7), fbk(7), mkisofs(8).

     

    ЗАМЕЧАНИЯ

    В системе Solaris вам нужно остановить управление томами, если вы хотите использовать нейтрализацию неисправностей USCSI для кода транспорта SCSI. Даже такие вещи, как cdrecord -scanbus не будут работать при активном управлении томами.

    Диски, созданные в режиме Track At Once не подходят как мастер-диски для фабричного производства дисков. Для записи таких дисков используйте опцию disk at once. Тем не менее диски, записанные в режиме Track At Once будут нормально воспроизводиться во всех проигрывателях дисков. Некоторые старые проигрыватели просто будут воспроизводить двухсекундный щелчок между аудио треками.

    Минимальный размер трека равен 4 секундам или 300 секторов. Если вы записываете трек размером менее этих значений, то привод добавит в конец трека пустые дополнения. Это не является ошибкой, даже если появится сообщение об ошибке SCSI.

    Cdrecord тестировался на обновленных приводах Philips CDD-521 на скорости 1х и 2х на SparcStation 20/502, никаких проблем не выявлено, более медленные системы также должны нормально работать. Более новые приводы Philips/HP/Plasmon/Grundig, а также Yamaha CDR-100 и CDR-102 также должны работать. Plasmon RF-4100 работает, но не проверялась запись много-сессионных дисков. Не обновленные Philips CDD-521 работать не будут. Sony CDU-924 проверялся, но не поддерживает аппаратно режим XA-mode2. Приводы sony не могут создавать корректные много-сессионные диски. Ricoh RO-1420C работает, но иногда проявляются проблемы при использовании скорости speed=2, в таких случаях попробуйте указать speed=0.

    Yamaha CDR-400 и все новые приводы, соответствующие формату SCSI-3/mmc поддерживают и обычные, и много-сессионные диски.

    Обязательно проведите несколько тестов на всех поддерживаемых скоростях вашего привода с помощью опции -dummy при использовании cdrecord на новой или неизвестной системе. Дальнейшее создание дисков будет идти в режиме реального времени. NFS не всегда передает данные с требуемой и постоянной скоростью. Если вы хотите использовать cdrecord с образами дисков, расположенных на подключенных сетевых ресурсах NFS, то убедитесь в достаточно большом размере буфера fifo. cdrecord использовался на средней загрузке системы SS20/502 и даже для записи на скорости 4х на серьезно загруженном Sparcstation-2, но все равно рекомендуется не загружать систему дополнительными и лишними заданиями во время записи дисков. Если вы хотите быть уверенными в том, что не случится ошибки незаполнения буфера, то используйте команду

    cdrecord -dummy dev=2,0 padsize=600m /dev/null

    для создания диска, полностью созданного из случайных данных. Cdrecord нужно исполнять от суперпользователя root для получения доступа к устройствам /dev/scg? и для возможности блокировки себя в памяти.

    Если вы не хотите выделять пользователю права суперпользователя, то cdrecord может легко исполняться через suid root. Это позволяет всем пользователям или группе пользователей без привилегий суперпользователей использовать cdrecord. cdrecord в этом случае проверяет возможность пользователя на чтение указанных файлов. Для предоставления всем пользователям возможность использования cdrecord, исполните следующие команды:

           chown root /usr/local/bin/cdrecord

           chmod 4711 /usr/local/bin/cdrecord

    Для выделение отдельной группе пользователей доступа к cdrecord исполните:

           chown root /usr/local/bin/cdrecord

           chgrp cdburners /usr/local/bin/cdrecord

           chmod 4710 /usr/local/bin/cdrecord

    и добавьте группу cdburners в вашу систему.

    Никогда не выдавайте права на запись для обычных пользователей на устройства /dev/scg? если только вы не хотите, чтобы все считывали/писали/форматировали все ваши диски.

    Не стоит подключать старые диски, не поддерживающие подключение/отключение либо к шине SCSI, присоединенной к приводу, либо к диску с исходными данными.

    Любой компакт диск не может содержать более 99 треков.

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

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

    Более подробную информацию о наборе команд SCSI для привода HP CD-Recorder ищите тут:

           http://www.hp.com/isgsupport/cdr/index.html

    Если у вас есть информация или руководства по командам SCSI для приводов, не поддерживаемый cdrecord в данный момент - обратитесь, пожалуйста, к автору cdrecord.

    Привод Philips CDD 521 (даже в обновленной версии) все равно имеет несколько заводских ошибок. Некоторые из них приводят к перезапуску привода и машины.

    При использовании cdrecord с некорректным Linux SCSI generic driver. Помните, что cdrecord использует трюк с эмуляцией функциональности драйвера scg. К сожалению, сам по себе драйвер sg в Linux имеет несколько проблем:

    *
    Не умеет распознавать, может ли вообще быть отправлена команда SCSI.
    *
    Не умеет получать байт статуса SCSI. Cdrecord по этой причине не может создать сообщение о сбое команд SCSI в некоторых ситуациях.
    *
    Не умеет получать настоящий счетчик передач DMA. Cdrecord не может выдать вам информацию о наличии остатка счетчика DMA.
    *
    Не умеет получать число байтов, корректных в данных автоопределения. Cdrecord не может сообщить вам, вообще передает ли устройство sense данные.
    *
    Переносит данные при автозапросе sense (CCS/SCSI-2/SCSI-3 требует >= 18).

    Процент заполнения fifo вычисляется сразу после записи блока данных на привод. Поэтому, никогда не будет 100% заполнения буфера fifo, если он находится в потоковом режиме.

     

    ДИАГНОСТИКА

    У вас есть 9 секунд для нажатия ^C для отмены работы cdrecord после того, как вы увидите сообщение:

    Starting to write CD at speed %d in %s mode for %s session.

    Обычное сообщение об ошибках для команд SCSI выглядит так:

    cdrecord: I/O error. test unit ready: scsi sendcmd: no error
    CDB:  00 20 00 00 00 00
    status: 0x2 (CHECK CONDITION)
    Sense Bytes: 70 00 05 00 00 00 00 0A 00 00 00 00 25 00 00 00 00 00
    Sense Key: 0x5 Illegal Request, Segment 0
    Sense Code: 0x25 Qual 0x00 (logical unit not supported) Fru 0x0
    Sense flags: Blk 0 (not valid)
    cmd finished after 0.002s timeout 40s
    

    Первая строка выдает информацию о передаче команды. Текст за первым двоеточием выдает сообщение об ошибке для системного вызова со стороны ядра. Обычно оно имеет вид: I/O error, если только не происходят другие ошибки. Следующее слово содержит короткое описание для той команды SCSI, что выдала ошибку. Остаток строки сообщает о проблемах передачи команды по шине SCSI. fatal error означает что передать команду не получилось (например, такого устройства вообще нет среди адресов SCSI).

    Вторая строка выдает блок описания команды SCSI для сбойной команды.

    Третья строка выдает информацию о коде статуса SCSI, возвращаемого командой, если передача команды успешно завершилась. Это сообщение об ошибке от устройства SCSI.

    Четвертая строка является шестнадцатеричным дампом автозапроса для команды.

    Пятая строка является сообщением об ошибке для sense key, сопровождаемая номером единственного корректного сегмента, если командой была команда copy. Если сообщение об ошибке напрямую не связано с текущей командой, то в конец добавляется текст deferred error.

    Шестая строка является текстом сообщения для sense code и для определителя sense. Если тип устройства известен, то данные sense декодируются из таблиц в scsierrs.c . Текст сопровождается значением ошибки для поля.

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

    Восьмая строка сообщает о таймере для этой команды и времени до окончания работы.

    Следующее сообщение не является сообщением об ошибке:

    Track 01: Total bytes read/written: 2048/2048 (1 sectors).
    cdrecord: I/O error. flush cache: scsi sendcmd: no error
    CDB:  35 00 00 00 00 00 00 00 00 00
    status: 0x2 (CHECK CONDITION)
    Sense Bytes: F0 00 05 80 00 00 27 0A 00 00 00 00 B5 00 00 00 00 00
    Sense Key: 0x5 Illegal Request, Segment 0
    Sense Code: 0xB5 Qual 0x00 (dummy data blocks added) Fru 0x0
    Sense flags: Blk -2147483609 (valid)
    cmd finished after 0.002s timeout 40s
    

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

    НАЙДЕННЫЕ ОШИБКИ

    Cdrecord имеет больше опций, чем ls.

    Cdrecord в данный момент только предупреждает в случае, если входящие данные переполнят записываемый диск. Если вы при этом сразу не отмените выполнение команды, то результаты будут непредсказуемыми.

    Должна быть опция для записи номеров индексов для музыкальных треков.

    Должна быть опция восстановления для дисков, во время записи которых произошли сбои питания и процесс записи которых был прерван.

     

    БЛАГОДАРНОСТИ

    Bill Swartz    (Bill_Swartz@twolf.com)

    За помощь в работе с драйверами TEAC
    Aaron Newsome   (aaron.d.newsome@wdc.com)

    За разрешение на разработку поддержки приводов Sony
    Eric Youngdale  (eric@andante.jic.com)

    За поддержку mkisofs
    Gadi Oxman      (gadio@netvision.net.il)

    За подсказки по стандарту ATAPI
    Finn Arne Gangstad      (finnag@guardian.no)

    За первую реализацию FIFO.
    Dave Platt      (dplatt@feghoot.ml.org)

    За создание экспериментального пакета поддержки записи,
    за поддержку первой реализации очистки CD-RW дисков, первого декодера файлов .wav и многие другие советы по cdrecord.
    Chris P. Ross (cross@eng.us.uu.net)

    За первую реализацию транспорта BSDI SCSI.
    Grant R. Guenther (grant@torque.net)

    За создание первой реализации транспорта для параллельного порта для Linux.
    Kenneth D. Merry (ken@kdm.org)

    За поддержку порта CAM для FreeBSD вместе с Michael Smith (msmith@freebsd.org)

     

    СПИСКИ РАССЫЛКИ

    Если вы хотите принять активное участие в разработке cdrecord, то можете подписаться на список рассылки, отправив письмо на:
    
            other-cdwrite-request@lists.debian.org
    
    
    включив в тело письма слово subscribe Электронный адрес списка рассылки:
    
            other-cdwrite@lists.debian.org
    

     

    АВТОРЫ

    Joerg Schilling
    Seestr. 110
    D-13353 Berlin
    Germany
    

    Дополнительную информацию можно найти:
    http://www.fokus.gmd.de/usr/schilling/cdrecord.html

    Если у вас есть вопросы, отправляйте их на:

    cdrecord-support@berlios.de
    или на other-cdwrite@lists.debian.org

    Если вы нашли явную ошибку, отправьте почту на:

    cdrecord-developers@berlios.de
    или на schilling@fokus.gmd.de

    Для подписки, посмотрите ссылки:

    http://lists.berlios.de/mailman/listinfo/cdrecord-developers
    или http://lists.berlios.de/mailman/listinfo/cdrecord-support


     

    Index

    НАЗВАНИЕ
    СИНТАКСИС
    ОПИСАНИЕ
    ОБЩИЕ ОПЦИИ
    ОПЦИИ ТРЕКОВ
    ПРИМЕРЫ
    ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ
    ФАЙЛЫ
    СМ. ТАКЖЕ
    ЗАМЕЧАНИЯ
    ДИАГНОСТИКА
    НАЙДЕННЫЕ ОШИБКИ
    БЛАГОДАРНОСТИ
    СПИСКИ РАССЫЛКИ
    АВТОРЫ


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру