6ef21c4a07
hostname, resolve, tmp, and var scripts. The latter three are new and were repo copied. These scripts no longer depend on being booted with and NFS root instead attempt to automaticly create mfs /tmp and /var volumes if the they are not writable. This behavior can be overridden in /etc/rc.conf. Reviewed by: luigi, pjd
52 lines
903 B
Bash
52 lines
903 B
Bash
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# PROVIDE: cleanvar
|
|
# REQUIRE: mountcritlocal var
|
|
# KEYWORD: FreeBSD
|
|
|
|
purgedir()
|
|
{
|
|
local dir file
|
|
|
|
if [ $# -eq 0 ]; then
|
|
purgedir .
|
|
else
|
|
for dir
|
|
do
|
|
(
|
|
cd "$dir" && for file in .* *
|
|
do
|
|
[ ."$file" = .. -o ."$file" = ... ] && continue
|
|
if [ -d "$file" -a ! -L "$file" ]
|
|
then
|
|
purgedir "$file"
|
|
else
|
|
rm -f -- "$file"
|
|
fi
|
|
done
|
|
)
|
|
done
|
|
fi
|
|
}
|
|
|
|
# These files must be removed only the first time this script is run
|
|
# on boot.
|
|
#
|
|
[ "$1" != "reload" ] && rm -f /var/run/clean_var /var/spool/lock/clean_var
|
|
|
|
if [ -d /var/run -a ! -f /var/run/clean_var ]; then
|
|
purgedir /var/run
|
|
# And an initial utmp file
|
|
(cd /var/run && cp /dev/null utmp && chmod 644 utmp;)
|
|
>/var/run/clean_var
|
|
fi
|
|
if [ -d /var/spool/lock -a ! -f /var/spool/lock/clean_var ]; then
|
|
purgedir /var/spool/lock
|
|
>/var/spool/lock/clean_var
|
|
fi
|
|
rm -rf /var/spool/uucp/.Temp/*
|
|
|