#!/bin/bash # version 2.1.3 # test exitence of clusterserver.conf CONFFILE="/etc/clusterserver.conf" if [ ! -f ${CONFFILE} ]; then echo "Cant find ${CONFFILE} !" exit 1 fi . ${CONFFILE} # var PROFILE=/etc/profile # maui pbs pbs_maui() { echo " - Reseting Pbs node list" cp -f $NODESFILE ${PBS_HOME}/server_priv/nodes service openpbs restart # maui echo " - Reseting maui" /usr/bin/setup_maui } # gexec gexec_modif(){ echo " - Resetting basic conf for GEXEC" GEXEC="export GEXEC_SVRS" grep -vi "$GEXEC" $PROFILE > $PROFILE.tmp DEFAULT="$GEXEC=\"" for i in $(cat $NODESFILE); do newname=$(echo $i | cut -d "." -f 1) DEFAULT="$DEFAULT $newname" done DEFAULT="$DEFAULT\"" echo $DEFAULT >> $PROFILE.tmp cp -f $PROFILE.tmp $PROFILE } # distcc distcc_m() { DISTCC="DISTCC_HOSTS" grep -vi "$DISTCC" $PROFILE > $PROFILE.tmp echo "export DISTCC_HOSTS=\$GEXEC_SVRS" >> $PROFILE.tmp cp -f $PROFILE.tmp $PROFILE } # dsh is autoset cause : CLUSTER=$NODESFILE # rshp et mput rshp_var() { echo " - Reseting rshp and mput" # add the -m prefix to list of nodes cp /dev/null /tmp/prepa # use alias for rshp and mput cp -f /dev/null /tmp/node.alias.tmp cp -f /dev/null $NODESFILE.alias cat /etc/nodes_list | awk -F"." '{print $1}' > /tmp/node.alias.tmp1 sed -e "s/[a-z.]//g" /tmp/node.alias.tmp1 > /tmp/node.alias.tmp for i in `cat /tmp/node.alias.tmp` ; do echo n$i >> $NODESFILE.alias ; done for NODE_NAME in `cat $NODESFILE.alias` do echo -n "-m $NODE_NAME " >> /tmp/prepa done # add value in $PROFILE TEST_NODES=`grep NKA $PROFILE.tmp` VALUES_NODES_KA="-c ssh `cat /tmp/prepa`" if [ -z "$TEST_NODES" ]; then echo "export NKA=\"$VALUES_NODES_KA\"" >> $PROFILE.tmp else perl -pi -e "s|export NKA.*|export NKA\=\"$VALUES_NODES_KA\"|" $PROFILE.tmp fi cp -f $PROFILE.tmp $PROFILE } # urpmi // urpmipp() { echo "clic:ka-run:-c ssh" `cat /tmp/prepa` > /etc/urpmi/parallel.cfg } # mpi lam mpi_lam() { echo " - Reseting Mpi files" cp -f $NODESFILE ${MPICH_DIR}/${MPI_COMPUTER} echo " - Reseting Lam" cp -f $NODESFILE ${LAM_NODES_FILE} echo `hostname` >> ${LAM_NODES_FILE} } ############# # main ############# echo echo "-----------------------------------------------" echo " Generate config file for services" echo "--------------------------------------------------" echo " Later you can Modify your $NODESFILE with" echo " /usr/bin/setup_modif_list_node script " echo "---------------------------------------------------" echo sleep 3 gexec_modif distcc_m pbs_maui mpi_lam rshp_var urpmipp # rshp_var needed before to generate /tmp/prepa