X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/1c15e88899094343f75aeba04122cd96a96b428e..ad7871609881e73855d0b04da49b486cd93efca7:/usr/src/share/man/man8/sticky.8 diff --git a/usr/src/share/man/man8/sticky.8 b/usr/src/share/man/man8/sticky.8 index 5c7aece4fc..546c6c0841 100644 --- a/usr/src/share/man/man8/sticky.8 +++ b/usr/src/share/man/man8/sticky.8 @@ -1,40 +1,74 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. .\" -.\" @(#)sticky.8 6.3 (Berkeley) 5/26/86 +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by the University of +.\" California, Berkeley and its contributors. +.\" 4. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. .\" -.TH STICKY 8 "May 26, 1986" -.UC 4 -.SH NAME -sticky \- persistent text and append-only directories -.SH DESCRIPTION -The -.I "sticky bit" -(file mode bit 01000, see -.IR chmod (2)) +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)sticky.8 8.1 (Berkeley) 6/5/93 +.\" +.Dd June 5, 1993 +.Dt STICKY 8 +.Os BSD 4 +.Sh NAME +.Nm sticky +.Nd sticky text and append-only directories +.Sh DESCRIPTION +A special file mode, called the +.Em sticky bit +(mode S_ISVTX), is used to indicate special treatment -for certain executable files and directories. -.SH "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. +for shareable executable files and directories. +See +.Xr chmod 2 +or +the file +.Pa /usr/include/sys/stat.h +for an explanation of file modes. +.Sh STICKY TEXT EXECUTABLE FILES +An executable shareable file whose sticky bit is set +will not be immediately discarded from swap space after execution. +The kernel will hoard the text segment of the file for future +reuse and avoid having to reload the program. 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. -.PP -Sharable executable files are made by the -.B \-n +.Pp +Sharable executable files are created with the +.Fl n and -.B \-z +.Fl z options of -.IR ld (1). -.PP +the loader +.Xr ld 1 . +.Pp Only the super-user can set the sticky bit on a sharable executable file. -.SH "STICKY DIRECTORIES" +.Sh 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. @@ -42,21 +76,26 @@ 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 +This feature is usefully applied to directories such as +.Pa /tmp which must be publicly writable but should deny users the license to arbitrarily delete or rename each others' files. -.PP +.Pp Any user may create a sticky directory. See -.IR chmod (1) +.Xr chmod 1 for details about modifying file modes. -.SH BUGS +.Sh 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. -.PP +.Pp Neither -.IR open (2) +.Xr open 2 nor -.IR mkdir (2) +.Xr mkdir 2 will create a file with the sticky bit set. +.Sh HISTORY +A +.Nm +command appeared in Version 32V AT&T UNIX.