[ClusterLabs] Antw: Re: ocf scripts shell and local variables

Ulrich Windl Ulrich.Windl at rz.uni-regensburg.de
Wed Aug 31 02:10:07 EDT 2016

>>> Dimitri Maziuk <dmaziuk at bmrb.wisc.edu> schrieb am 30.08.2016 um 19:32 in
Nachricht <9d54cfe0-eac6-2555-02e6-65008ba36830 at bmrb.wisc.edu>:
> On 08/30/2016 11:15 AM, Dejan Muhamedagic wrote:
>> I suppose that it is explained in enough detail here:
>> https://en.wikipedia.org/wiki/Shebang_(Unix) 
> I expect you're being deliberately obtuse.
> It does not explain which program loader interprets line 1 of findif.sh:
> "#!/bin/sh" when it is invoked from line 69 of IPAddr2 RA:
> . ${OCF_FUNCTIONS_DIR}/findif.sh

Which language is used if you #include a file in C? Just the same happens for a shell:
The KERNEL executes a command, but the SHELL includes a file!

> https://github.com/ClusterLabs/resource-agents/blob/master/heartbeat/IPaddr2 
> https://github.com/ClusterLabs/resource-agents/blob/master/heartbeat/findif.
> sh
> Similarly, I have not read the code so I don't know who invokes IPArrd2
> and how exactly they do it. If you tell me it makes the kernel look at
> the magic number and spawn whatever shell's specified there, I believe you.

Which "it" are you referring to?

>> As already mentioned elsewhere in the thread, local is supported
>> in most shell implementations and without it we otherwise
>> wouldn't to be able to maintain software. Not sure where local
>> originates, but wouldn't bet that it's bash.
> Well 2 out of 3 is "most", can't argue with that.
> -- 
> Dimitri Maziuk
> Programmer/sysadmin
> BioMagResBank, UW-Madison -- http://www.bmrb.wisc.edu 

More information about the Users mailing list