Запись первого диска под Linux'омЗапись первого диска под Linux'ом
Несмотря на древний (но живущий и по сей день) стереотип о том, что Linux представляет из себя операционную систему исключительно для хакеров, записывать диски в нем особых трудностей не вызывает — пользоваться open-source приложениями, работающими под *nix, ничуть не сложнее, чем их аналогами под Windows. Так что придется еще раз попробовать развеять вышеупомянутый стереотип, наглядно продемонстрировав, как просто заниматься cd-recoding'ом в ОС Linux. Данная статья — инструкция по записи своего первого диска для новичков, постигающих основы работы в самой популярной операционной системе, основанной на UNIX.
В первую очередь необходимо проверить наличие cd-writer'а, который, как планируется, и будет записывать диски, в списке поддерживаемых Linux'ом. По информации, взятой из «CD-Writing HOWTO» за 23 июля 2000 года в этом списке находится более 200 устройств от таких производителей, как, например, Acer, HP, JVC, Memorex, Mitsubishi, Mitsumi, Panasonic, Philips, Pioneer, Samsung, Sanyo, Sony, Yamaha… Полный список можно найти на постоянно обновляемой страничке http://www.guug.de:8080/cgi-bin/winni/lsc-orig.pl или в «CD-Writing HOWTO» (раздел «1.5. Supported CD-writers»). Если обнаружилось, что cd-writer точно не поддерживается, и шансов, что его поддержка будет добавлена в ближайшее время, нет, то остается только создавать iso image диска под Linux'ом, а затем записывать его из-под другой операционной системы.
Для самого процесса записи обычно используются консольные утилиты типа cdrecord, cdwrite, cdrdao (наиболее функциональна первая, поддерживает IDE/ATAPI, Parallel Port, CD-RW, Audio CD, Data CD-ROM, Multisession…), как и для организации данных (которые затем будут помещены на диск) — mkisofs, mkhybrid, mkvcdfs (первые две поддерживают ISO 9660, RockRidge, Joliet, Multisession и т.п., а mkvcdfs предназначена для создания Video-CD).
Теперь краткое руководство к действию по записи первого диска. Сначала необходимо настроить ядро (в статье рассматривается Linux 2.4.x):
$ cd /usr/src/linux
# make menuconfig
Должны быть включены следующие опции:
Block devices --->
<*> Loopback device support
ATA/IDE/MFM/RLL support --->
IDE, ATA and ATAPI Block devices --->
<*> SCSI emulation support
SCSI support --->
<*> SCSI CD-ROM support
[*] Enable vendor-specific extensions (for SCSI CDROM)
<*> SCSI generic support
File systems --->
<*> ISO 9660 CDROM file system support
После изменений:
# make dep
# make bzImage
(Если были изменены модули, то еще: make modules && make modules_install). Получившееся ядро (/usr/src/linux/arch/i386/boot/bzImage) добавляется в конфиг LILO (если он используется в качестве загрузчика). Там же (в /etc/lilo.conf) нужно добавить следующую строчку:
append="hdc=ide-scsi"
Где "hdc" — файл cd-writer'а из /dev. Если устройств несколько, то строка будет выглядеть примерно так:
append="hdc=ide-scsi hdd=ide-scsi"
Где /dev/hdc и /dev/hdd — два cd-writer'а. Т.е. вся запись для пункта в LILO будет следующей:
image = /boot/2-4-17.img
label = linux-2.4.17
append="hdc=ide-scsi"
(image — файл к image ядра; label — заголовок.)
Запускаем LILO с обновленным конфигом:
# lilo
Затем в файл /etc/modules.conf добавляется следующее:
options ide-cd ignore=hdc
pre-install sg modprobe ide-scsi
Где "hdc" — файл cd-writer'а из /dev. Если устройств несколько, то:
options ide-cd ignore='hdc hdd'
pre-install sg modprobe ide-scsi
Где /dev/hdc и /dev/hdd — два cd-writer'а.
После проделанных манипуляций можно перезагружаться. Проверить, нормально ли теперь работает cd-writer, поможет команда:
# cdrecord -scanbus
Если ответом будет что-то вроде этого:
0,0,0 0) 'HP ' 'CD-Writer+ 9300 ' '1.0c' Removable CD-ROM
0,1,0 1) *
0,2,0 2) *
0,3,0 3) *
0,4,0 4) *
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
То все прошло успешно. Иначе можно попробовать самостоятельно подключить ide-scsi:
# /sbin/insmod ide-scsi
Если команда помогла, то добавляем ее в загрузочный скрипт. Можно приступать и к самой записи. Например, воспользуемся "xcdroast" (http://www.xcdroast.org) — GTK+-надстройкой к cdrtools, установив и запустив ее:
$ xcdroast
После запуска первым делом необходимо ее настроить в разделе «Setup». Чтобы не приходилось это делать каждый раз, сохраняем конфиг («Save configuration»). Далее «Ok» —> «Create CD» —> «Master Tracks». Из правого дерева каталогов переносим все подлежащие к записи файлы, пользуясь кнопками «Add», «Exclude», правим (если надо) настройки во вкладке « ISO9660 Options», кликаем на «Create session/image». Здесь считаем занимаемый размер (это необходимо делать каждый раз перед записью дисков) — «Calculate size». А теперь создаем ISO и сразу записываем диск — «Master and write on-the-fly». Вот, собственно, и все.