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-generate-known-hosts.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-common.sh $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
 | 
			
		||||
	rm -rf /etc/systemd/user/default.target.wants/wmde-rp-usersync.service
 | 
			
		||||
	ln -s /etc/systemd/user/wmde-rp-usersync.service /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-sync.service /etc/systemd/user/default.target.wants/wmde-rp-sync.service
 | 
			
		||||
 | 
			
		||||
	cp wmde-rp-full.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
 | 
			
		||||
PIDFILE=$HOMEDIR/.wmdesync/usersync.pid
 | 
			
		||||
FIRSTSYNC=$HOMEDIR/.wmdesync/firstsync-done
 | 
			
		||||
FULLSYNC=$HOMEDIR/.wmdesync/fullsync-done
 | 
			
		||||
CONFIGSYNC=$HOMEDIR/.wmdesync/configsync-done
 | 
			
		||||
SMALLFILESSYNC=$HOMEDIR/.wmdesync/smallfilessync-done
 | 
			
		||||
	echo $KNOWNHOSTS > "$HOMEDIR/$WMDERPDIR/known_hosts"
 | 
			
		||||
	LASTERROR=$?  
 | 
			
		||||
	if [ $LASTERROR -ne 0 ]; then 
 | 
			
		||||
		echo $$ > $CONFIGSYNC
 | 
			
		||||
		echo $$ > $FULLSYNC
 | 
			
		||||
		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
 | 
			
		||||
 | 
			
		||||
[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
 | 
			
		||||
RestartSec=20
 | 
			
		||||
TimeoutStopSec=5
 | 
			
		||||
| 
						 | 
				
			
			@ -61,9 +61,6 @@ if [ $LASTERROR -ne 0 ]; then
 | 
			
		|||
	exit $LASTERROR 
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
echo $KNOWNHOSTS > "$HOMEDIR/.wmdesync/known_hosts"
 | 
			
		||||
LASTERROR=$?  
 | 
			
		||||
if [ $LASTERROR -ne 0 ]; then 
 | 
			
		||||
| 
						 | 
				
			
			@ -3,7 +3,7 @@ NFSSERVER=nfsserver.gs.wikimedia.de
 | 
			
		|||
NFSHOMES=/mnt/home
 | 
			
		||||
 | 
			
		||||
PREFIX=/usr/local/bin/wmde
 | 
			
		||||
SYNPRG=unison
 | 
			
		||||
SYNCPRG=unison
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ADMIN_USERS="admin root" # never run roaming profiles  for this users
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue