xref: /dragonfly/etc/rc.d/mounttmpfs (revision 631c21f2)
1#!/bin/sh
2
3# PROVIDE: mounttmpfs
4# REQUIRE: cleanvar
5# BEFORE: netif
6
7. /etc/rc.subr
8
9name="mounttmpfs"
10start_cmd="mounttmpfs_start"
11stop_cmd=":"
12
13is_mountpoint()
14{
15	local mp="$1"
16	mount | awk '{ print $3 }' | grep -q "^${mp}$"
17}
18
19mounttmpfs_start()
20{
21	if checkyesno tmpfs_var_run; then
22		echo -n "Mounting tmpfs at /var/run"
23		mount_tmpfs dummy /var/run
24		echo "."
25
26		echo "Recreating filesystem hierarchy in /var/run:"
27		mtree -deiqU -f /etc/mtree/BSD.var.dist -p /var
28		echo "."
29	else
30		echo -n "Mounting tmpfs at /var/run/shm"
31		mount_tmpfs -m 01777 dummy /var/run/shm
32		mkdir -p -m 01777 /var/run/shm/tmp
33		echo "."
34	fi
35
36	if checkyesno tmpfs_tmp; then
37		if is_mountpoint "/tmp"; then
38			echo "/tmp has been already mounted a filesystem."
39		else
40			echo -n "Mounting tmpfs at /tmp"
41			mount_tmpfs -m 01777 dummy /tmp
42			echo "."
43		fi
44	fi
45}
46
47load_rc_config $name
48run_rc_command "$1"
49