I use Ubuntu at work and recently upgrade from 6.0.6 (Dapper Drake) to 6.10 (Edgy Eft).
Today I found a problem with an SQL tool that we use - Oracle's SQLDeveloper. It runs from a shell script and was failing with a very strange error (it couldn't find a config file). After some head scratching and searching on the web I found the reason why:
Previous versions of Ubuntu (and probably most distributions of Linux) map
Ubuntu 6.10 has changed this so that
This was the reason why my script was failing - it was assuming a bash shell even though it mentioned
The fix was simple:
In the
After that simple change SQLDeveloper fired right up!
Technorati Tags: Ubuntu, Edgy Eft, Shell, Sh, Bash, Dash, Andrew Beacock
Today I found a problem with an SQL tool that we use - Oracle's SQLDeveloper. It runs from a shell script and was failing with a very strange error (it couldn't find a config file). After some head scratching and searching on the web I found the reason why:
Previous versions of Ubuntu (and probably most distributions of Linux) map
sh to bash. Bash has more features and many scripts are written with Bash in mind.Ubuntu 6.10 has changed this so that
sh now uses dash - a faster-than-bash alternative that only supports what the original sh did. There is even an outstanding Ubuntu bug regarding this.This was the reason why my script was failing - it was assuming a bash shell even though it mentioned
#!/bin/sh at the top of the script, and dash just doesn't have bash's features.The fix was simple:
In the
/bin directory sh is linked to dash so you just need to update the link to point back to Bash:cd /bin
sudo ln -sf bash shAfter that simple change SQLDeveloper fired right up!
Technorati Tags: Ubuntu, Edgy Eft, Shell, Sh, Bash, Dash, Andrew Beacock
Comments