Для использования ZIP-устройства с интерфейсом параллельного порта во FreeBSD в ядре должно быть присутствовать устройство. Устройства ZIP для параллельного порта имеют встроенный контроллер SCSI. Драйвер vpo позволяет ядру FreeBSD работать со SCSI-контроллером ZIP-устройства через параллельный порт.
Так как драйвер vpo не входит в стандартное ядро (начиная с FreeBSD 3.2), то для использования устройства вам необходимо перестроить ядро. Процесс построения ядра подробно описан в Руководстве FreeBSD. Ниже приведена краткая последовательность шагов для включения драйвера vpo:
Запустите /stand/sysinstall и установите в вашей системе исходный код ядра.
Соберите конфигурационный файл ядра с поддержкой драйвера для устройства vpo:
# cd /sys/i386/conf # cp GENERIC MYKERNEL
Отредактируйте файл MYKERNEL, изменив строку ident на MYKERNEL и раскомментируйте строчку, описывающую драйвер vpo.
Если у вас имеется второй параллельный порт, вам может потребоваться скопировать раздел для ppc0, чтобы создать устройство ppc1. Второй параллельный порт, как правило, использует IRQ 5 и адрес 378. В конфигурационном файле требуется указать только IRQ.
Если диск с корневой файловой системой является диском с интерфейсом SCSI, то вы можете столкнуться с проблемой в последовательности обнаружения устройств, что может привести к попытке использования ZIP-устройства в качестве диска с корневой файловой системой. Это будет приводить к ошибке загрузки, пока вы не поместите корневую файловую систему FreeBSD на ваш ZIP-диск! Для этого вам нужно ''зафиксировать'' корневой диск, а именно заставить ядро ассоциировать выбранное устройство с устройством /dev/da0, то есть с корневым SCSI-диском. Затем ZIP-диск будет связан со следующим доступным SCSI-диском, например, с /dev/da1. Для того, чтобы привязать ваш SCSI-диск к устройству da0, измените строчку
device da0на
disk da0 at scbus0 target 0 unit 0
Вам может потребоваться сменить номер устройства (target) выше на SCSI ID вашего диска. Также вам нужно привязать scbus0 к вашему контроллеру. Например, если у вас установлен контроллер Adaptec® 15xx, вам нужно сменить
controller scbus0на
controller scbus0 at aha0
И наконец, раз вы редактируете конфигурационный файл ядра, вы можете заодно удалить все ненужные драйверы. Это нужно делать с большой осторожностью, и только если вы уверены во вносимых изменениях. Удаление ненужных драйверов уменьшит размер ядра, что даст больше памяти для ваших приложений. Для определения того, какие драйверы не нужны, перейдите в конец файла /var/log/messages, и поищите строчки с диагностикой "not found". Затем закомментируйте эти устройства в конфигурационном файле вашего ядра. Вы можете также изменить другие параметры для уменьшения размера и ускорения работы вашего ядра. Прочтите раздел о перекомпиляции вашего ядра для получения более полной информации.
Теперь пришло время компиляции ядра:
# /usr/sbin/config MYKERNEL # cd ../../compile/MYKERNEL # make clean depend && make all install
После того, как ядро будет перестроено, вам нужно выполнить перезагрузку. Перед тем, как это сделать, удостоверьтесь, что ZIP-устройство подключено к параллельному порту. Вы должны увидеть ZIP-устройство среди сообщений, выдаваемых при загрузке, как устройство vpo0 или vpo1, в зависимости от того, к какому параллельному порту оно подключено. Кроме того, будет указано, к какому файлу устройства был привязан ZIP-диск. Это будет /dev/da0, если в системе нет других SCSI-дисков, или /dev/da1 в случае, если ваш SCSI-диск зафиксирован в качестве корневого устройства.
Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
По вопросам, связанным с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам, связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.