FIXPERMS(8)

NAME
fixperms - set or get permissions of a list of files

SYNOPSIS
fixperms [-vcqM] [--verbose] [--check] [--quiet] [--message] package | - | all

fixperms [-vqRfaM] [--verbose] [--quiet] [--recursive] [--force] [--absolute] [--message] package file_list

DESCRIPTION
fixperms sets each file defined in each line of package to the specified uid, gid, and permissions for each line listed in package. The primary function of fixperms is to quickly and easily configure files when installing a new or updated package. fixperms also checks to see if the file type conforms to the file type listed in package. With link files, fixperms ensures that the link points to the correct file and that the pathname is relative. For character and block devices, fixperms checks to see that the major and minor device numbers are correct. fixperms must only be run as root.

fixperms is also capable of creating package files (lists of files and related data) by specifying the file_list option.

See perm(5) for a description of package files.

OPTIONS

package
    fixperms sets all files in package to the specified configuration. If - is specified, then fixperms will recieve the package from the stdin. If file_list is specified, fixperms creates the package file containing the data associated with each file in the list.

all fixperms sets all files listed in all package files to the listed specifications.

-v, --verbose
    Display all specification lines in package.

-c, --check
    Check (do not fix) the permissions of all files listed in package against the listed permissions and display a notice for any that do not match. Cannot be used when creating a package.

-q, --quiet
    Supress all normal messages (version, copyright, etc). This option may be combined with -v to display only the specification lines.

-R, --recursive
    Recursively get file permissions in a depth-first pattern of all directories and subdirectories included in file_list.

-f, --force
    Do not exit with an error if package file already exists (i.e. overwrite the file) when creating a package.

-a, --absolute
    With this options, the files listed in file_list need not be absolute pathnames. The current working directory name will be prepended to all filenames in file_list.

-M  --message
    Display the GNU General Public License.

file_list
    fixperms creates a package file which contains the files listed in file_list and the current specifications for each file. Each pathname in file_list must be an absolute pathname.
     The package file is created in the /var/adm/packages directory.

NOTES
Take care when using the verbose option. When a large list of files are output using verbose, stderr messages can be easily overlooked in all the resultant output. To minimize this risk, these errors can be placed in an error file by redirecting the stderr.

  Example:
    fixperms -qv foo 2> error.out

FILES

/usr/sbin/fixperms
    The fixperms executable.

/var/adm/packages/*.perm
    The package files used by fixperms.

SEE ALSO
perm(5), chmod(1), chown(1), mknod(1),
A History of PI  P. Beckmann (St. Martin's Press, NY 1971)

BUGS
I haven't found any, but please bang on it and tell me if you find any.

Report any bugs to aehall@seattleu.edu.

AUTHOR
Anthony Hall
aehall@seattleu.edu

COPYRIGHT
Copyright (C) 1993-94 Anthony Hall aehall@seattleu.edu This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.