Fixed zone generation
[mirror/userdir-ldap.git] / ud-replicate
index c69c6b8..58f705b 100755 (executable)
@@ -5,8 +5,14 @@ set -e
 HOST=`hostname -f`
 cd /tmp/
 cd /var/lib/misc > /dev/null 2>&1 || cd /var/state/glibc/ > /dev/null 2>&1 || cd /var/db/ > /dev/null 2>&1
-lockfile -r 1 -l 3600 lock
+lockfile -r 1 -l 3600 lock > /dev/null 2>&1
+trap "rm -f lock > /dev/null 2>&1" exit
 rsync -e ssh -rp sshdist@samosa:/var/cache/userdir-ldap/hosts/$HOST . > /dev/null 2>&1
-makedb $HOST/passwd.tdb -o passwd.db > /dev/null 2>&1
-makedb $HOST/shadow.tdb -o shadow.db > /dev/null 2>&1
-makedb $HOST/group.tdb -o group.db > /dev/null 2>&1
+makedb $HOST/passwd.tdb -o passwd.db.t > /dev/null 2>&1
+(umask 027 && makedb $HOST/shadow.tdb -o shadow.db.t) > /dev/null 2>&1
+chown root.shadow shadow.db.t; chmod 0640 shadow.db.t
+makedb $HOST/group.tdb -o group.db.t > /dev/null 2>&1
+mv -f passwd.db.t passwd.db
+mv -f shadow.db.t shadow.db
+mv -f group.db.t group.db
+ln -sf $HOST/ssh-rsa-shadow . > /dev/null 2>&1