Руководство пользователя FreeBSD Handbook

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


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

Предположим вы добавляете в ядро поддержку IDE CD-ROM. Строка, которую надо добавить: controller wcd0 Это значит, что вам надо искать записи начинающиеся с wcd0 в директории /dev, после этого, возможно, идет буква, например `c', или перед этим может быть буква 'r', которая означает `raw (сырое)' устройство. Это означает, что нужных файлов нет, поэтому надо войти в директорию /dev и выполнить команду: # sh MAKEDEV wcd0 Когда MAKEDEV закончит работу, вы увидите файлы wcd0c и rwcd0c в директории /dev, что свидетельствует о правильном выполнении скрипта.

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

Проделайте такую же процедуру для всех устройств, которых нет в ядре GENERIC и для которых нет записей в файле /etc/fbtab.

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

| |

Comments: info@citmgu.ru
Designed by Andrey Novikov
Copyright © CIT


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