X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=ud-replicate;h=bf1d2db5558c9ee9a1e1a6cfa2831cc8ca429c0c;hb=c1f768412991931629160580640b1850609b2b5a;hp=9903428499ec3ef1bd6473c2147cb5fb500788cf;hpb=ad069b0cc87569e0ad67ed4803f8df419a132afd;p=mirror%2Fuserdir-ldap.git diff --git a/ud-replicate b/ud-replicate index 9903428..bf1d2db 100755 --- a/ud-replicate +++ b/ud-replicate @@ -2,7 +2,7 @@ # Copyright (c) 1999-2001 Jason Gunthorpe # Copyright (c) 2002-2003 Ryan Murray -# Copyright (c) 2004 Joey Schulze +# Copyright (c) 2004-2005 Joey Schulze # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -28,6 +28,8 @@ else verbose=-v fi +PATH=/sbin:/usr/sbin:/bin:/usr/bin +export PATH HOST=`hostname -f` cd /tmp/ cd /var/lib/misc || cd /var/state/glibc/ || cd /var/db/ @@ -39,18 +41,22 @@ case $HOST in udhost= ;; *) - udhost="sshdist@samosa:" + udhost="sshdist@db:" ;; esac rsync ${verbose} -e ssh -rp "${udhost}/var/cache/userdir-ldap/hosts/$HOST" . makedb "$HOST/passwd.tdb" -o passwd.db.t -(umask 027 && makedb "$HOST/shadow.tdb" -o shadow.db.t) -chown root.shadow shadow.db.t; chmod 0640 shadow.db.t +if [ -s "$HOST/shadow.tdb" ] +then + (umask 027 && makedb "$HOST/shadow.tdb" -o shadow.db.t) + chown root.shadow shadow.db.t + chmod 0640 shadow.db.t + mv -f shadow.db.t shadow.db +fi makedb "$HOST/group.tdb" -o group.db.t 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" . ln -sf "$HOST/ssh_known_hosts" . @@ -63,7 +69,7 @@ if [ -x /usr/bin/dchroot ]; then if [ -x "$c/usr/bin/makedb" ] then - test ! -d "$c/var/lib/misc/HOST" || mkdir -p "$c/var/lib/misc/HOST" + test ! -d "$c/var/lib/misc/$HOST" || mkdir -p "$c/var/lib/misc/$HOST" rsync -a ${verbose} $HOST/group.tdb $HOST/passwd.tdb $HOST/ssh* "$c/var/lib/misc/$HOST" @@ -74,7 +80,7 @@ if [ -x /usr/bin/dchroot ]; then chroot "$c" makedb "/var/lib/misc/$HOST/group.tdb" -o /var/lib/misc/group.db.t mv -f "$c/var/lib/misc/passwd.db.t" "$c/var/lib/misc/passwd.db" mv -f "$c/var/lib/misc/group.db.t" "$c/var/lib/misc/group.db" - ln -sf "$c/var/lib/misc/$HOST/ssh_known_hosts" "$c/var/lib/misc/" + ln -sf "$HOST/ssh_known_hosts" "$c/var/lib/misc/" ln -sf ../../var/lib/misc/ssh_known_hosts "$c/etc/ssh" fi done