summaryrefslogtreecommitdiffstats
path: root/init.d/mdev
blob: 3fba3baf1a3452b4598357b027dff98e0c3c7796 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/sbin/runscript

start() {
	# check if udev is specified on cmd line
	for i in `cat /proc/cmdline`; do
		[ "$i" = "udev" ] && return 0 
	done
	
	ebegin "Starting mdev"
	mkdir -p /dev

	# start mdev
	mount -t tmpfs -o exec,nosuid,mode=0755 mdev /dev
	mknod -m 666 /dev/null c 1 3

	# use mdev for hotplug
	echo "/sbin/mdev" > /proc/sys/kernel/hotplug
	
	# create devices
	mdev -s
	RC=$?

	# create pts file system
	[ -d /dev/pts ] || mkdir -m 755 /dev/pts
	[ -c /dev/ptmx ] || mknod -m 666 /dev/ptmx c 5 2
	mount -t devpts -o gid=5,mode=0620,noexec,nosuid devpts /dev/pts
	[ -d /dev/shm ] || mkdir /dev/shm
	mount -t tmpfs -o nodev,nosuid,noexec shm /dev/shm
	eend $RC
}

stop() {
	ebegin "Stopping mdev"
	echo "" > /proc/sys/kernel/hotplug
	umount /dev/pts && umount /dev/shm && umount /dev
	eend 
}