Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Новости ИТ Программы Книги Games   Обои   Экспорт RSS E-Books
 
Поиск по сайту

TOP-10 программ
Symantec Norton Ghost 9.0
Partition Magic 8.0.2 Pro
Xilisoft 3GP Video Converter v3.1.7.0616b
Norton AntiVirus 2005
Xilisoft 3GP Video Converter v2.1.52.831b
Антивирус Касперского Personal 5.0.303 beta 2
RAR Password Cracker 4.12
ABBYY PDF Transformer v1.00.820
MP3 To Ringtone Gold v3.02
Windows Movie Maker 2.6
 
Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
 
 

   Операционные системы -> FreeBSD -> Запись CD-R/RW в BSD-системах


Запись CD-R/RW в BSD-системах

Когда я впервые знакомился FreeBSD, запись компактов в ней мне казаласть задачей сложной и интуитивно неясной. Однако - лишь до тех пор, пока я не попробовал это проделать. И оказалось, что, как и все во Free, это - не просто. А - очень просто. В ознаменование чего я и составил себе для памяти этот маленький HOW-TO'й. Может быть, он еще кому-нибудь пригодится. Тем более, что, за исключением одного оговоренного ниже момента, все сказанное может быть использовано в любой BSD-системе - по крайней мере, за DragonFlyBSD ручаюсь.

Запись CD-R/RW во FreeBSD никогда не требовала каких-либо специфических настроек - типа включения эмуляции SCSI через IDE (что до недавнего времени было необходимо в Linux). Хотя и такой подход не возбраняется - он позволит использовать пакет cdrtools и, главное, многочисленные графические надстройки над ним. Однако часто более простым способом выглядит прямая запись диска штатной Free'шной утилитой burncd.

Тем не менее, в любом случае запись CD-диска начинается с создания его образа. Для чего требуется программа mkisofs из все того же пакета cdrtools. В штатном комплекте FreeBSD Distributions ее нет - она устанавливается из отдельного порта или прекомпилированного бинарника (sysutils/cdrtools). В DragonFlyBSD же этот пакет входит в базовый набор, устанавливаемый при первичной инсталляции.

Собственно создание образа диска происходит здесь точно также, как и в Linux'е:

$ mkisofs -R -J -o iso_name path2data

Опция -R обеспечивает поддержку расширения стандарта ISO9660 - Rock Ridge для Unix-систем (длинные имена, множественные точки в именах файлов, атрибуты доступа и принадлежности файлов и каталогов). Опция -J - это поддержка расширения Joliet для систем семейства Windows (то есть длинные имена файлов будут видны и там). Опция -o имеет своим значением имя создаваемого iso-образа. Ну а path2data - путь к каталогу, из которого будет создаваться образ.

Перед записью образ можно смонтировать для проверки. Делается это от лица root'а. Ранее, во FreeBSD 4-й ветки, это требовало поддержки в ядре псевдо-устройства vn. Такой порядок сохранился и в DragonFly. В 5-й же ветке FreeBSD доступ к образу осуществляется через универсальное устройство /dev/md (memory disk - диска в оперативной памяти), поддержка которого включена в ядро GENERIC по умолчанию. Сначала это устройство следует сконфигурировать командой

$ mdconfig -a -t vnode -f path/iso_name

после чего возвращается

md#

где # - номер md-устройства (если оно единственное, будет md0). Собственно монтирование выполняется командой:

$ mount -t cd9660 /dev/md0 /mnt_point

Где /mnt_point - созданный заблаговременно пустой каталог (например, /mnt/iso). После этого этот каталог может быть просмотрен обычным образом, например,

$ ls /mnt/iso

