mirror of
https://github.com/samba-team/samba.git
synced 2025-03-20 22:50:26 +03:00
ctdb-eventscripts: Ensure $GANRECDIR points to configured subdirectory
Check that the $GANRECDIR symlink points to the location specified by $CTDB_GANESHA_REC_SUBDIR and replace it if incorrect. This handles reconfiguration and filesystem changes. While touching this code: * Create the $GANRECDIR link as a separate step if it doesn't exist. This means there is only 1 place where the link is created. * Change some variables names to the style used for local function variables. * Remove some "ln failed" error messages. ln failures will be logged anyway. * Add -v to various mkdir/rm/ln commands so that these actions are logged when they actually do something. Signed-off-by: Martin Schwenke <martin@meltin.net> Reviewed-by: Amitay Isaacs <amitay@gmail.com> Autobuild-User(master): Amitay Isaacs <amitay@samba.org> Autobuild-Date(master): Fri Jun 20 05:40:16 CEST 2014 on sn-devel-104
This commit is contained in:
parent
6f43896e12
commit
aac607d727
@ -84,25 +84,29 @@ create_ganesha_recdirs ()
|
||||
{
|
||||
[ -n "$CTDB_GANESHA_REC_SUBDIR" ] || CTDB_GANESHA_REC_SUBDIR=".ganesha"
|
||||
|
||||
MOUNTS=$(mount -t $CTDB_CLUSTER_FILESYSTEM_TYPE)
|
||||
if [ -z "$MOUNTS" ]; then
|
||||
_mounts=$(mount -t $CTDB_CLUSTER_FILESYSTEM_TYPE)
|
||||
if [ -z "$_mounts" ]; then
|
||||
echo "startup $CTDB_CLUSTER_FILESYSTEM_TYPE not ready"
|
||||
exit 0
|
||||
fi
|
||||
MNTPT=$(echo "$MOUNTS" | sort | awk 'NR == 1 {print $3}')
|
||||
mkdir -p $MNTPT/$CTDB_GANESHA_REC_SUBDIR
|
||||
if [ -e $GANRECDIR ]; then
|
||||
if [ ! -L $GANRECDIR ] ; then
|
||||
rm -rf $GANRECDIR
|
||||
if ! ln -s $MNTPT/$CTDB_GANESHA_REC_SUBDIR $GANRECDIR ; then
|
||||
echo "ln failed"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
if ! ln -sf $MNTPT/$CTDB_GANESHA_REC_SUBDIR $GANRECDIR ; then
|
||||
echo "ln failed"
|
||||
_mntpt=$(echo "$_mounts" | sort | awk 'NR == 1 {print $3}')
|
||||
_link_dst="${_mntpt}/${CTDB_GANESHA_REC_SUBDIR}"
|
||||
mkdir -vp "$_link_dst"
|
||||
if [ -e "$GANRECDIR" ]; then
|
||||
if [ ! -L "$GANRECDIR" ] ; then
|
||||
rm -vrf "$GANRECDIR"
|
||||
else
|
||||
_t=$(readlink "$GANRECDIR")
|
||||
if [ "$_t" != "$_link_dst" ] ; then
|
||||
rm -v "$GANRECDIR"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
# This is not an "else". It also re-creates the link if it was
|
||||
# removed above!
|
||||
if [ ! -e "$GANRECDIR" ]; then
|
||||
ln -sv "$_link_dst" "$GANRECDIR"
|
||||
fi
|
||||
|
||||
mkdir -p $GANRECDIR2
|
||||
mkdir -p $GANRECDIR3
|
||||
|
Loading…
x
Reference in New Issue
Block a user