FIXPERM(ADM) XENIX System V FIXPERM(ADM)
Name
fixperm - Correct or initialize file permissions and
ownership.
Syntax
fixperm [-cfgilnsvwDS[-dpackage]] specfile
Description
For each line in the specification file specfile, fixperm
makes the listed pathname conform to a specification.
fixperm is typically used to configure a system upon
installation.
The specification file has the following format: Each non-
blank line consists of either a comment or an item
specification. A comment is any text from a pound sign
``#'' up to the end of the line. There is one item
specification per line. User and group id numbers must be
specified at the top of the specification file for each user
and group mentioned in the file. The syntax for the
definition section is simple: the first field indicates the
type of id (either uid or gid), the second contains the name
reference for the id, and the third is the corresponding
numeric id. Example:
uid root 0
An item specification consists of a package specifier, a
permission specification, owner and group specifications,
the number of links on the file, the file name, and an
optional volume number.
The package specifier is an arbitrary string which is the
name of a package within a distribution set. A package is a
set of files.
After the package specifier is a permission specification.
The permission specification consists of a file type,
followed by a numeric permission specification. The item
specification is one of the following characters:
x Executable.
a Archive.
e Empty file (create if -c option given).
b Block device.
c Character device.
d Directory.
Page 1 (printed 2/7/91)
FIXPERM(ADM) XENIX System V FIXPERM(ADM)
f Text file.
p Named pipe.
If the item specification is used as an upper-case letter,
then the file associated with it is optional, and fixperm
will not return an error message if it does not exist.
The numeric permission conforms to the scheme described in
chmod(C). The owner and group are in the third column
separated by a slash: e.g.,: ``bin/bin''. The fourth column
indicates the number of links. If there are links to the
file, the next line contains the linked filename with no
other information. The fifth column is a pathname. The
pathname must be relative, i.e., not preceded by a slash
``/''. The sixth column is only used for special files,
giving the major and minor device numbers, or volume
numbers.
Options
The following options are available from the command line:
-c Create empty files and missing directories. Also
creates (or modifies) device files.
-g Instructs fixperm to list devices as specified in the
permlist (similar to the -f flag, which lists files on
standard output). No changes are made as a result of
this flag.
-dpackage
Process input lines beginning with given package
specifier string (see above). For instance, -dBASE
processes only items specified as belonging to the
Basic utilities set. The default action is to process
all lines.
-upackage
Like -d, but processes items that are not part of the
given package.
-f List files only on standard output. Does not modify
target files.
-i Check only if the selected packages are installed.
Return values are:
0: package completely installed
3: package not found
4: package not installed
5: package partially installed
Page 2 (printed 2/7/91)
FIXPERM(ADM) XENIX System V FIXPERM(ADM)-l List files and directories on standard output. Does
not modify target files.
-n Report errors only. Does not modify target files.
-D List directories only on standard output. Does not
modify target files.
-v Verbose, in particular, issues a complaint if
executable files are word swapped, not fixed stack, not
separate I and D, or not stripped.
-s Modify special device files in addition to the rest of
the permlist.
-w Lists where (what volume) the specified files or
directories are located.
-S Issues a complaint if files are not in x.out format.
The following two lines make a distribution and invoke
tar(C) to archive only the files in /etc/perms/perms.inst on
/dev/sample:
/etc/fixperm -f /etc/perms/inst > list
tar cfF /dev/sample list
This example reports BASE package errors:
/etc/fixperm -nd BASE
Notes
Usually fixperm is only run by a shell script at
installation.
See Also
custom(ADM)
Page 3 (printed 2/7/91)