Однако - только в режиме read only (то есть внести изменения в созданный образ простым копированием или удалением не удастся.

По завершении просмотра образа md-устройство следует размонтировать и удалить:

$ umount /mnt/iso;
$ mdconfig -a /dev/md0

Непосредственно запись диска выполняется утилитой burncd, которая входит в штатный комплект Distributions (то есть она доступна сразу после установки FreeBSD). Например, это можно сделать такой командой:

$ burncd -e -s max -f /dev/acd0 data iso_name fixate

Значения опций - следующие:

  • -e обеспечивает выдвижение лотка после записи,
  • -s -скорость записи (по умолчанию - 4, значение max обеспечивает максимально возможную скорость для данных привода и болванки,
  • -f - имя файла устройства (в примере - /dev/acd0),

Команда fixate указывает на фиксирование сессии (подразумевается односессионная запись). Ну а data предписывает запись диска с данными (а не аудиоCD) с образа iso_name.

У burncd есть еще несколько опций, с которыми можно ознакомиться посредством

$ man 8 burncd

В частности, полезной может быть опция -v, выводящая информацию о ходе записи. А опция -t осуществит имитацию записи, что позволяет в случае ошибки избежать порчи болванки.

Для стирания CD-RW в burncd предусмотрены команды blank (быстрая очистка оглавления диска) и erase (полная очистка диска)

$ burncd -e -f /dev/acd0 blank

или

burncd -e -f /dev/acd0 erase

соответственно. Нужно только помнить, что вторая операция займет немало времени - столько же, сколько и запись диска.

Если для целей чисто резервного копирования (например, архива вида *.tar.gz) не требуется запись дисков, доступных из других операционок, burncd можно использовать и без предварительного создания iso-образа (и, соответственно, без пакета mkisofs). Все, что для этого нужно (помимо заблаговременно созданного архива подходящего размера) - директива примерно такого вида:

$ burncd -f /dev/acd1c -s max data archive.tar.gz fixate

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

$ tar xzvf /dev/acd1c

Однако выполнить запись такого рода гораздо быстрее. Особенно значителен выигрыш во времени при записи очень большого массива данных. В этом случае их можно собрать в единый тарбалл, утилитой split разбить на фрагменты подходящего размера:

$ split --bytes=650m archive.tar.gz [PREFIX]

где в качестве префикса можно указать какое-либо мнемонически полезное значение (дату создания архива, например), после чего последовательно записать кучу образовавшихся файлов (имеющих вид [PREFIX]aa, [PREFIX]ab, и так далее) почти так же, как было сказано выше:

$ burncd -f /dev/acd1c -s max data [PREFIX]?? fixate

Восстановление данных из такого архива выполняется следующим образом. Сначала содержимое полученной стопки дисков последовательно копируется в файлы на винчестере:

$ cp /dev/acd1c path2/file#

Затем они сливаются утилитой cat в единый архив:

$ cat file1 ... file# > archive.tar.gz

который и разворачивается обычным образом.

Возможность применения burncd для резервного копирования без предварительного создания iso-образов определяет, по моему мнению, ее предпочтительность перед cdrecord. Тем не менее, и его использование в BSD-системах не возбраняется - тем более, что в этом случае возможным становится и использование графических front-end'ов типа k3b или xcdroast. Но для этого, как и в Linux'е, необходимо включить эмуляцию SCSI через IDE - так называемый CAM (Common Access Model). Этот же CAM необходим для записи DVD-дисков.

Автор: Алексей Федорчук
UNIX4all

 
Популярные книги

Технология программирования на C++. Начальный курс

Подробнее

Ремонт и обслуживание компьютера дома

Подробнее

Системное администрирование на 100 % (+CD)

Подробнее


 
Новости ИТ
08.01.2009  FreeBSD 7.1-RELEASE -- обновление операционной системы
08.01.2009  Появилась сборка Om 2008.12 для Neo FreeRunner от bytestore
08.01.2009  На T-Mobile G1 (Android) установили интерпретатор Python
08.01.2009  Apple опубликовала видеозапись доклада Филипа Шиллера на Macworld
08.01.2009  Mac Box Set - iLife, iWork и Leopard «в одном флаконе»
08.01.2009  DivX 7
08.01.2009  FileZilla 3.2.0
08.01.2009  Ноутбук HP Pavilion dv2, первый на базе Athlon Neo
08.01.2009  Замена несъемной батареи MacBook pro 17’’ обойдется в $179
08.01.2009  Подсчитали - прослезились: Intel закончила квартал даже хуже, чем ожидалось
08.01.2009  G.Skill TITAN - два быстрых SSD-накопителя типоразмера 2,5" с SATA-интерфейсом
08.01.2009  Serial ATA в этом году серьезно ускорится?
08.01.2009  Microsoft обеспечит Entourage поддержкой Exchange Web Services
08.01.2009  SanDisk Mobile Ultra 16 ГБ microSDHC и Memory Stick Micro (M2)
08.01.2009  Официальный релиз нетбука Sony VAIO P
08.01.2009  Четыре фотокомпакта Samsung
08.01.2009  Карты памяти с поддержкой Wi-Fi и YouTube
08.01.2009  Аналитики признали доклад Apple на Macworld разочаровавшим, но нашли повод для оптимизма
08.01.2009  WD представила внешние жесткие диски для Mac
08.01.2009  AMD Dragon, официально: платформа, «тягающаяся» с Nehalem, менее, чем за $900
 
Полезно

 
Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.
 
Rambler's Top100