Работа с CD/DVD : Записать, прочитать, стереть, дописать под FreeBSD CD, DVD, boot, bootable, GRUB, eltorito


Информация рассчитана в первую очередь на пользователей FreeBSD, но большая её часть справедлива и для других UNIX.

Монтируем диски и образы
Монтируем CD и DVD одинаково:

mount_cd9660 -o ro /mnt /dev/acd0

Смонтировать образ можно в две команды:

mdconfig -a -t vnode -f file.iso -u 0 -o readonly
mount -t cd9660 /dev/md0 /mnt/iso

Размонтировать аналогично:

umount /dev/md0
mdconfig -d -u 0

Часто можно встретить vn-подход, но он устарел, и его лучше не использовать.

Запись CD

Чистим CD:

burncd -f /dev/acd0 blank

Пишем первую сессию на мульти-CD:

mkisofs -J -R -input-charset koi8-r -V "$cd_label" "$src" |
cdrecord -dev=0,1,0 -tao -multi -data —

Номер устройства (в моём случае 0,1,0), можно узнать командой:

cdrecord -scanbus

Дописываем мульти-CD:

info=`cdrecord -dev=$dev -msinfo`
mkisofs -J -R -input-charset koi8-r -V "$cd_label" \
-C "$info" -dev 0,1,0 -root "$dir" "$src" |
cdrecord -dev=0,1,0 -tao -multi -data —

При этом всё дерево, находящееся в каталоге $src, окажется не в корне файловой системы диска, а в директории $dir. Обычно это как раз то, что нужно при дописывании.

Клонируем CD:

dev='0,1,0'
raw='cd.temp.raw'
readcd dev=$dev f=$raw
readcd dev=$dev -w f=$raw

Запись DVD

Чистить DVD-диски не надо.
Пишем первую сессию:

growisofs -Z /dev/cd0 \
-J -R -input-charset koi8-r \
-V "$cd_label" "$src"

Дописываем с ключом -M вместо -Z.

Ключ -dvd-compat, приводимый во множестве рецептов, закрывает диск — дописать диск будет уже нельзя.

Клонируем DVD:

dev='0,1,0'
raw='cd.temp.raw'
readcd dev=$dev f=$raw
growisofs -dvd-compat -Z /dev/cd0=$raw

Сообщения об ошибках

При записи дисков (особенно DVD) иногда можно столкнуться с сообщениями об ошибках вида:

:-[ WRITE@LBA=0h failed with SK=5h/ASC=24h/ACQ=00h]: Input/output error

Подобное сообщение может озадачить кого угодно. На самом деле в нем содержится три кода: SK, ASC и ACQ. Смысл всех кодов расшифрован на странице http://fy.chalmers.se/~appro/linux/DVD+RW/keys.txt. Например, приведённая выше комбинация означает, что вам просто следует отформатировать DVD-RW-носитель. Для этого можно использовать команду:

dvd+rw-format -blank=full /dev/cd0

После форматирования (которое может занять не один час!) диск будет записываться без всяких ошибок.

Кстати, замечено, что иногда диски DVD-RW (именно «-», а не «+») перестают дописываться. В этих случаях тоже помогает полная очистка DVD-диска.

Вторая распространённая проблема: сообщение

:-( growisofs is being executed under sudo, aborting!
See NOTES paragraph in growisofs manual page for further details.

Это сообщение возникает, когда вы работаете под sudo. Быстрое решение: удалить переменную SUDO_COMMAND.

unset SUDO_COMMAND

Про глубинные причины этого предупреждения можно почитать в руководстве. «Быстрое решение», по мнению авторов growisofs, небезопасно. Но мне оно представляется вполне приемлемым, тем более, если речь идёт о рабочей станции.

Если вы записали Video-DVD, а mplayer не хочет его проигрывать, выдавая ошибку вида:

michurin# mplayer dvd://1
MPlayer 1.0rc1-3.4.6 (C) 2000-2006 MPlayer Team
CPU: Intel(R) Pentium(R) D CPU 2.80GHz (Family: 15, Model: 4, Stepping: 7)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
Creating config file: /root/.mplayer/config

Playing dvd://1.
libdvdread: Using libdvdcss version 1.2.9 for DVD access
libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
Can't open VMG info!
File not found: '1'
Failed to open dvd://1.

Значит, скорее всего, вы забыли указать при записи опцию

-dvd-video


Комментарии запрещены.




Статистика