Hi Folks,
I'm a very new systems engineer and my scripting skills is pretty much -1 to Zero.
I have an issue at a school I have been directed for Casper Support.
They have a setup where Macs are bound to AD and user home folders, i.e. desktop, documents, downloads, are being redirected to a network share. This has been setup by a previous engineer, no longer works at the school.
The problem is an intermittent problem where sometimes, students do not have access to their desktops, the files don't appear on the desktop. Most times to fix the issue is to launch finder and click on "desktop" on the side bar. The School's network admin states that it could be a timing issue or something within the script that skips the loop.. something along those lines.
Because I suck at scripting and still learning, I hope you guys can help me out and check to see if there are some issues within this script.
#!/bin/sh
#
# 23/11/2012 Cranbrook School - v1.8 - Folder Redirection Script
# 24/01/2014 Updated for Casper Deployment
#USER=`ls -la /dev/console | cut -d " " -f 4`
#WSERVER=`ps ax | grep -i WindowServer | grep -v grep | cut -d " " -f 2`
MYDSKDIR="/Volumes/net/Desktop"
MYDOCDIR="/Volumes/net/My Documents"
MYPICDIR="/Volumes/net/My Documents/My Pictures"
MYVIDDIR="/Volumes/net/My Documents/My Videos"
MYMUSDIR="/Volumes/net/My Documents/My Music"
#ECHO ----------------- Starting Script -------------------
sleep 10
#ECHO ----------------- Checking Folders ---------------
if [ -d "$MYDOCDIR" ]; then
echo "$MYDOCDIR is Available!"
else
echo "$MYDOCDIR is Empty"
fi
if [ -a "$MYDSKDIR" ]; then
echo "$MYDSKDIR is Available!"
else
echo "$MYDSKDIR is Empty"
fi
if [ -d "$MYPICDIR" ]; then
echo "$MYPICDIR is Available!"
else
echo "$MYPICDIR is Empty"
fi
if [ -d "$MYVIDDIR" ]; then
echo "$MYVIDDIR is Available!"
else
echo "$MYVIDDIR is Empty"
fi
if [ -d "$MYMUSDIR" ]; then
echo "$MYMUSDIR is Available!"
else
echo "$MYMUSDIR is Empty"
fi
if [ -d "${MYDSKDIR}" -a -d "${MYDOCDIR}" ]; then
echo "$MYDSKDIR and $MYDOCDIR are both Available!"
else
echo
echo "####Your Account has a Problem, Please Visit IT Dept####"
echo
exit 1
# say "Your Account has a Problem! Please see Steve @ I T Department"
sleep 5
# sudo kill -HUP $WSERVER
fi
#ECHO ----------------- Redirecting Folders ---------------
#Wait for OS X to Create Local Homes
sleep 4
rm -Rf "/Users/$USER/Documents"
ln -sFfh "/Volumes/net/My Documents" "/Users/$USER/Documents"
rm -Rf "/Users/$USER/Desktop"
ln -sFfh /Volumes/net/Desktop "/Users/$USER"
rm -Rf "/Users/$USER/Pictures"
ln -sFfh "/Volumes/net/My Documents/My Pictures" "/Users/$USER/Pictures"
rm -Rf "/Users/$USER/Movies"
ln -sFfh "/Volumes/net/My Documents/My Videos" "/Users/$USER/Movies"
rm -Rf "/Users/$USER/Music"
ln -sFfh "/Volumes/net/My Documents/My Music" "/Users/$USER/Music"
rm -Rf "/Users/$USER/Downloads"
ln -sFfh "/Volumes/net/My Documents/Downloads" "/Users/$USER/Downloads"
ECHO ----------------- Completed Script -------------------
#$SLEEP 4
killall Finder
#killall Terminal
exit 0
Kind Regards,
Kevin
