These probably aren't the most professional system maintenance
scripts ever written, but they get the job done. The first one,
logroll.sh, does just what it says. It rolls over my procmail
and getmail logs, saving them with the date appended and starts
a new log like so:
# Script to rotate ~/.procmail/.procmail-log and
# ~/.getmail/log every week so they don't start to
# take on huge proportions.
cp ~/.procmail/.procmail-log \
echo > ~/.procmail/.procmail-log
cp ~/.getmail/log ~/.getmail/`date +"%Y%m%d"`.log.txt
echo > ~/.getmail/log
There's a harder way which I tried first, not thinking, where
the log is copied with the date appended, then delete the log,
then recreate with touch, then chmod to 0600. Lot of work and
unnecessary. All you have to do is copy it with the date and
then echo nothing into it like 'echo >'. Still the same file
as before, just nothing in it, starting over fresh.
The next one is for root, to backup changes in /etc and /var/db
without having to do a dump, just using rsync:
# Weelky rsync changes in /etc/ & /var/db to /data2/backups
/usr/local/bin/rsync -arvvgt /etc/ /data2/backups/etc && \
/usr/local/bin/rsync -arvvgt /var/db/ /data2/backups/db/
The double 'vv' is for very verbose to give lots of info.
The last script's comments make it pretty self explanatory.
Just a way to keep track of what you've installed lately.
# Script lists /var/db/pkg & outputs it to a file with
# the date appended. Then it diffs it against the previous
# list from the week before & outputs the differences to a
# separate file with the date appended. Then it takes the
# most recent list wth date appended & copies/overwrites
# the previous weeks listing to be current.
ls -al /var/db/pkg > `date +"%Y%m%d"`pkgs.txt
diff pkgs.inst.list.txt `date +"%Y%m%d"`pkgs.txt > \
mv pkgs.inst.list.txt `date +"%Y%m%d"`previous.week.pkgs.txt
cp `date +"%Y%m%d"`pkgs.txt pkgs.inst.list.txt
powered by performancing firefox