Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- #
- # $FreeBSD$
- #
- # PROVIDE: devfs
- # REQUIRE: mountcritremote
- # BEFORE: SERVERS securelevel
- # KEYWORD: nojail
- . /etc/rc.subr
- name="devfs"
- start_cmd='devfs_start'
- stop_cmd=':'
- devfs_start()
- {
- if [ -n "$devfs_system_ruleset" -o -n "$devfs_set_rulesets" ] ||
- checkyesno devfs_load_rulesets; then
- devfs_init_rulesets
- if [ -n "$devfs_system_ruleset" ]; then
- devfs_set_ruleset $devfs_system_ruleset /dev
- devfs_apply_ruleset $devfs_system_ruleset /dev
- fi
- if [ -n "$devfs_set_rulesets" ]; then
- local _dir_set
- local _dir
- local _set
- for _dir_set in $devfs_set_rulesets; do
- _dir=${_dir_set%=*}
- _set=${_dir_set#*=}
- devfs_set_ruleset $_set $_dir
- devfs_apply_ruleset $_set $_dir
- done
- fi
- fi
- read_devfs_conf
- }
- read_devfs_conf()
- {
- if [ -r /etc/devfs.conf ]; then
- cd /dev
- while read action devicelist parameter; do
- case "${action}" in
- l*) for device in ${devicelist}; do
- if [ ! -e ${parameter} ]; then
- ln -fs ${device}
- ${parameter}
- fi
- done
- ;;
- o*) for device in ${devicelist}; do
- if [ -c ${device} ]; then
- chown ${parameter}
- ${device}
- fi
- done
- ;;
- p*) for device in ${devicelist}; do
- if [ -c ${device} ]; then
- chmod ${parameter}
- ${device}
- fi
- done
- ;;
- esac
- done < /etc/devfs.conf
- fi
- }
- load_rc_config $name
- run_rc_command "$1"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement