On Sun May 31 2009, John Kane wrote:
> After painstakingly commenting everything out of all startup files, then
> added them back in, I found the cause of the
>
> "-bash: [: =: unary operator expected"
>
> error that has been occurring on all Linux servers since turning on LDAP
> TLS on INT.
>
> In the file:
>
> /etc/profile.d/krb5-workstation.sh
>
> The follow is causing the issue:
>
> if ! echo ${PATH} | /bin/grep -q /usr/kerberos/sbin ; then
> if [ `/usr/bin/id -u` = 0 ] ; then
> PATH=/usr/kerberos/sbin:${PATH}
> fi
> fi
>
>
> If I add " " around the backticked command, I the bash error goes away.
> Not sure who I need to open a ticket against :-)
>
A more general solution would be:
# Am I running as user 0 (root)?
uid=$(/usr/bin/id -u) 2>/dev/null
if [ $uid == 0 ] ; then
Note the use of white space and the change from
an assignment to a test for equality.
Usually, such problems get reported to the
distribution producer - they know who wrote
the script.
Mike
> Thanks,
> John
>
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List [email protected]
Automated List Manager [email protected]