fsr

(Recursively apply AFS fs commands)

SYNOPSIS

fsr [-hMmVv] fs-command fs-options

DESCRIPTION

fsr wraps the basic AFS fs command to make it recursive. It only works with the fs subcommands that act on directories, namely cleanacl, copyacl, listacl, listquota, lsmount, setacl, setquota, and whereis. All aliases for those commands are also supported.

To apply an fs command recursively, just run fsr instead of fs, leaving all of the other options and command ordering the same. To use any of the options specific to fsr, give them immediately after fsr on the command line and before the fs subcommand.

Note that for copyacl, only the target directory will be recursive. In other words, fsr will let you copy the ACLs from a single directory to every directory in a target tree, but won't let you copy ACLs from one directory hierarchy to another matching hierarchy.

Run fs help for more usage information for fs.

OPTIONS

-h, --help

Print out this documentation (which is done simply by feeding the script to perldoc -t) and then exit.

-m, --cross-mounts

Enable crossing of mountpoints. Be very careful with this option, since when using it, fsr will happily recurse into arbitrarily deep file systems. No check is made for whether a given volume had already been visited, so recursive volume structures will cause fsr to descend indefinitely deep. Only use this option if you know the structure of the directory tree you're using it on.

-M, --no-mounts

Normally, fsr will recurse into all directories specified on the command line, regardless of whether those directories are mount points or not. Only mount points underneath those directories won't be crossed (in the absence of the -m option). With this option, any directories specified on the command line that are actually mount points will also be skipped.

-V, --verbose

Print out each directory that fsr acts on as it does so.

-v, --version

Print the version of fsr and exit.

EXAMPLES

Give person1 all AFS permissions (rlidwka) on the group directory mygroup and removes all AFS permissions to that directory for person2:

    fsr sa /afs/ir/group/mygroup person1 all person2 none

Gives personX AFS read permissions (rl) recursively to the directories beginning with cs in the current working directory, except for any subdirectories that are actually mount points:

    fsr sa -dir cs* -acl personX read

Same as above, but recursively descends across mountpoints (be very careful with this):

    fsr -m sa -dir cs* -acl personX read

Gives personX AFS read permissions to all directories in the current directory and recursively to non-mount-point directories below them, but skipping any directories in the current directory that are actually mount points:

    fsr -M sa -dir * -acl personX read

NOTES

fsr ignores symlinks.

SEE ALSO

fs(1)

The current version of this program is available from its web page at <http://www.eyrie.org/~eagle/software/fsr/>.

AUTHORS

Written by Russ Allbery <rra@stanford.edu> and Carol Oliver. Inspired by a script written by Larry Schwimmer.

COPYRIGHT AND LICENSE

Copyright 1999, 2004 Board of Trustees, Leland Stanford Jr. University.

This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself.

Last spun 2007-09-19 from POD modified 2007-02-10