Re: [ClusterLabs] Antw: Need bash instead of /bin/sh

2015-09-23 Thread dan
ons 2015-09-23 klockan 14:08 +0200 skrev Ulrich Windl:
> >>> dan  schrieb am 23.09.2015 um 13:39 in 
> >>> Nachricht
> <1443008370.2386.8.ca...@intraphone.com>:
> > Hi
> > 
> > As I had problem with corosync 2.3.3 and pacemaker 1.1.10 which was
> > default in my version of ubuntu, I have now compiled and installed
> > corosync 2.3.4 and pacemaker 1.1.12.
> > 
> > And now it works.
> > 
> > Though the file /usr/lib/ocf/resource.d/pacemaker/controld
> > does not work as /bin/sh is linked to dash on ubuntu (and I think
> > several other Linux variants).
> > 
> > It is line 182:
> > local addr_list=$(cat 
> > /sys/kernel/config/dlm/cluster/comms/*/addr_list 2>/dev/null)
> 
> That looks like plain POSIX shell to me. What part is causing the problem?

Did a small test:
---test.sh
controld_start() {
local addr_list=$(echo AF_INET 10.1.1.1 AF_INET 10.1.1.2)
echo $addr_list
}

controld_start
--

dash test.sh
test.sh: 2: local: 10.1.1.1: bad variable name

bash test.sh
AF_INET 10.1.1.1 AF_INET 10.1.1.2


Dan


___
Users mailing list: Users@clusterlabs.org
http://clusterlabs.org/mailman/listinfo/users

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org


Re: [ClusterLabs] Antw: Need bash instead of /bin/sh

2015-09-23 Thread Vladislav Bogdanov

23.09.2015 15:42, dan wrote:

ons 2015-09-23 klockan 14:08 +0200 skrev Ulrich Windl:

dan  schrieb am 23.09.2015 um 13:39 in Nachricht

<1443008370.2386.8.ca...@intraphone.com>:

Hi

As I had problem with corosync 2.3.3 and pacemaker 1.1.10 which was
default in my version of ubuntu, I have now compiled and installed
corosync 2.3.4 and pacemaker 1.1.12.

And now it works.

Though the file /usr/lib/ocf/resource.d/pacemaker/controld
does not work as /bin/sh is linked to dash on ubuntu (and I think
several other Linux variants).

It is line 182:
 local addr_list=$(cat
/sys/kernel/config/dlm/cluster/comms/*/addr_list 2>/dev/null)


That looks like plain POSIX shell to me. What part is causing the problem?


Did a small test:
---test.sh
controld_start() {
 local addr_list=$(echo AF_INET 10.1.1.1 AF_INET 10.1.1.2)

yep, that is a bashism.

posix shell denies assignment of local variables in the declaration.

local addr_list; addr_list=$(echo AF_INET 10.1.1.1 AF_INET 10.1.1.2)

should work


 echo $addr_list
}

controld_start
--

dash test.sh
test.sh: 2: local: 10.1.1.1: bad variable name

bash test.sh
AF_INET 10.1.1.1 AF_INET 10.1.1.2


 Dan


___
Users mailing list: Users@clusterlabs.org
http://clusterlabs.org/mailman/listinfo/users

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org




___
Users mailing list: Users@clusterlabs.org
http://clusterlabs.org/mailman/listinfo/users

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org