128263Spst#!/bin/sh 228263Spst# 350472Speter# $FreeBSD$ 428263Spst# 561981Sbrian# Remove garbage files more than $daily_clean_disks_days days old 661981Sbrian# 728263Spst 861981Sbrian# If there is a global system configuration file, suck it in. 961981Sbrian# 1061981Sbrianif [ -r /etc/defaults/periodic.conf ] 1161981Sbrianthen 1261981Sbrian . /etc/defaults/periodic.conf 1361981Sbrian source_periodic_confs 1461981Sbrianfi 1528263Spst 1661981Sbriancase "$daily_clean_disks_enable" in 1761981Sbrian [Yy][Ee][Ss]) 1865843Sbrian if [ -z "$daily_clean_disks_days" ] 1961981Sbrian then 2065843Sbrian echo '$daily_clean_disks_enable is set but' \ 2165843Sbrian '$daily_clean_disks_days is not' 2265843Sbrian rc=2 2365843Sbrian elif [ -z "$daily_clean_disks_files" ] 2465843Sbrian then 2565843Sbrian echo '$daily_clean_disks_enable is set but' \ 2665843Sbrian '$daily_clean_disks_files is not' 2765843Sbrian rc=2 2865843Sbrian else 2961981Sbrian echo "" 3070323Sbrian echo "Cleaning disks:" 3161981Sbrian set -f noglob 32193302Sbrian args="-name "`echo "$daily_clean_disks_files" | 3370323Sbrian sed -e 's/^[ ]*//' \ 3470323Sbrian -e 's/[ ]*$//' \ 3570323Sbrian -e 's/[ ][ ]*/ -o -name /g'` 3661981Sbrian 3775961Sru case "$daily_clean_disks_verbose" in 3861981Sbrian [Yy][Ee][Ss]) 3961981Sbrian print=-print;; 4061981Sbrian *) 4161981Sbrian print=;; 4261981Sbrian esac 4361981Sbrian 44193302Sbrian rc=$(find / \( ! -fstype local -o -fstype rdonly \) -prune -o \ 45193302Sbrian \( $args \) -atime +$daily_clean_disks_days \ 46193302Sbrian -execdir rm -df {} \; $print | tee /dev/stderr | wc -l) 4765843Sbrian [ -z "$print" ] && rc=0 4865843Sbrian [ $rc -gt 1 ] && rc=1 4961981Sbrian set -f glob 5061981Sbrian fi;; 5165843Sbrian 5265843Sbrian *) rc=0;; 5361981Sbrianesac 5465843Sbrian 5565843Sbrianexit $rc 56