Linux Commands Examples

A great documentation place for Linux commands

savelog

save a log file


see also : logrotate

Synopsis

savelog [-m mode] [-u user] [-g group] [-t] [-p] [-c cycle] [-l] [-j] [-J] [-1 .. -9] [-C] [-d] [-l] [-r rolldir] [-n] [-q] [-D dateformat] file ...


add an example, a script, a trick and tips

: email address (won't be displayed)
: name

Step 2

Thanks for this example ! - It will be moderated and published shortly.

Feel free to post other examples
Oops ! There is a tiny cockup. A damn 404 cockup. Please contact the loosy team who maintains and develops this wonderful site by clicking in the mighty feedback button on the side of the page. Say what happened. Thanks!

examples

0
source
            
cd /var/log/proftpd
savelog -q -u root -g adm -m 640 -c 12 /var/log/proftpd/xferreport
ftpstats -a -r -l 2 -d -h -f /var/log/proftpd/xferlog 2>/dev/null >/var/log/proftpd/xferreport
ftpstats -a -r -l 2 -d -h -f /var/log/proftpd/xferlog 2>/dev/null >/var/log/proftpd/xferreport
savelog -q -u root -g adm -m 640 -c 7 /var/log/proftpd/xferlog

description

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 file.2 is moved to version file.3, version file.1 is moved to version file.2, and so on. Finally version file.0 is moved to version file.1, and version file 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.

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). The cycle count must be at least 2.

-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

-J

compress with xz instead of gzip

For xz no strength option is set, and xz decides on the default based on the total amount of physical RAM. Note that xz can use a very large amount of memory for the higher compression levels.

-1 .. -9

compression strength or memory usage (default: 9, except for xz)

-C

force cleanup of cycled logfiles

-d

use standard date for rolling

-D dateformat

override date format, in the form of [MMDDhhmm[[CC]YY][.ss]]

-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.


see also

logrotate

How can this site be more helpful to YOU ?


give  feedback