The
savelog
command saves and optionally compresses old copies of files. Older versions
of
file
are named:
file.<number><compress_suffix>
where
<number>
is the version number, 0 being the newest. Version numbers > 0 are compressed
unless
-l
prevents it. Version number 0 is not compressed because a process might still
have
file
opened for I/O. Only
cycle
versions of the file are kept.
If the file does not exist and
-t
was given, it will be created.
For files that do exist and have lengths greater than zero, the following
actions are performed:
1)
Version numbered files are cycled. Version
cycle-2
is moved to version
cycle-3,
version
cycle-1
is moved to version
cycle-2 ,
and so on. Finally version 0 is moved to version 1, and version
cycle
is deleted. Both
compressed names and uncompressed names are cycled, regardless of
-l.
Missing version files are ignored.
2)
The new
file.1
is compressed unless the
-l
flag was given. It is changed subject to the
-m, -u, and -g
flags.
3)
The main file is moved to
file.0.
4)
If the
-m, -u, -g, -t, or -p
flags are given, then an empty
file
is created subject to the given flags. With the
-p
flag, the file is created with the same owner, group, and permissions as
before.
5)
The new
file.0
is changed subject to the
-m, -u, and -g
flags.
Since the version numbers start with 0, version number
cycle
is never formed. The
cycle
count must be at least 2.
OPTIONS
-m mode
chmod the log files to mode, implies
-t
-u user
chown log files to user, implies
-t
-g group
chgrp log files to group, implies
-t
-c cycle
Save cycle versions of the logfile (default: 7)
-t
touch new logfile into existence
-l
don't compress any log files (default: do compress)
-p
preserve owner, group, and permissions of logfile
-j
compress with bzip2 instead of gzip
-C
force cleanup of cycled logfiles
-d
use standard date for rolling
-r
use
rolldir
instead of . to roll files
-n
do not rotate empty files
-q
be quiet
BUGS
If a process is still writing to
file.0,
and savelog moves it to
file.1
and compresses it, data could be lost.