1#!/bin/sh 2# 3# $NetBSD: cleartmp,v 1.4 2002/03/22 04:33:58 thorpej Exp $ 4# $FreeBSD: src/etc/rc.d/cleartmp,v 1.4 2002/10/12 10:31:31 schweikh Exp $ 5# $DragonFly: src/etc/rc.d/cleartmp,v 1.7 2008/11/22 18:36:18 swildner Exp $ 6# 7 8# PROVIDE: cleartmp 9# REQUIRE: mountcritremote 10# BEFORE: DAEMON 11 12. /etc/rc.subr 13 14name="cleartmp" 15rcvar=`set_rcvar clear_tmp` 16start_cmd="cleartmp_start" 17stop_cmd=":" 18 19cleartmp_start() 20{ 21 echo "Clearing /tmp." 22 # 23 # Prune quickly with one rm, then use find to clean up 24 # the rest. Exceptions are lost+found/ (which is preserved 25 # but its contents are removed), quota.{group,user}, and 26 # snapshots/ (left untouched). This is not needed with mfs 27 # /tmp, but doesn't hurt anything. 28 # 29 (cd /tmp && rm -rf [a-km-prt-zA-Z]* && 30 find -x . ! -name . ! -name lost+found \ 31 ! -name snapshots ! -path "./snapshots/*" \ 32 ! -name quota.user ! -name quota.group \ 33 -exec rm -rf -- {} \; -type d -prune) 34 35 # Remove X lock files, since they will prevent you from 36 # restarting X 37 # 38 rm -f /tmp/.X*-lock 39 rm -fr /tmp/.X11-unix 40 mkdir -m 1777 /tmp/.X11-unix 41} 42 43load_rc_config $name 44run_rc_command "$1" 45