NAME
sticky - persistent text and append-only directories
DESCRIPTION
The sticky bit (file mode bit 01000, see chmod(2)) is used
to
indicate special treatment for certain executable files and
directories.
STICKY TEXT EXECUTABLE FILES
While the ‘sticky bit’ is set on a sharable
executable file, the
text of that file will not be removed from the system swap
area.
Thus the file does not have to be fetched from the file
system upon
each execution. Shareable text segments are normally placed
in a
least-frequently-used cache after use, and thus the
‘sticky bit’
has little effect on commonly-used text images.
Sharable executable files are
made by the -n and -z options of
ld(1).
Only the super-user can set the
sticky bit on a sharable executable
file.
STICKY DIRECTORIES
A directory whose ‘sticky bit’ is set becomes an
append-only
directory, or, more accurately, a directory in which the
deletion
of files is restricted. A file in a sticky directory may
only be
removed or renamed by a user if the user has write
permission for
the directory and the user is the owner of the file, the
owner of
the directory, or the super-user. This feature is usefully
applied
to directories such as /tmp which must be publicly writable
but
should deny users the license to arbitrarily delete or
rename each
others’ files.
Any user may create a sticky
directory. See chmod(1) for details
about modifying file modes.
BUGS
Since the text areas of sticky text executables are stashed
in the
swap area, abuse of the feature can cause a system to run
out of
swap.
Neither open(2) nor mkdir(2)
will create a file with the sticky bit
set.