[Pacemaker] wchih user's path is called from getenv("PATH")/external.c
Dejan Muhamedagic
dejanmm at fastmail.fm
Tue Aug 16 10:59:47 CET 2011
Hi,
On Mon, Aug 15, 2011 at 06:22:23PM +0900, Junko IKEDA wrote:
> Hi,
>
> I am trying to setup external/ipmi configuration,
> and binary path for ipmi is "/tmp/impi", for example.
The plugins path is fixed. You cannot have more than one. I'm not
sure, but it could be that it's possible to have subdirectories,
sth like external/mystuff/ipmi.
Thanks,
Dejan
> I added its path in "/etc/profile",
> # grep tmp /etc/profile
> PATH=$PATH:/tmp
>
> and PATH for root user is the following(including "/tmp").
> # echo $PATH
> /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/tmp:/root/bin
>
> but it seemed that impi plugin could not find its new binary path,
> so I added some debug messages like this;
>
> --- external.c.org 2011-08-15 17:54:02.000000000 +0900
> +++ external.c 2011-08-15 17:53:08.000000000 +0900
> @@ -754,11 +754,13 @@ external_run_cmd(struct pluginDevice *sd
>
> /* external plugins need path to ha_log.sh */
> path = getenv("PATH");
> + LOG(PIL_INFO, "----- current path %s", path);
> if (strncmp(GLUE_SHARED_DIR,path,strlen(GLUE_SHARED_DIR))) {
> new_path_len = strlen(path)+strlen(GLUE_SHARED_DIR)+2;
> new_path = (char *)g_malloc(new_path_len);
> snprintf(new_path, new_path_len, "%s:%s",
> GLUE_SHARED_DIR, path);
> setenv("PATH", new_path, 1);
> + LOG(PIL_INFO, "----- new path %s", new_path);
> g_free(new_path);
> }
>
>
> --- /usr/lib64/stonith/plugins/external/ipmi.org 2011-08-15
> 18:12:08.000000000 +0900
> +++ /usr/lib64/stonith/plugins/external/ipmi 2011-08-15
> 17:58:50.000000000 +0900
> @@ -94,6 +94,8 @@ do_ipmi() {
> ha_log.sh debug "ipmitool output: `echo $outp`"
> return 0
> else
> + ha_log.sh err "PATH=`echo $PATH`"
> + ha_log.sh err "USER=`echo $USER`"
> ha_log.sh err "error executing ipmitool: `echo $outp`"
> return 1
> fi
>
>
> /var/log/ha-log said;
> Aug 15 17:59:12 bl460g1n13 stonithd: [6722]: info: ----- current path
> /sbin:/usr/sbin:/bin:/usr/bin
> Aug 15 17:59:12 bl460g1n13 stonithd: [6722]: info: ----- new path
> /usr/share/cluster-glue:/sbin:/usr/sbin:/bin:/usr/bin
> Aug 15 17:59:12 bl460g1n13 stonithd: [6802]: info: ----- current path
> /usr/share/cluster-glue:/sbin:/usr/sbin:/bin:/usr/bin
> Aug 15 17:59:53 bl460g1n13 external/ipmi[6803]: ERROR:
> PATH=/usr/share/cluster-glue:/sbin:/usr/sbin:/bin:/usr/bin
> Aug 15 17:59:53 bl460g1n13 external/ipmi[6803]: ERROR: USER=
> Aug 15 17:59:53 bl460g1n13 external/ipmi[6803]: ERROR: error executing
> ipmitool: Error: Unable to establish IPMI v2 / RMCP+ session^M Unable
> to get Chassis Power Status^M
>
> Which user's path is called here?
> or how can I setup the specific path for ipmi?
>
> Best Regards,
> Junko IKEDA
>
> NTT DATA INTELLILINK CORPORATION
> _______________________________________________
> Pacemaker mailing list: Pacemaker at oss.clusterlabs.org
> http://oss.clusterlabs.org/mailman/listinfo/pacemaker
>
> Project Home: http://www.clusterlabs.org
> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
> Bugs: http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker
More information about the Pacemaker
mailing list