# Sample /etc/devfsd.conf configuration file. # Richard Gooch 17-FEB-2002 # # The Gentoo Linux Team - http://www.gentoo.org/ # - Many fixes, etc # # Enable full compatibility mode for old device names. You may comment these # out if you don't use the old device names. Make sure you know what you're # doing! REGISTER .* MKOLDCOMPAT UNREGISTER .* RMOLDCOMPAT # You may comment out the above and uncomment the following if you've # configured your system to use the original "new" devfs names or the really # new names #REGISTER ^vc/.* MKOLDCOMPAT #UNREGISTER ^vc/.* RMOLDCOMPAT #REGISTER ^pty/.* MKOLDCOMPAT #UNREGISTER ^pty/.* RMOLDCOMPAT #REGISTER ^misc MKOLDCOMPAT #UNREGISTER ^misc RMOLDCOMPAT # You may comment these out if you don't use the original "new" names REGISTER .* MKNEWCOMPAT UNREGISTER .* RMNEWCOMPAT # Enable module autoloading. You may comment this out if you don't use # autoloading LOOKUP .* MODLOAD # Uncomment the following if you want to set the group to "tty" for the # pseudo-tty devices. This is necessary so that mesg(1) can later be used to # enable/disable talk requests and wall(1) messages. REGISTER ^pty/s.* PERMISSIONS -1.tty 0600 REGISTER ^pts/.* PERMISSIONS -1.tty 0600 # Uncomment this if you want permissions to be saved and restored # NB: Do NOT change the following! # Do not do this for pseudo-terminal devices REGISTER ^pt[sy]/.* IGNORE CHANGE ^pt[sy]/.* IGNORE CREATE ^pt[sy]/.* IGNORE DELETE ^pt[sy] IGNORE REGISTER ^log IGNORE CHANGE ^log IGNORE CREATE ^log IGNORE DELETE ^log IGNORE REGISTER .* COPY /lib/dev-state/$devname $devpath CHANGE .* COPY $devpath /lib/dev-state/$devname CREATE .* COPY $devpath /lib/dev-state/$devname DELETE .* CFUNCTION GLOBAL unlink /lib/dev-state/$devname RESTORE /lib/dev-state # You can force default like this : # PERMISSIONS owner_and_group access_mode # ALSA/OSS stuff # Comment/change these if you want to change the permissions on # the audio devices LOOKUP snd MODLOAD ACTION snd LOOKUP dsp MODLOAD LOOKUP mixer MODLOAD LOOKUP midi MODLOAD REGISTER sound/.* PERMISSIONS root.audio 660 REGISTER snd/.* PERMISSIONS root.audio 660 # Uncomment this to let PAM manage devfs #REGISTER .* CFUNCTION /lib/security/pam_console_apply_devfsd.so pam_console_apply_single $devpath # Autoload the sg module if generic scsi driver compiled as module. #LOOKUP ^sg$ MODLOAD ACTION sg # Give the cdrom group access to /dev/sg0 REGISTER ^scsi/host.*/bus.*/target.*/lun.*/generic PERMISSIONS root.cdrom 660 # Give the cdrom group access to the cdrom devices REGISTER ^scsi/host.*/bus.*/target.*/lun.*/cd PERMISSIONS root.cdrom 660 REGISTER ^ide/host.*/bus.*/target.*/lun.*/cd PERMISSIONS root.cdrom 660 # Give the floppy group access to the floppy devices REGISTER ^floppy/.* PERMISSIONS root.floppy 660 # Give the usb group access to the usb devices REGISTER ^usb/.* PERMISSIONS root.usb 660 REGISTER ^tts/USB.* PERMISSIONS root.usb 660 REGISTER ^usb/tts/(.*)$ CFUNCTION GLOBAL mksymlink $devname ttyUSB\1 UNREGISTER ^usb/tts/(.*)$ CFUNCTION GLOBAL unlink ttyUSB\1 # Video devices REGISTER ^v4l/.* PERMISSIONS root.video 660 REGISTER ^dri/.* PERMISSIONS root.video 660 REGISTER ^nvidia.* PERMISSIONS root.video 660 # General note for the following auto creation of symlinks: # # If you change the device that the symlink points to, # you should also remove the symlink before restarting # devfsd # Create /dev/cdrom for the first cdrom drive LOOKUP ^cdrom$ CFUNCTION GLOBAL mksymlink cdroms/cdrom0 cdrom REGISTER ^cdroms/cdrom0$ CFUNCTION GLOBAL mksymlink $devname cdrom UNREGISTER ^cdroms/cdrom0$ CFUNCTION GLOBAL unlink cdrom # Create /dev/dvd for the second cdrom drive # (change 'cdroms/cdrom1' to suite your setup) # NOTE: We add the fully qualified path here, else some apps # have problems to resolve the true device (drip comes to mind) #LOOKUP ^dvd$ CFUNCTION GLOBAL mksymlink ${mntpnt}/cdroms/cdrom1 dvd #REGISTER ^cdroms/cdrom1$ CFUNCTION GLOBAL mksymlink ${devpath} dvd #UNREGISTER ^cdroms/cdrom1$ CFUNCTION GLOBAL unlink dvd # Create /dev/cdrw for the first cdrom on the scsi bus # (change 'sr0' to suite your setup) #LOOKUP ^cdrw$ CFUNCTION GLOBAL mksymlink sr0 cdrw #REGISTER ^sr0$ CFUNCTION GLOBAL mksymlink $devname cdrw #UNREGISTER ^sr0$ CFUNCTION GLOBAL unlink cdrw # Create /dev/mouse LOOKUP ^mouse$ CFUNCTION GLOBAL mksymlink misc/psaux mouse REGISTER ^misc/psaux$ CFUNCTION GLOBAL mksymlink $devname mouse UNREGISTER ^misc/psaux$ CFUNCTION GLOBAL unlink mouse # Manage USB mouse REGISTER ^input/mouse0$ CFUNCTION GLOBAL mksymlink $devname usbmouse UNREGISTER ^input/mouse0$ CFUNCTION GLOBAL unlink usbmouse REGISTER ^input/mice$ CFUNCTION GLOBAL mksymlink $devname usbmouse UNREGISTER ^input/mice$ CFUNCTION GLOBAL unlink usbmouse # Create compatibility link for broken misc/net/tun driver REGISTER ^misc/net/tun$ CFUNCTION GLOBAL unlink net/tun REGISTER ^misc/net/tun$ CFUNCTION GLOBAL symlink /dev/$devname net/tun # Support additional config installed by packages ... INCLUDE /etc/devfs.d # devfsd.conf ends here