makedev for DEBIAN ================== The /etc/makedev.cfg and /etc/devinfo files are rewritten to fit the Debian /dev layout. Security : all mouse devices are changed to mode 600. Only serial devices are mode 660 root:dialout. It's possible to crash x11 and console with writing random bytes to a mouse device. Serial console : /dev/console should be a symlink to your real console device. If it does not exist, or is not a symlink, it will be replaced with a symlink console -> tty0. This version of makedev will check /dev for tty*/pty* devices, and if there are some with the old major number, it will create a /etc/rc.boot/makedev script. This will script will change the master/slave devices the next time you boot. serial devices should be owned by user "uucp" and group "dialout". former they were owned by root. new devices are created with uucp as owner, but you will have to change old devices to user uucp on your own. It's new policy to have all serial devices owned by uucp, but the last word in this discussion isn't said... some device names have changed. please read /usr/doc/makedev/devices.{txt|html} the permissions should be secure enough, but if you find any bugs, or unfounded hard permissions, please let me know (i don't know much about the right permissions for devices, i yust used the value, everybody else was using, and made read & write only available for root, whenever i found nothing better. /dev/console is now a symlink to /dev/tty0. for more infomation, please look at a new 2.1 linux kernel : Documentation/devices.txt. That is the "Linux Allocated Device" paper, the official list of linux devices. If your boot console is a serial device, you will have to change that symlink. MAKEDEV-C will not work with any kernel with mcdx support, if /proc/devices contains "Mitsumi CD-ROM". if so, patch /usr/src/linux/driver/cdrom/mcdx.c : 1149c1149 < if (unregister_blkdev(MAJOR_NR, "mcdx") != 0) { --- > if (unregister_blkdev(MAJOR_NR, DEVICE_NAME) != 0) { 1270c1270 < if (register_blkdev(MAJOR_NR, "mcdx", &mcdx_fops) != 0) { --- > if (register_blkdev(MAJOR_NR, DEVICE_NAME, &mcdx_fops) != 0) { about call out devices (/dev/cu*) : /dev/ttySxx devices are fully POSIX-compliant TTY devices. If you are only going to be using one set of tty devices, you should be using /dev/ttySxx. /dev/cuaXX devices are different from /dev/ttySXX in two ways --- first of all, they will allow you to open the device even if CLOCAL is not set and the O_NONBLOCK flag was not given to the open device. This allows programs that don't use the POSIX-mondated interface for opening /dev/ttySxx devices to be able to use /dev/cuaXX to make outgoing phone calls on their modem (cu stands for "callout", and is taken from SunOS). The second way in which /dev/cuaXX differs from /dev/ttySXX is that if they are used, they will trigger a simplistic kernel-based locking scheme: If /dev/ttySXX is opened by one or more processes, then an attempt to open /dev/cuaXX will return EAGAIN. If /dev/cuaXX is opened by one or more processes, then an attempt to open /dev/ttySXX will result the open blocking until /dev/cuaXX is closed, and the carrier detect line goes high. the open blocking until /dev/cuaXX is closed, and the carrier detect line goes high. While this will allow for simple lockouts between a user using a modem for callout and a getty listening on the line for logins, it doesn't work if you need to arbitrate between multiple programs wanting to do dialout --- for example, users wanting to do dialout and UUCP. I originally implemented the cuaXX/ttySXX lockout mechanism back before FSSTND established a standard convention for the use of tty lock files. Now that it's there, people should use the tty lock files and not try using /dev/cuaXX. The only reason why /dev/cuaXX hasn't disappeared yet is for backwards compatibility reasons. -- Theodore Ts'o debian has no /dev/cu* devices. But you can create them, if you need them. Read devices.txt for details. Andreas Jellinghaus , Sun, 13 Apr 1997 21:05:58 +0200