:: Updating dash on Ubuntu - what not to do -
So as I wrote yesterday, I compiled dash, installed it, then the 2.6.33 kernel compiled fine. I tried to reboot, and ... Impossible to boot. Even with older kernels! What happened?So what I did was this. I compiled dash from the source with the default options (so among others $PREFIX=/usr/local). As a good ubuntu user, I did sudo checkinstall
.The problem was that by doing checkinstall, I "overwrote" the old dash package. Well, since there is new one, why would I keep the older buggy version? It turns out that there is, among other things, a symbolic link at /bin/sh pointing to /usr/bin/dash! Now, as I installed dash in /usr/local/bin, booting was no longer possible.
I ended up booting from another system (I had a dual boot ubuntu/mandriva), corrected the symlink (somehow pointing to new dash caused some other trouble, so I let the symlink point to /usr/bin/bash). If you end up in this sort of situation without having a second system installed, they you will need to use a liveCD or liveUSB to get out of there. Now the old ubuntu boots fine.
What I should have done, is either used sudo make install
to install newer version in /usr/local/bin keeping the older version, or compiled the dash with $PREFIX = /usr
and installed with checkinstall so that newer version gets installed in a "correct path".
Dear readers, I trust that you will not make same mistake as I did.