Creating devices with Makedev-1.7

The MAKEDEV package contains a script for making device nodes.

Approximate build time:  0.1 SBU
Required disk space:     50 KB

Official download location for MAKEDEV (1.7):
http://downloads.linuxfromscratch.org/

For its installation MAKEDEV depends on: Bash, Coreutils.

Making devices

Note that unpacking the MAKEDEV-1.7.bz2 file doesn't create a directory for you to cd into, as the file contains only a shell script.

Install the MAKEDEV script:

bzcat MAKEDEV-1.7.bz2 > /dev/MAKEDEV
chmod 754 /dev/MAKEDEV

Run the script to create the device files:

cd /dev
./MAKEDEV -v generic-nopty

The meaning of the arguments:

If it turns out that some special device zzz that you need is missing, try running ./MAKEDEV -v zzz. Alternatively, you may create devices via the mknod program. Please refer to its man and info pages if you need more information.

If you wish your system to be FHS-compliant, then the MAKEDEV script has to remain present in the /dev directory. This way it is always available for making extra device nodes.

Additionally, if you were unable to mount the devpts file system earlier in the Section called Mounting the proc and devpts file systems, now is the time to try the alternatives. If your kernel supports the devfs file system, run the following command to mount devfs:

mount -t devfs devfs /dev

This will mount the devfs file system over the top of the new static /dev structure. This poses no problems, as the device nodes created are still present, they are just hidden by the new devfs file system.

If this still doesn't work, the only option left is to use the MAKEDEV script to create the ptyXX and ttyXX range of files that would otherwise not be needed. Ensure you are still in the /dev directory then run ./MAKEDEV -v pty. The downside of this is, we are creating an extra 512 device special files which will not be needed when we finally boot into the finished LFS system.

Contents of MAKEDEV

Installed script: MAKEDEV

Short description

MAKEDEV is a script for creating the necessary static device nodes, usually residing in the /dev directory.