cleartmp revision 140106
1#!/bin/sh
2#
3# $NetBSD: cleartmp,v 1.4 2002/03/22 04:33:58 thorpej Exp $
4# $FreeBSD: head/etc/rc.d/cleartmp 140106 2005-01-12 07:18:25Z anholt $
5#
6
7# PROVIDE: cleartmp
8# REQUIRE: mountcritremote tmp
9# BEFORE: DAEMON
10
11. /etc/rc.subr
12
13name="cleartmp"
14rcvar=`set_rcvar clear_tmp`
15start_cmd="cleartmp_start"
16stop_cmd=":"
17x11_socket_dirs="/tmp/.X11-unix /tmp/.ICE-unix /tmp/.font-unix /tmp/.XIM-unix"
18
19cleartmp_start()
20{
21	echo "Clearing /tmp."
22	#
23	#	Prune quickly with one rm, then use find to clean up
24	#	/tmp/[lq]* (this is not needed with mfs /tmp, but
25	#	doesn't hurt anything).
26	#
27	(cd /tmp && rm -rf [a-km-pr-zA-Z]* &&
28	    find -x . ! -name . ! -name lost+found ! -name quota.user \
29		! -name quota.group -exec rm -rf -- {} \; -type d -prune)
30}
31
32load_rc_config $name
33run_rc_command "$1"
34
35# Remove X lock files, since they will prevent you from restarting X.
36rm -f /tmp/.X[0-9]-lock
37
38# Create socket directories with correct permissions to avoid security problem.
39rm -fr ${x11_socket_dirs}
40mkdir -m 1777 ${x11_socket_dirs}
41