Embora o su -l <user> funcione bem em meu sistema, notei que sudo su -l <user> - embora escolha ".profile" muito bem - parece causar o mesmo problema que você descreve de limpar variáveis supostamente definidas universalmente em "/ etc / ambiente ".
Consegui o que parecia ser um login completo (execução do ".profile" de <user> mais as variáveis de "/ etc / environment") fazendo:
sudo -i -u <user>