You should just wait for dash to be fixed. You can manually force dash to be the system shell, but it's a pain to do correctly. You need to remove, and then add 2, diversions. Plus you have to swap 2 sets of files around.
I know because I just did it. Started playing around after seeing this post. Changed the system shell (sh) from dash to bash. That part was easy
(dpkg-reconfigure dash works fine for that, just answer NO). Trying to change it back I got the same error as you did. If you really want to manually do this:
swap the following 2 pairs of symlinks (Rename so A.distrib becomes A and A becomes A.distrib)
/bin/sh
/bin/sh.distrib
/usr/share/man/man1/sh.1.gz
/usr/share/man/man1/sh.distrib.1.gz
After the swap sh should run dash, and "man sh" should bring up the help for dash (the distrib versions should point to bash).
Next you have to fix the diversions. As root:
Code: Select all
dpkg-divert --package bash --remove /bin/sh
dpkg-divert --package bash --remove /usr/share/man/man1/sh.1.gz
dpkg-divert --package dash --divert /bin/sh.distrib --add /bin/sh
dpkg-divert --package dash --divert /usr/share/man/man1/sh.distrib.1.gz --add /usr/share/man/man1/sh.1.gz
After that you can test by running
dpkg-reconfigure dash again and when you answer YES it should be fine. (Just don't answer NO unless you want to go through this again).