Okay, a: set -a
before the sourcing would have done it too. -- Reuti === Am 19.07.2011 um 17:12 schrieb William Hay: > On 19 July 2011 15:15, Reuti <[email protected]> wrote: >> Hi, >> >> Am 19.07.2011 um 16:02 schrieb William Hay: >> >>> I'm trying to configure Grid Engine for interactive jobs but the >>> environment variables provided by Grid Engine for batch jobs don't >>> seem to be >>> available to interactive jobs. This means, for instance, that I can't >>> find $TMPDIR or the machines file for parallel interactive jobs except >>> by poking around. I'm using the qlogin command with qlogin_command >>> and qlogin_daemon set to builtin although I've tried ssh based >>> versions as well. >>> >>> I've checked for the value of JOB_NAME which the man page explicitly >>> says is set for qlogin but it doesn't show up. >>> Using SGE 6.2u3 on Scientific Linux 5 (RHEL/CentOS clone). Launching >>> a new login shell with bash -l doesn't seem to >>> clean out the environment so I assume it is something that sshd and >>> SGE's builtin rsh server do. >> >> correct. You get a clean new shell. To make all the environemt variables >> available in the job, you can use this in your ~/.profile: >> >> MYPARENT=`ps -p $$ -o ppid --no-header` >> #MYPARENT=`ps -p $MYPARENT -o ppid --no-header` >> #MYPARENT=`ps -p $MYPARENT -o ppid --no-header` >> MYSTARTUP=`ps -p $MYPARENT -o command --no-header` >> >> if [ "${MYSTARTUP:0:13}" = "sge_shepherd-" ]; then >> echo "Running inside SGE" >> MYJOBID=${MYSTARTUP:13} >> MYJOBID=${MYJOBID% -bg} >> echo "Job $MYJOBID" >> >> . /var/spool/sge/$HOSTNAME/active_jobs/$MYJOBID.1/environment >> unset HISTFILE >> fi >> >> >> The above is for SGE's built-in mechanism, you have to uncomment the two >> statements if you use ssh. Also the path the node's spool directory needs to >> be adjusted. >> >> -- Reuti >> >> >> >> > Thanks for that. As I'm trying to get an environment as close as > possible to the batch environment I assume I'll need to export all the > standard SGE variables after > sourcing that file to turn them into proper environment variables > rather than just shell variables. Correct, it could be improved like: while read LINE; do export $LINE; done < /var/spool/sge/$HOSTNAME/active_jobs/$MYJOBID.1/environment instead of plain sourcing. -- Reuti _______________________________________________ users mailing list [email protected] https://gridengine.org/mailman/listinfo/users
