]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - etc/periodic/daily/200.backup-passwd
unfinished sblive driver, playback/mixer only for now - not enabled in
[FreeBSD/FreeBSD.git] / etc / periodic / daily / 200.backup-passwd
1 #!/bin/sh
2 #
3 # $FreeBSD$
4 #
5 bak=/var/backups
6
7 if [ -f /etc/master.passwd -o -f /etc/group ] ; then
8     echo ""
9     echo "Backup passwd and group files:"
10
11     if [ ! -f $bak/master.passwd.bak ] ; then
12         echo "no $bak/master.passwd.bak"
13         cp -p /etc/master.passwd $bak/master.passwd.bak
14     fi
15
16     if cmp -s $bak/master.passwd.bak /etc/master.passwd; then :; else
17         echo "$host passwd diffs:"
18         diff $bak/master.passwd.bak /etc/master.passwd |\
19                 sed 's/^\([<>] [^:]*\):[^:]*:/\1:(password):/'
20         mv $bak/master.passwd.bak $bak/master.passwd.bak2
21         cp -p /etc/master.passwd $bak/master.passwd.bak
22     fi
23
24     if [ ! -f $bak/group.bak ] ; then
25         echo "no $bak/group.bak"
26         cp -p /etc/group $bak/group.bak
27     fi
28
29     if cmp -s $bak/group.bak /etc/group; then :; else
30         echo "$host group diffs:"
31         diff $bak/group.bak /etc/group
32         mv $bak/group.bak $bak/group.bak2
33         cp -p /etc/group $bak/group.bak
34     fi
35
36     if [ -f /etc/group ] ; then
37         echo ""
38         echo "Verifying group file syntax:"
39         chkgrp /etc/group
40     fi
41 fi