summaryrefslogtreecommitdiffstats
path: root/upstream/fedora-rawhide/man8/logrotate.8
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
commitfc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch)
treece1e3bce06471410239a6f41282e328770aa404a /upstream/fedora-rawhide/man8/logrotate.8
parentInitial commit. (diff)
downloadmanpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz
manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/fedora-rawhide/man8/logrotate.8')
-rw-r--r--upstream/fedora-rawhide/man8/logrotate.8787
1 files changed, 787 insertions, 0 deletions
diff --git a/upstream/fedora-rawhide/man8/logrotate.8 b/upstream/fedora-rawhide/man8/logrotate.8
new file mode 100644
index 00000000..34dc8f60
--- /dev/null
+++ b/upstream/fedora-rawhide/man8/logrotate.8
@@ -0,0 +1,787 @@
+.TH LOGROTATE 8 "3.21.0" "Linux" "System Administrator's Manual"
+.\" Per groff_man(7), the TQ macro should be copied from an-ext.tmac when
+.\" not running under groff. That's not quite right; not all groff
+.\" installations include this macro. So bring it in with another name
+.\" unconditionally.
+.\" Continuation line for .TP header.
+.de tq
+. br
+. ns
+. TP \\$1\" no doublequotes around argument!
+..
+.\}
+.SH NAME
+
+logrotate \(hy rotates, compresses, and mails system logs
+
+.SH SYNOPSIS
+
+\fBlogrotate\fR
+\fR[\fB\-\-force\fR]
+\fR[\fB\-\-debug\fR]
+\fR[\fB\-\-state\fR \fIfile\fR]
+\fR[\fB\-\-skip-state-lock\fR]
+\fR[\fB\-\-wait-for-state-lock\fR]
+\fR[\fB\-\-verbose\fR]
+\fR[\fB\-\-log\fR \fIfile\fR]
+\fR[\fB\-\-mail\fR \fIcommand\fR]
+\fIconfig_file\fR
+\fR[\fIconfig_file2 ...\fR]
+
+.SH DESCRIPTION
+
+\fBlogrotate\fR is designed to ease administration of systems that generate
+large numbers of log files. It allows automatic rotation, compression,
+removal, and mailing of log files. Each log file may be handled daily,
+weekly, monthly, or when it grows too large.
+.P
+Normally, \fBlogrotate\fR is run as a daily cron job. It will not modify
+a log more than once in one day unless the criterion for that log is
+based on the log's size and \fBlogrotate\fR is being run more than once
+each day, or unless the \fB\-f\fR or \fB\-\-force\fR option is used.
+.P
+Any number of config files may be given on the command line. Later config
+files may override the options given in earlier files, so the order
+in which the \fBlogrotate\fR config files are listed is important.
+Normally, a single config file which includes any other config files
+which are needed should be used. See below for more information on how
+to use the \fBinclude\fR directive to accomplish this. If a directory
+is given on the command line, every file in that directory is used as
+a config file.
+.P
+If no command line arguments are given, \fBlogrotate\fR will print
+version and copyright information, along with a short usage summary. If
+any errors occur while rotating logs, \fBlogrotate\fR will exit with
+non-zero status, although the state file will be updated.
+
+.SH OPTIONS
+
+.TP
+\fB\-f\fR, \fB\-\-force\fR
+Tells \fBlogrotate\fR to force the rotation, even if it doesn't think
+this is necessary. Sometimes this is useful after adding new entries to
+a \fBlogrotate\fR config file, or if old log files have been removed
+by hand, as the new files will be created, and logging will continue
+correctly.
+
+.TP
+\fB\-d\fR, \fB\-\-debug\fR
+Turn on debug mode, which means that no changes are made to the logs and the
+\fBlogrotate\fR state file is not updated. Only debug messages are printed.
+
+.TP
+\fB\-s\fR, \fB\-\-state\fR \fIstatefile\fR
+Tells \fBlogrotate\fR to use an alternate state file. This is useful
+if \fBlogrotate\fR is being run as a different user for various sets of
+log files. To prevent parallel execution \fBlogrotate\fR by default
+acquires a lock on the state file, if it cannot be acquired \fBlogrotate\fR
+will exit with value 3. The default state file is \fI/var/lib/logrotate/logrotate.status\fR.
+If \fI/dev/null\fR is given as the state file, then \fBlogrotate\fR will
+not try to lock or write the state file.
+
+.TP
+\fB\-\-skip-state-lock\fR
+Do not lock the state file, for example if locking is unsupported or prohibited.
+
+.TP
+\fB\-\-wait-for-state-lock\fR
+Wait until lock on the state file is released by another logrotate process.
+This option may cause logrotate to wait indefinitely. Use with caution.
+
+.TP
+\fB\-v\fR, \fB\-\-verbose\fR
+Turns on verbose mode, for example to display messages during rotation.
+
+.TP
+\fB\-l\fR, \fB\-\-log\fR \fIfile\fR
+Tells \fBlogrotate\fR to log verbose output into the log_file. The verbose
+output logged to that file is the same as when running \fBlogrotate\fR with
+\fB-v\fR switch. The log file is overwritten on every \fBlogrotate\fR
+execution.
+
+.TP
+\fB\-m\fR, \fB\-\-mail\fR \fIcommand\fR
+Tells \fBlogrotate\fR which command to use when mailing logs. This
+command should accept the following arguments:
+.IP
+1) the subject of the message given with '-s subject'
+.br
+2) the recipient.
+.IP
+The command must then read a message on standard input
+and mail it to the recipient. The default mail command is
+\fI/bin/mail\fR.
+
+.TP
+\fB\-\-usage\fR
+Prints a short usage message.
+
+.TP
+\fB\-?\fR, \fB\-\-help\fR
+Prints help message.
+
+.TP
+\fB\-\-version\fR
+Display version information.
+
+
+.SH CONFIGURATION FILE
+
+\fBlogrotate\fR reads everything about the log files it should be handling
+from the series of configuration files specified on the command line. Each
+configuration file can set global options (local definitions override
+global ones, and later definitions override earlier ones) and specify
+logfiles to rotate. Global options do not affect preceding include
+directives. A simple configuration file looks like this:
+
+.nf
+.ta +8n
+# sample logrotate configuration file
+compress
+
+/var/log/messages {
+ rotate 5
+ weekly
+ postrotate
+ /usr/bin/killall \-HUP syslogd
+ endscript
+}
+
+"/var/log/httpd/access.log" /var/log/httpd/error.log {
+ rotate 5
+ mail recipient@example.org
+ size 100k
+ sharedscripts
+ postrotate
+ /usr/bin/killall \-HUP httpd
+ endscript
+}
+
+/var/log/news/* {
+ monthly
+ rotate 2
+ olddir /var/log/news/old
+ missingok
+ sharedscripts
+ postrotate
+ kill \-HUP $(cat /var/run/inn.pid)
+ endscript
+ nocompress
+}
+
+~/log/*.log {}
+
+.fi
+
+.PP
+The first few lines set global options; in the example, logs are
+compressed after they are rotated. Note that comments may appear
+anywhere in the config file as long as the first non-whitespace
+character on the line is a \fB#\fR.
+
+Values are separated from directives by whitespace and/or an optional =.
+Numbers must be specified in a format understood by \fBstrtoul\fR(3).
+
+The next section of the config file defines how to handle the log file
+\fI/var/log/messages\fR. The log will go through five weekly rotations before
+being removed. After the log file has been rotated (but before the old
+version of the log has been compressed), the command
+\fI/usr/bin/killall \-HUP syslogd\fR will be executed.
+
+The next section defines the parameters for both
+\fI/var/log/httpd/access.log\fR and \fI/var/log/httpd/error.log\fR.
+Each is rotated whenever it grows over 100\ kilobytes in size, and the old logs
+files are mailed (uncompressed) to recipient@\:example.org after going through 5
+rotations, rather than being removed. The \fBsharedscripts\fR means that
+the \fBpostrotate\fR script will only be run once (after the old logs have
+been compressed), not once for each log which is rotated.
+Note that log file names may be enclosed in
+quotes (and that quotes are required if the name contains spaces).
+Normal shell quoting rules apply, with \fB'\fR, \fB"\fR, and \fB\e\fR
+characters supported.
+
+The next section defines the parameters for all of the files in
+\fI/var/log/news\fR. Each file is rotated on a monthly basis.
+
+The last section uses tilde expansion to rotate log files in the home
+directory of the current user. This is only available, if your glob
+library supports tilde expansion. GNU glob does support this.
+
+Please use wildcards with caution. If you specify *, \fBlogrotate\fR will
+rotate all files, including previously rotated ones. A way around this
+is to use the \fBolddir\fR directive or a more exact wildcard (such as *.log).
+
+Please note, by default when using \fBsystemd\fR(1), the option
+\fIProtectSystem=full\fR is set in the \fIlogrotate.service\fR file.
+This prevents \fBlogrotate\fR from modifying logs in \fI/etc\fR
+and \fI/usr\fR.
+
+Here is more information on the directives which may be included in
+a \fBlogrotate\fR configuration file:
+
+.SH CONFIGURATION FILE DIRECTIVES
+These directives may be included in a \fBlogrotate\fR configuration file:
+
+.SS Rotation
+
+.TP
+\fBrotate \fIcount\fR
+Log files are rotated \fIcount\fR times before being removed or mailed to the
+address specified in a \fBmail\fR directive. If \fIcount\fR is 0, old versions
+are removed rather than rotated. If \fIcount\fR is \-1, old logs are not
+removed at all, except they are affected by \fBmaxage\fR (use with caution, may
+waste performance and disk space). Default is 0.
+
+.TP
+\fBolddir \fIdirectory\fR
+Logs are moved into \fIdirectory\fR for rotation. The \fIdirectory\fR must be
+on the same physical device as the log file being rotated, unless \fBcopy\fR,
+\fBcopytruncate\fR or \fBrenamecopy\fR option is used. The \fIdirectory\fR
+is assumed to be relative to the directory holding the log file
+unless an absolute path name is specified. When this option is used all
+old versions of the log end up in \fIdirectory\fR. This option may be
+overridden by the \fBnoolddir\fR option.
+
+.TP
+\fBnoolddir\fR
+Logs are rotated in the directory they normally reside in (this
+overrides the \fBolddir\fR option).
+
+.TP
+\fBsu \fIuser\fR \fIgroup\fR
+Rotate log files set under this user and group instead of using default
+user/group (usually root). \fIuser\fR specifies the user used for
+rotation and \fIgroup\fR specifies the group used for rotation (see the
+section \fBUSER AND GROUP\fR for details). If the
+user/group you specify here does not have sufficient privilege to make
+files with the ownership you've specified in a \fBcreate\fR directive,
+it will cause an error. If \fBlogrotate\fR runs with root privileges, it is
+recommended to use the \fBsu\fR directive to rotate files in directories
+that are directly or indirectly in control of non-privileged users.
+
+.SS Frequency
+
+.TP
+\fBhourly\fR
+Log files are rotated every hour. Note that usually \fBlogrotate\fR is
+configured to be run by cron daily (or by \fIlogrotate.timer\fR when using
+\fBsystemd\fR(1)). You have to change this configuration and run
+\fBlogrotate\fR hourly to be able to really rotate logs hourly.
+
+.TP
+\fBdaily\fR
+Log files are rotated every day.
+
+.TP
+\fBweekly\fR [\fIweekday\fR]
+Log files are rotated once each \fIweekday\fR, or if the date is advanced by at
+least 7 days since the last rotation (while ignoring the exact time). The
+\fIweekday\fR interpretation is following: 0 means Sunday, 1 means Monday,
+\&.\|.\|.\|\&, 6 means Saturday; the special value 7 means each 7 days,
+irrespectively of weekday.
+Defaults to 0 if the \fIweekday\fR argument is omitted.
+
+.TP
+\fBmonthly\fR
+Log files are rotated the first time \fBlogrotate\fR is run in a month
+(this is normally on the first day of the month).
+
+.TP
+\fByearly\fR
+Log files are rotated if the current year is not the same as the last rotation.
+
+.TP
+\fBsize \fIsize\fR
+Log files are rotated only if they grow bigger than \fIsize\fR bytes. If
+\fIsize\fR is followed by \fIk\fR, the size is assumed to be in kilobytes.
+If \fIM\fR is used, the size is in megabytes, and if \fIG\fR is used, the
+size is in gigabytes. So \fIsize 100\fR, \fIsize 100k\fR, \fIsize 100M\fR and
+\fIsize 100G\fR are all valid. This option is mutually exclusive with the time
+interval options, and it causes log files to be rotated without regard for the
+last rotation time, if specified after the time criteria (the last specified
+option takes the precedence).
+
+.SS File selection
+
+.TP
+\fBmissingok\fR
+If the log file is missing, go on to the next one without issuing an error
+message. See also \fBnomissingok\fR.
+
+.TP
+\fBnomissingok\fR
+If a log file does not exist, issue an error. This is the default.
+
+.TP
+\fBignoreduplicates\fR
+Ignore any following matches of a log file.
+
+.TP
+\fBifempty\fR
+Rotate the log file even if it is empty, overriding the \fBnotifempty\fR
+option (\fBifempty\fR is the default).
+
+.TP
+\fBnotifempty\fR
+Do not rotate the log if it is empty (this overrides the \fBifempty\fR option).
+
+.TP
+\fBminage\fR \fIcount\fR
+Do not rotate logs which are less than <count> days old.
+
+.TP
+\fBmaxage\fR \fIcount\fR
+Remove rotated logs older than <count> days. The age is only checked
+if the logfile is to be rotated. \fBrotate \-1\fR does not hinder removal.
+The files are mailed to the configured address if \fBmaillast\fR and
+\fBmail\fR are configured.
+
+.TP
+\fBminsize\fR \fIsize\fR
+Log files are rotated when they grow bigger than \fIsize\fR bytes, but not
+before the additionally specified time interval (\fBdaily\fR, \fBweekly\fR,
+\fBmonthly\fR, or \fByearly\fR). The related \fBsize\fR option is similar
+except that it is mutually exclusive with the time interval options, and it
+causes log files to be rotated without regard for the last rotation time,
+if specified after the time criteria (the last specified option takes the
+precedence). When \fBminsize\fR is used, both the size and timestamp of a
+log file are considered.
+
+.TP
+\fBmaxsize\fR \fIsize\fR
+Log files are rotated when they grow bigger than \fIsize\fR bytes even
+before the additionally specified time interval (\fBdaily\fR, \fBweekly\fR,
+\fBmonthly\fR, or \fByearly\fR). The related \fBsize\fR option is similar
+except that it is mutually exclusive with the time interval options, and it
+causes log files to be rotated without regard for the last rotation time,
+if specified after the time criteria (the last specified option takes the
+precedence). When \fBmaxsize\fR is used, both the size and timestamp of a
+log file are considered.
+
+.TP
+\fBtabooext\fR [+] \fIlist\fR
+The current taboo extension list is changed (see the \fBinclude\fR directive
+for information on the taboo extensions). If a + precedes the list of
+extensions, the current taboo extension list is augmented, otherwise it
+is replaced. At startup, the taboo extension list
+.IR ,v ,
+.IR .cfsaved ,
+.IR .disabled ,
+.IR .dpkg\-bak ,
+.IR .dpkg\-del ,
+.IR .dpkg\-dist ,
+.IR .dpkg\-new ,
+.IR .dpkg\-old ,
+.IR .rhn\-cfg\-tmp\-* ,
+.IR .rpmnew ,
+.IR .rpmorig ,
+.IR .rpmsave ,
+.IR .swp ,
+.IR .ucf\-dist ,
+.IR .ucf\-new ,
+.IR .ucf\-old ,
+.I ~
+
+.TP
+\fBtaboopat\fR [+] \fIlist\fR
+The current taboo glob pattern list is changed (see the \fBinclude\fR directive
+for information on the taboo extensions and patterns). If a + precedes the list
+of patterns, the current taboo pattern list is augmented, otherwise it
+is replaced. At startup, the taboo pattern list is empty.
+
+.SS Files and Folders
+
+.TP
+\fBcreate \fImode\fR \fIowner\fR \fIgroup\fR, \fBcreate \fIowner\fR \fIgroup\fR
+Immediately after rotation (before the \fBpostrotate\fR script is run)
+the log file is created (with the same name as the log file just rotated).
+\fImode\fR specifies the mode for the log file in octal (the same
+as \fBchmod\fR(2)), \fIowner\fR specifies the user who will own the
+log file, and \fIgroup\fR specifies the group the log file will belong
+to (see the section \fBUSER AND GROUP\fR for details).
+Any of the log file attributes may be omitted, in which case those
+attributes for the new file will use the same values as the original log
+file for the omitted attributes. This option can be disabled using the
+\fBnocreate\fR option.
+
+.TP
+\fBnocreate\fR
+New log files are not created (this overrides the \fBcreate\fR option).
+
+.TP
+\fBcreateolddir \fImode\fR \fIowner\fR \fIgroup\fR
+If the directory specified by \fBolddir\fR directive does not exist, it is
+created. \fImode\fR specifies the mode for the \fBolddir\fR directory
+in octal (the same as \fBchmod\fR(2)), \fIowner\fR specifies the user
+who will own the \fBolddir\fR directory, and \fIgroup\fR specifies the group
+the \fBolddir\fR directory will belong to (see the section \fBUSER AND GROUP
+\fR for details). This option can be disabled using
+the \fBnocreateolddir\fR option.
+
+.TP
+\fBnocreateolddir\fR
+\fBolddir\fR directory is not created by \fBlogrotate\fR when it does not exist.
+
+.TP
+\fBcopy\fR
+Make a copy of the log file, but don't change the original at all.
+This option can be used, for instance, to make a snapshot of the current
+log file, or when some other utility needs to truncate or parse the file.
+When this option is used, the \fBcreate\fR option will have no effect,
+as the old log file stays in place. The \fBcopy\fR option allows storing
+rotated log files on the different devices using \fBolddir\fR directive.
+
+.TP
+\fBnocopy\fR
+Do not copy the original log file and leave it in place.
+(this overrides the \fBcopy\fR option).
+
+.TP
+\fBcopytruncate\fR
+Truncate the original log file to zero size in place after creating a copy,
+instead of moving the old log file and optionally creating a new one.
+It can be used when some program cannot be told to close its logfile
+and thus might continue writing (appending) to the previous log file forever.
+Note that there is a very small time slice between copying the file and
+truncating it, so some logging data might be lost.
+When this option is used, the \fBcreate\fR option will have no effect,
+as the old log file stays in place. The \fBcopytruncate\fR option allows
+storing rotated log files on the different devices using \fBolddir\fR
+directive. The \fBcopytruncate\fR option implies \fBnorenamecopy\fR.
+
+.TP
+\fBnocopytruncate\fR
+Do not truncate the original log file in place after creating a copy
+(this overrides the \fBcopytruncate\fR option).
+
+.TP
+\fBrenamecopy\fR
+Log file is renamed to temporary filename in the same directory by adding
+".tmp" extension to it. After that, \fBpostrotate\fR script is run
+and log file is copied from temporary filename to final filename. In the end,
+temporary filename is removed. The \fBrenamecopy\fR option allows storing
+rotated log files on the different devices using \fBolddir\fR directive.
+The \fBrenamecopy\fR option implies \fBnocopytruncate\fR.
+
+.TP
+\fBnorenamecopy\fR
+Do not rename and copy the original log file
+(this overrides the \fBrenamecopy\fR option).
+
+.TP
+\fBshred\fR
+Delete log files using \fBshred\fR \-u instead of unlink(). This should
+ensure that logs are not readable after their scheduled deletion; this is
+off by default. See also \fBnoshred\fR.
+
+.TP
+\fBnoshred\fR
+Do not use \fBshred\fR when deleting old log files. See also \fBshred\fR.
+
+.TP
+\fBshredcycles\fR \fIcount\fR
+Asks GNU \fBshred\fR(1) to overwrite log files \fBcount\fR times before
+deletion. Without this option, \fBshred\fR's default will be used.
+
+.TP
+\fBallowhardlink\fR
+Rotate files with multiple hard links; this is off by default. The target file
+might get emptied, e.g. with \fBshred\fR or \fBcopytruncate\fR. Use with
+caution, especially when the log files are rotated as root.
+
+.TP
+\fBnoallowhardlink\fR
+Do not rotate files with multiple hard links. See also \fBallowhardlink\fR.
+
+.SS Compression
+
+.TP
+\fBcompress\fR
+Old versions of log files are compressed with \fBgzip\fR(1) by default.
+See also \fBnocompress\fR.
+
+.TP
+\fBnocompress\fR
+Old versions of log files are not compressed. See also \fBcompress\fR.
+
+.TP
+\fBcompresscmd\fR
+Specifies which command to use to compress log files. The default is
+\fBgzip\fR(1). See also \fBcompress\fR.
+
+.TP
+\fBuncompresscmd\fR
+Specifies which command to use to uncompress log files. The default is
+\fBgunzip\fR(1).
+
+.TP
+\fBcompressext\fR
+Specifies which extension to use on compressed logfiles, if compression
+is enabled. The default follows that of the configured compression
+command.
+
+.TP
+\fBcompressoptions\fR
+Command line options may be passed to the compression program, if one is
+in use. The default, for \fBgzip\fR(1), is "\-6" (biased towards high
+compression at the expense of speed).
+If you use a different compression command, you may need to change the
+\fBcompressoptions\fR to match.
+
+.TP
+\fBdelaycompress\fR
+Postpone compression of the previous log file to the next rotation cycle.
+This only has effect when used in combination with \fBcompress\fR.
+It can be used when some program cannot be told to close its logfile
+and thus might continue writing to the previous log file for some time.
+
+.TP
+\fBnodelaycompress\fR
+Do not postpone compression of the previous log file to the next rotation cycle
+(this overrides the \fBdelaycompress\fR option).
+
+.SS Filenames
+
+.TP
+\fBextension \fIext\fR
+Log files with \fIext\fR extension can keep it after the rotation.
+If compression is used, the compression extension (normally \fI.gz\fR)
+appears after \fIext\fR. For example you have a logfile named mylog.foo
+and want to rotate it to mylog.1.foo.gz instead of mylog.foo.1.gz.
+
+.TP
+\fBaddextension \fIext\fR
+Log files are given the final extension \fIext\fR after rotation. If
+the original file already ends with \fIext\fR, the extension is not
+duplicated, but merely moved to the end, that is both \fBfilename\fR and
+\fBfilename\fIext\fR would get rotated to filename.1\fIext\fR. If
+compression is used, the compression extension (normally \fB.gz\fR)
+appears after \fIext\fR.
+
+.TP
+\fBstart \fIcount\fR
+This is the number to use as the base for rotation. For example, if
+you specify 0, the logs will be created with a .0 extension as they are
+rotated from the original log files. If you specify 9, log files will
+be created with a .9, skipping 0\(en8. Files will still be rotated the
+number of times specified with the \fBrotate\fR directive.
+
+.TP
+\fBdateext\fR
+Archive old versions of log files adding a date extension like YYYYMMDD
+instead of simply adding a number. The extension may be configured using
+the \fBdateformat\fR and \fBdateyesterday\fR options.
+
+.TP
+\fBnodateext\fR
+Do not archive old versions of log files with date extension
+(this overrides the \fBdateext\fR option).
+
+.TP
+\fBdateformat\fR \fIformat_string\fR
+Specify the extension for \fBdateext\fR using the notation similar to
+\fBstrftime\fR(3) function. Only %Y %m %d %H %M %S %V and %s specifiers are
+allowed.
+The default value is \-%Y%m%d except hourly, which uses \-%Y%m%d%H as default
+value. Note that also the character separating log name from the extension is
+part of the dateformat string. The system clock must be set past Sep 9th 2001
+for %s to work correctly.
+Note that the datestamps generated by this format must be lexically sortable
+(that is first the year, then the month then the day. For example 2001/12/01 is
+ok, but 01/12/2001 is not, since 01/11/2002 would sort lower while it is later).
+This is because when using the \fBrotate\fR option, \fBlogrotate\fR sorts all
+rotated filenames to find out which logfiles are older and should be removed.
+
+.TP
+\fBdateyesterday\fR
+Use yesterday's instead of today's date to create the \fBdateext\fR
+extension, so that the rotated log file has a date in its name that is
+the same as the timestamps within it.
+
+.TP
+\fBdatehourago\fR
+Use hour ago instead of current date to create the \fBdateext\fR extension,
+so that the rotated log file has a hour in its name that is the same as the
+timestamps within it. Useful with rotate \fBhourly\fR.
+
+.SS Mail
+
+.TP
+\fBmail \fIaddress\fR
+When a log is rotated out of existence, it is mailed to \fIaddress\fR. If
+no mail should be generated by a particular log, the \fBnomail\fR directive
+may be used.
+
+.TP
+\fBnomail\fR
+Do not mail old log files to any address.
+
+.TP
+\fBmailfirst\fR
+When using the \fBmail\fR command, mail the just-rotated file,
+instead of the about-to-expire file.
+
+.TP
+\fBmaillast\fR
+When using the \fBmail\fR command, mail the about-to-expire file,
+instead of the just-rotated file (this is the default).
+
+.SS Additional config files
+
+.TP
+\fBinclude \fIfile_or_directory\fR
+Reads the file given as an argument as if it was included inline
+where the \fBinclude\fR directive appears. If a directory is given,
+most of the files in that directory are read in alphabetic order
+before processing of the including file continues. The only files
+which are ignored are files which are not regular files (such as
+directories and named pipes) and files whose names end with one of
+the taboo extensions or patterns, as specified by the \fBtabooext\fR
+or \fBtaboopat\fR directives, respectively. The given path may
+start with \fB~/\fR to make it relative to the home directory of
+the executing user. For security reasons configuration files must
+not be group-writable nor world-writable.
+
+.SS Scripts
+
+.TP
+\fBsharedscripts\fR
+Normally, \fBprerotate\fR and \fBpostrotate\fR scripts are run for each
+log which is rotated and the absolute path to the log file is passed as first
+argument to the script. That means a single script may be run multiple
+times for log file entries which match multiple files (such as the
+\fI/var/log/news/*\fR example). If \fBsharedscripts\fR is specified, the
+scripts are only run once, no matter how many logs match the wildcarded pattern,
+and whole pattern is passed to them.
+However, if none of the logs in the pattern require rotating, the scripts
+will not be run at all. If the scripts exit with error (or any log fails to
+rotate), the remaining actions will not be executed for any logs. This option
+overrides the \fBnosharedscripts\fR option.
+
+.TP
+\fBnosharedscripts\fR
+Run \fBprerotate\fR and \fBpostrotate\fR scripts for every log file which
+is rotated (this is the default, and overrides the \fBsharedscripts\fR
+option). The absolute path to the log file is passed as first argument
+to the script. The absolute path to the final rotated log file is passed as
+the second argument to the \fBpostrotate\fR script. If the scripts exit with
+error, the remaining actions will not be executed for the affected log only.
+
+.tq
+\fBfirstaction\fR
+.tq
+\ \ \ \ \fIscript\fR
+.tq
+\fBendscript\fR
+The \fIscript\fR is executed once
+before all log files that match the wildcarded pattern are rotated, before
+the prerotate script is run and only if at least one log will actually be
+rotated. These directives may only appear inside a log file definition.
+The whole pattern is passed to the script as its first argument. If the script
+exits with an error, no further processing is done. See also \fBlastaction\fR
+and the \fBSCRIPTS\fR section.
+
+.tq
+\fBlastaction\fR
+.tq
+\ \ \ \ \fIscript\fR
+.tq
+\fBendscript\fR
+The \fIscript\fR is executed once
+after all log files that match the wildcarded pattern are rotated, after the
+postrotate script is run and only if at least one log is rotated. These
+directives may only appear inside a log file definition. The whole pattern is
+passed to the script as its first argument. If the script exits
+with an error, just an error message is shown (as this is the last
+action). See also \fBfirstaction\fR and
+the \fBSCRIPTS\fR section.
+
+.tq
+\fBprerotate\fR
+.tq
+\ \ \ \ \fIscript\fR
+.tq
+\fBendscript\fR
+The \fIscript\fR is executed before
+the log file is rotated and only if the log will actually be rotated. These
+directives may only appear inside a log file definition. Normally,
+the absolute path to the log file is passed as the first argument to the script.
+If \fBsharedscripts\fR is specified, the whole pattern is passed to the script.
+See also \fBpostrotate\fR and the \fBSCRIPTS\fR section.
+See \fBsharedscripts\fR and \fBnosharedscripts\fR for error handling.
+
+.tq
+\fBpostrotate\fR
+.tq
+\ \ \ \ \fIscript\fR
+.tq
+\fBendscript\fR
+The \fIscript\fR is executed
+after the log file is rotated. These directives may only appear inside
+a log file definition. Normally, the absolute path to the log file is
+passed as the first argument to the script and the absolute path to the final
+rotated log file is passed as the second argument to the script. If
+\fBsharedscripts\fR is specified, the whole pattern is passed as the first
+argument to the script, and the second argument is omitted.
+See also \fBprerotate\fR and the \fBSCRIPTS\fR section.
+See \fBsharedscripts\fR and \fBnosharedscripts\fR
+for error handling.
+
+.tq
+\fBpreremove\fR
+.tq
+\ \ \ \ \fIscript\fR
+.tq
+\fBendscript\fR
+The \fIscript\fR is executed
+once just
+before removal of a log file. \fBlogrotate\fR will pass
+the name of file which is soon to be removed as the first argument to the
+script. See also \fBfirstaction\fR and
+the \fBSCRIPTS\fR section.
+
+.SH SCRIPTS
+
+The lines between the starting keyword (e.g. \fBprerotate\fR) and
+\fBendscript\fR (both of which must appear on lines by themselves) are
+executed (using \fB/bin/sh\fR).
+The script inherits some traits from the \fBlogrotate\fR process, including
+stderr, stdout, the current directory, the environment, and the umask.
+Scripts are run as the invoking user and group, irrespective of any \fBsu\fR
+directive. If the \fB\-\-log\fR flag was specified, file descriptor 3 is the
+log file. The current working directory is unspecified.
+
+.SH USER AND GROUP
+
+User and group identifiers are resolved first by trying the textual
+representation and, in case it fails, afterwards by the numeric value.
+
+.SH FILES
+
+.TS
+tab(:);
+l l l.
+\fI/var/lib/logrotate/logrotate.status\fR:Default state file.
+\fI/etc/logrotate.conf\fR:Configuration options.
+.TE
+
+
+.SH "SEE ALSO"
+
+.BR chmod (2),
+.BR gunzip (1),
+.BR gzip (1),
+.BR mail (1),
+.BR shred (1),
+.BR strftime (3),
+.BR strtoul (3),
+<https://github.com/logrotate/logrotate>
+
+.SH AUTHORS
+
+.nf
+Erik Troan, Preston Brown, Jan Kaluza.
+
+<https://github.com/logrotate/logrotate>
+
+.fi