Path: blob/main/libexec/makewhatis.local/makewhatis.local.sh
34856 views
#!/bin/sh1#2# Copyright (c) April 1996 Wolfram Schneider <[email protected]>. Berlin.3# All rights reserved.4#5# Redistribution and use in source and binary forms, with or without6# modification, are permitted provided that the following conditions7# are met:8# 1. Redistributions of source code must retain the above copyright9# notice, this list of conditions and the following disclaimer.10# 2. Redistributions in binary form must reproduce the above copyright11# notice, this list of conditions and the following disclaimer in the12# documentation and/or other materials provided with the distribution.13#14# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND15# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE16# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE17# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE18# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL19# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS20# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)21# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT22# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY23# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF24# SUCH DAMAGE.25#26# makewhatis.local - start makewhatis(1) only for file systems27# physically mounted on the system28#29# Running makewhatis from /etc/periodic/weekly/320.whatis for rw nfs-mounted30# /usr may kill your NFS server -- all clients start makewhatis at the same31# time! So use this wrapper instead calling makewhatis directly.32#3334PATH=/bin:/usr/bin:$PATH; export PATH35opt= dirs= localdirs=3637for arg38do39case "$arg" in40-*) opt="$opt $arg";;41*) dirs="$dirs $arg";;42esac43done4445dirs=`echo $dirs | sed 's/:/ /g'`46case X"$dirs" in X) echo "usage: $0 [options] directories ..."; exit 1;; esac4748localdirs=`find -H $dirs -fstype local \! -fstype rdonly -type d -prune -print`4950case X"$localdirs" in51X) echo "$0: no local rw-mounted manual directories found: $dirs"52exit 1;;53*) exec `basename $0 .local` $opt $localdirs;;54esac555657