#! /bin/bash ###### PRELIMINARY ################################ ## Manual intervention required #1. testdir='/share/apps/configrepo' if [ ! -d "$testdir" ] ; then echo "$testdir" not found echo "Abort. Please create the $testdir directory and try again" exit 1 else #if needed #also: elif [new condition] echo "$testdir" found. Proceed. fi echo ' ' ###### END OF PRELIMINARY ################################ #2. Intel Paralell studio, parallel_studio_xe_2017_update2.tgz (huge, ~ 4 GB) cd $testdir # Preferably install intel parallel studio in cluster mode (assuming the are already many nodes up and running in the cluster). To this end, first create a machine.LINUX file in /share/apps/configrepo to list down all ssh-reachable nodes, i.e., 192.168.1.10, 192.168.1.21, 192.168.1.22, .... This can be done using the folling command: echo 192.168.1.10 > temp.dat; $(coc-sshreachable | cat /share/tmp/ssh-reachable2.dat > temp2.dat); cat temp.dat temp2.dat > machine.LINUX; cat machine.LINUX; rm -rf temp.dat temp2.dat; mv machine.LINUX /share/apps/configrepo # Note that the first entry in machine.LINUX must be the frontend, 192.168.1.10. #wget http://comsics.usm.my/tlyoon/configrepo/howto/customise_centos/intel/inst_intel_parallelstudioXE17.txt wget http://anicca.usm.my/tlyoon/configrepo/howto/customise_centos/intel/inst_intel_parallelstudioXE17_opt.txt chmod +x inst_intel_parallelstudioXE17_opt.txt ./inst_intel_parallelstudioXE17_opt.txt # Choose to install in the default directorly /opt/intel. Use 'cluster intallation' (instead of the default single-machine) option to group-install intel parallel studio in all sshreachable nodes, as already listed in /share/apps/configrepo/machine.LINUX. Tick the 'check shared directory option' while doing the installation. # After the completion of the installation of intel parallel studio in all nodes, it is possible that the necessary symbolic link required by later applications is not done /opt/intel. For the sake of robustness, perform the symbolic linking in all nodes via the folliwing command line, i.e., cd /opt/intel coc-sshreachable host2=$(cat /share/tmp/ssh-reachable2.dat) for i in $host2 do lastdir=compilers_and_libraries_2017 #$(cd /opt/intel; ls -d */ | grep compilers_and_libraries | awk 'END {print}') yn=$(ssh -X -Y -oStrictHostKeyChecking=no $i "if [ -d /opt/intel/compilers_and_libraries ]; then echo 1; else echo 0; fi") echo $i $yn if [ "$yn" -eq 1 ];then echo /opt/intel/compilers_and_libraries exists in $i. Not to do symbolic link fi if [ "$yn" -eq 0 ];then echo /opt/intel/compilers_and_libraries does not exist in $i. Do symbolic link ssh -X -Y -oStrictHostKeyChecking=no $i "cd /opt/intel; ln -s $lastdir compilers_and_libraries" fi done #3. Install Mathematica in /share/apps/ cd /share/apps/configrepo; scp root@anicca.usm.my:/share/apps/configrepo/Mathematica_11.0.0_LINUX.sh . ./Mathematica_11.0.0_LINUX.sh ### response to prompt, install it in /share/apps/Wolfram instead of in the default directory #4. install pgi compilers, see https://www.pgroup.com/doc/pgiinstall174.pdf or https://www.pgroup.com/resources/docs/18.7/x86/pgi-install-guide/index.htm cd /share/apps/configrepo; wget http://comsics.usm.my/tlyoon/configrepo/howto/customise_centos/inst_pgi.txt chmod +x inst_pgi.txt ./inst_pgi.txt #4.5. install gaussian 09 cd /share/apps/configrepo; wget http://comsics.usm.my/tlyoon/configrepo/howto/customise_centos/gaussian/inst_g09; chmod +x inst_g09 ./inst_g09 #5. Install wien2k 19.1 cd /share/apps/configrepo; wget http://comsics.usm.my/configrepo/howto/customise_centos/WIEN2k/WIEN2k_19.1/inst_wien2k_19.1.txt; sh inst_wien2k_19.1.txt #6. Download but dont install Anaconda3-5.3.1 for CentOS cd /share/apps/configrepo wget http://comsics.usm.my/tlyoon/configrepo/howto/customise_centos/inst_anaconda.txt chmod +x inst_anaconda.txt # ./inst_anaconda.txt