Compare commits
3 Commits
420d7fb5aa
...
82ac83fad8
Author | SHA1 | Date |
---|---|---|
|
82ac83fad8 | |
|
f5943c5b0e | |
|
4f924af140 |
|
@ -28,15 +28,15 @@ copy_files() {
|
||||||
#cp wmde-rp-unison-initial-sync-nfs.sh $PREFIX/
|
#cp wmde-rp-unison-initial-sync-nfs.sh $PREFIX/
|
||||||
cp wmde-rp-generate-known-hosts.sh $PREFIX/
|
cp wmde-rp-generate-known-hosts.sh $PREFIX/
|
||||||
#cp wmde-rp-usersync-nfs.sh $PREFIX/
|
#cp wmde-rp-usersync-nfs.sh $PREFIX/
|
||||||
cp wmde-rp-usersync-ssh.sh $PREFIX/
|
cp wmde-rp-unison-sync-ssh.sh $PREFIX/
|
||||||
cp wmde-rp-progress.sh $PREFIX/
|
cp wmde-rp-progress.sh $PREFIX/
|
||||||
cp wmde-rp-common.sh $PREFIX/
|
cp wmde-rp-common.sh $PREFIX/
|
||||||
chmod 755 $PREFIX/*
|
chmod 755 $PREFIX/*
|
||||||
|
|
||||||
cp wmde-rp-usersync.service /etc/systemd/user/wmde-rp-usersync.service
|
cp wmde-rp-sync.service /etc/systemd/user/wmde-rp-sync.service
|
||||||
mkdir -p /etc/systemd/user/default.target.wants
|
mkdir -p /etc/systemd/user/default.target.wants
|
||||||
rm -rf /etc/systemd/user/default.target.wants/wmde-rp-usersync.service
|
rm -rf /etc/systemd/user/default.target.wants/wmde-rp-sync.service
|
||||||
ln -s /etc/systemd/user/wmde-rp-usersync.service /etc/systemd/user/default.target.wants/wmde-rp-usersync.service
|
ln -s /etc/systemd/user/wmde-rp-sync.service /etc/systemd/user/default.target.wants/wmde-rp-sync.service
|
||||||
|
|
||||||
cp wmde-rp-full.prf /etc
|
cp wmde-rp-full.prf /etc
|
||||||
cp wmde-rp-config.prf /etc
|
cp wmde-rp-config.prf /etc
|
||||||
|
|
|
@ -1,11 +1,52 @@
|
||||||
|
|
||||||
|
WMDERPDIR=.wmde-osync
|
||||||
|
|
||||||
|
LOGFILE=$HOMEDIR/$WMDERPDIR/usersync.log
|
||||||
|
PIDFILE=$HOMEDIR/$WMDERPDIR/usersync.pid
|
||||||
|
FIRSTSYNC=$HOMEDIR/$WMDERPDIR/firstsync-done
|
||||||
|
FULLSYNC=$HOMEDIR/$WMDERPDIR/fullsync-done
|
||||||
|
CONFIGSYNC=$HOMEDIR/$WMDERPDIR/configsync-done
|
||||||
|
|
||||||
|
HOMEDIR=$(getent passwd "$PAM_USER" | cut -d: -f6)
|
||||||
|
|
||||||
|
create_wmderpdir ()
|
||||||
|
{
|
||||||
|
mkdir -p $HOMEDIR/$WMDERPDIR
|
||||||
|
LASTERROR=$?
|
||||||
|
if [ $LASTERROR -ne 0 ]; then
|
||||||
|
echo $$ > $CONFIGSYNC
|
||||||
|
echo $$ > $FULLSYNC
|
||||||
|
exit $LASTERROR
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
create_knonw_hosts_and_nfshomedir()
|
||||||
|
{
|
||||||
|
KNOWNHOSTS=`$PREFIX/wmde-rp-generate-known-hosts.sh`
|
||||||
|
LASTERROR=$?
|
||||||
|
if [ $LASTERROR -ne 0 ]; then
|
||||||
|
echo $$ > $CONFIGSYNC
|
||||||
|
echo $$ > $FULLSYNC
|
||||||
|
exit $LASTERROR
|
||||||
|
fi
|
||||||
|
|
||||||
LOGFILE=$HOMEDIR/.wmdesync/usersync.log
|
echo $KNOWNHOSTS > "$HOMEDIR/$WMDERPDIR/known_hosts"
|
||||||
PIDFILE=$HOMEDIR/.wmdesync/usersync.pid
|
LASTERROR=$?
|
||||||
FIRSTSYNC=$HOMEDIR/.wmdesync/firstsync-done
|
if [ $LASTERROR -ne 0 ]; then
|
||||||
FULLSYNC=$HOMEDIR/.wmdesync/fullsync-done
|
echo $$ > $CONFIGSYNC
|
||||||
CONFIGSYNC=$HOMEDIR/.wmdesync/configsync-done
|
echo $$ > $FULLSYNC
|
||||||
SMALLFILESSYNC=$HOMEDIR/.wmdesync/smallfilessync-done
|
exit $LASTERROR
|
||||||
|
fi
|
||||||
|
|
||||||
|
# The following creates users home directory on the nfs server if not already exists
|
||||||
|
ssh $SSHARGS $PAM_USER@$NFSSERVER /usr/bin/true
|
||||||
|
LASTERROR=$?
|
||||||
|
if [ $LASTERROR -ne 0 ]; then
|
||||||
|
echo $$ > $CONFIGSYNC
|
||||||
|
echo $$ > $FULLSYNC
|
||||||
|
exit $LASTERROR
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
#!/bin/sh
|
||||||
|
set -x
|
||||||
|
|
||||||
|
. /etc/wmde-rp.conf
|
||||||
|
|
||||||
|
USER=`whoami`
|
||||||
|
PAM_USER=$USER
|
||||||
|
PAM_TYPE=open_session
|
||||||
|
|
||||||
|
. $PREFIX/wmde-rp-check-pam-user.sh
|
||||||
|
. $PREFIX/wmde-rp-common.sh
|
||||||
|
|
||||||
|
|
||||||
|
SSHARGS="-o UserKnownHostsFile=$HOMEDIR/$WMDERPDIR/known_hosts"
|
||||||
|
|
||||||
|
create_wmderpdir
|
||||||
|
|
||||||
|
if [ -f "$PIDFILE" ]; then
|
||||||
|
OLD_PID=`cat "$PIDFILE"`
|
||||||
|
if kill -0 "$OLD_PID" 2> /dev/null; then
|
||||||
|
echo "Usersync already running." >> $LOGFILE
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo 0 > $CONFIGSYNC
|
||||||
|
echo 0 > $FULLSYNC
|
||||||
|
echo $$ > $PIDFILE
|
||||||
|
|
||||||
|
|
||||||
|
create_knonw_hosts_and_nfshomedir
|
||||||
|
|
|
@ -3,7 +3,7 @@ Description=WMDE RP User Sync
|
||||||
After=default.target
|
After=default.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/bin/bash -c 'exec /usr/local/bin/wmde/wmde-rp-usersync-ssh.sh'
|
ExecStart=/bin/bash -c '. /etc/wmde-rp.conf; exec $PREFIX/wmde-rp-$SYNCPRG-ssh.sh'
|
||||||
Restart=always
|
Restart=always
|
||||||
RestartSec=20
|
RestartSec=20
|
||||||
TimeoutStopSec=5
|
TimeoutStopSec=5
|
|
@ -61,9 +61,6 @@ if [ $LASTERROR -ne 0 ]; then
|
||||||
exit $LASTERROR
|
exit $LASTERROR
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
echo $KNOWNHOSTS > "$HOMEDIR/.wmdesync/known_hosts"
|
echo $KNOWNHOSTS > "$HOMEDIR/.wmdesync/known_hosts"
|
||||||
LASTERROR=$?
|
LASTERROR=$?
|
||||||
if [ $LASTERROR -ne 0 ]; then
|
if [ $LASTERROR -ne 0 ]; then
|
|
@ -3,7 +3,7 @@ NFSSERVER=nfsserver.gs.wikimedia.de
|
||||||
NFSHOMES=/mnt/home
|
NFSHOMES=/mnt/home
|
||||||
|
|
||||||
PREFIX=/usr/local/bin/wmde
|
PREFIX=/usr/local/bin/wmde
|
||||||
SYNPRG=unison
|
SYNCPRG=unison
|
||||||
|
|
||||||
|
|
||||||
ADMIN_USERS="admin root" # never run roaming profiles for this users
|
ADMIN_USERS="admin root" # never run roaming profiles for this users
|
||||||
|
|
Loading…
Reference in New Issue