su : must be run from a terminal
After some googling, I found the solution . If you have python installed, just run the following from your shell:
echo “import pty; pty.spawn(‘/bin/bash’)” > /tmp/asdf.py
You now have a proper terminal, and things like ‘su’ will work as usual.