Save 15% on Instant Deploy Bare-Metal Servers in 26 Global Markets with Coupon Code: EdgeSave

How do I create device nodes?

If you are running FreeBSD 5.0 or later you can safely skip this section. These versions use devfs to allocate device nodes transparently for the user.

Almost every device in the kernel has a corresponding node entry in the /dev directory. These nodes look like regular files, but are actually special entries into the kernel which programs use to access the device. The shell script /dev/MAKEDEV, which is executed when you first install the operating system, creates nearly all of the device nodes supported. However, it does not create all of them, so when you add support for a new device, it pays to make sure that the appropriate entries are in this directory, and if not, add them. Here is a simple example:

Suppose you add the IDE CD-ROM support to the kernel. The line to add is:

device acd0

This means that you should look for some entries that start with acd0 in the /dev directory, possibly followed by a letter, such as c, or preceded by the letter r, which means a “raw” device. It turns out that those files are not there, so you must change to the /dev directory and type:

# sh MAKEDEV acd0

When this script finishes, you will find that there are now acd0c and racd0c entries in /dev so you know that it executed correctly.

For sound cards, the following command creates the appropriate entries:

# sh MAKEDEV snd0

Share on Twitter
Share on Facebook