stmpclean man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

STMPCLEAN(8)		  BSD System Manager's Manual		  STMPCLEAN(8)

NAME
     stmpclean — remove old files from a world-writable directory

SYNOPSIS
     stmpclean [-t<timespec>] [-v] dir1 [dir2 ...]

DESCRIPTION
     The stmpclean utility removes old files (and old empty directories) from
     the specified directory.  It'll be typically used to clean directories
     such as ``/tmp'' where old files tend to accumulate.

     The stmpclean utility never removes files or directories owned by root.
     It is a feature, not a bug.  Great care is taken while descending into
     the directory, and the operation is secure.  Anything that's not a direc‐
     tory, regular file, or symbolic link is also left alone (because programs
     like screen(1) create sockets and FIFOs under /tmp and expect them to be
     long-lived; we accomodate this practice).	Unlike floating around Perl
     scripts that do the same task stmpclean never forks and consumes limited
     amount of memory (these Perl scripts easily turn into forking bombs when
     someone creates a lot a directories under ``/tmp'').  If your system is
     attacked and the attacker creates an extremely deep file hierarchy,
     stmpclean won't add to the problem by crashing your system trying to
     remove it.	 But it won't help you in fighting the attack, either, because
     it descends only to a limited depth (currently, 30 levels).  If stmpclean
     determines a race condition it'll log the situation (you can look for the
     word ``RACE'' in log files) and exit with a failure.

     So, stmpclean will clean temporary directories for you fine when there
     are no attacks, and, when there is an attack, stmpclean won't make the
     situation worse (in particular, it cannot be tricked into removing files
     outside specified directories or consume unlimited amount of resources).

     The following option is available:

     -t<timespec>
	   The time specification that follows the -t flag specifies how old a
	   file or a directory has to be before it will be removed.  It can be
	   a string like `1w' (one week) or `4d5h' (four days plus five hours)
	   or `2m3s' (two minutes plus three seconds).	The default is `3d'
	   (three days).

     -v	   Be verbose: list each file deleted.

     The stmpclean utility exits 0 on success, and >0 if an error occurs.

EXAMPLES
     The stmpclean utility will typically be run nightly from cron(8) as

     stmpclean /tmp /var/tmp

     In FreeBSD stmpclean invokation should be placed into the file
     /etc/periodic/daily/110.clean-tmps.  In other versions of BSD it should
     go into the /etc/daily script.  In Linux, check if you have
     /etc/periodic, and if not, you can just run it from cron; usually you'd
     have to edit /etc/crontab.

SEE ALSO
     cron(8)

BUGS
     When stmpclean removes a file from a directory, modification time of the
     directory changes and it looks new to stmpclean when it examines it later
     (if the directory became empty).  Thus, removing a deep hierarchy can
     take some time.  Notice that this only delays removal of some empty
     directories.

BSD				April 29, 2024				   BSD
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net