[GE users] "shell_start_mode=unix_behavior" and environment variables problems

Reuti reuti at staff.uni-marburg.de
Tue Jul 31 19:44:32 BST 2007

    [ The following text is in the "ISO-8859-1" character set. ]
    [ Your display is set for the "ISO-8859-10" character set.  ]
    [ Some special characters may be displayed incorrectly. ]


Am 31.07.2007 um 20:14 schrieb Gon?alo Borges:

> 1 - A user is trying to submit a /bin/bash script to SGE. Both in  
> the submission host and exec host where the job is supposed to run,  
> the default shell definition for this user is /bin/csh. The default  
> definition for the cluster queue is also /bin/csh.
> 2 - In the cluster queue definition, I've configure  
> "shell_starting_mode=unix_behavior" in order for the system to  
> ignore the cluster queue shell definition (bin/csh) and take into  
> account the first line of the user script, which is #! /bin/bash.
> [root at sge01 Conf]# qconf -sq compasslip | grep shell
> shell                 /bin/csh
> shell_start_mode      unix_behavior
> 3 - What happens is that the environment is changed when the user  
> submits the script. Check for example $PATH env variable:
>    3.1 - In the exec host, the $PATH variable seen from this user  
> account is:
> PATH=/home/comp/helena/bin:/home/comp/helena/scripts:/usr/sue/bin:/ 
> bin:/usr/local/bin:/usr/local/bin/X11:/usr/bin:/usr/bin/X11:
>            /cern/pro/bin:/usr/java/j2sdk1.4.2_08/bin:/usr/local/sge/ 
> pro/bin/lx26-x86:/usr/local/sge/utils_scripts:/opt/lcg/bin:/usr/ 
> kerberos/bin:
>            /opt/edg/openmpi/bin:/opt/edg/bin:/opt/globus/bin:/opt/ 
> globus/sbin:/opt/mpi/bin:/usr/local/root/pro/bin:/opt/d-cache/dcap/ 
> bin:.:
>            /opt/d-cache//srm/bin:/opt/d-cache//dcap/bin:/opt/glite/ 
> bin:/opt/glite/externals/bin:/opt/gpt/sbin:/opt/d-cache/srm/bin:/ 
> usr/X11R6/bin
>    3.2 - The $PATH seen inside the /bin/bash script which runs in  
> the same host is just:
> PATH=/tmp/62806.1.compasslip:/usr/local/bin:/bin:/usr/bin
> There are other env variable which disappear or are simply defined  
> differently. The most immediate consequence is that since $PATH is  
> not defined as the user would expect, some command simply do not  
> work for the user.
> I'm doing something wrong? Is there a workaround to this?

you can try to submit with:

qsub -v PATH myjob.sh

if the actual shell PATH is fine for your application (this will also  
preserve the SGE prefix to the scratch directory for this job), or  
source any necessary file of .profile, .bash_login, etc. in the  

-- Reuti
To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
For additional commands, e-mail: users-help at gridengine.sunsource.net

More information about the gridengine-users mailing list