Руководство FreeBSD

         

Создание файлов устройств


Если вы работаете с FreeBSD 5.0 или старше, вы можете пропустить эту секцию. Эти версии используют

devfs(5) для выделения файлов устройств прозрачно для пользователя.

Практически все устройства в ядре имеют соответствующий файл, называемый ``node'' в каталоге /dev. Они выглядят как обычные файлы, но на самом деле это специальные ``точки входа'' в ядро, которые необходимы приложениям для доступа к устройствам. Скрипт для /bin/sh /dev/MAKEDEV, который выполняется при первой установке операционной системы, создает практически все поддерживаемые файлы устройств. Однако он не создаёт их все, таким образом, когда вы добавляете поддержку нового устройства, следует убедиться, что соответствующие файлы есть в /dev, и если их там нет, создать их. Вот простой пример:

Предположим, вы добавили поддержку привода IDE CD-ROM в ядро. Строка, которую вы добавили:

device acd0

Это означает, что вам необходимо проверить наличие файлов, название которых начинаются строкой acd0 в каталоге /dev, за которой, возможно, следует буква, например c, или предшествует r, что означает, что это ``сырое'' (raw) устройство, которое используется для прямого доступа к аппаратному устройству. Если оказывается, что таких файлов в каталоге нет, вы должны перейти в каталог /dev и набрать:

# sh MAKEDEV acd0

Когда скрипт завершит работу, вы увидите, что файлы acd0c и racd0c созданы, соответственно скрипт отработал корректно.

Для звуковых карт нижеследующая команда создает необходимые файлы:

# sh MAKEDEV snd0

Замечание: Если вы создаете файлы устройств для таких устройств, как звуковые карты и если другие люди имеют доступ к вашей машине, было бы не лишним защитить их от использования извне при помощи добавления их в файл /etc/fbtab. За дальнейшей информацией обратитесь к странице руководства fbtab(5).

Следуйте этой простой процедуре для любых других устройств, которые отсутствуют в ядре GENERIC и которые не имеют соответствующих файлов в /dev.

Замечание: Все контроллеры SCSI используют одинаковый набор файлов в /dev, поэтому вам не нужно создавать их. Также, сетевые карты и псевдоустройства SLIP и PPP не имеют вхождений в /dev, поэтому и о них вы не должны беспокоиться.



Содержание раздела