Knowledge Base

Preserving for the future: Shell scripts, AoC, and more

New user in freeipa has plain bash shell instead of reading .bashrc

So you have a new user in freeipa, and he can successfully log in to a freeipa client. And you know for certain you executed ipa-client-install with the --mkhomedir option. But when you open a terminal as the new user, it shows you the boring bash prompt 'bash-4.1$' or whatever version. You checked the /etc/skel, and it has a valid .bashrc file, and when you dot source your own ~/.bashrc, it then loads the prompt you expect. Here's your issue: do a getent passwd username. Look at the login shell of the user. It's going to be the default /bin/sh. Just change it in ipa to be /bin/bash! An sss_cache -E command was not enough; you have to log out and then back in to have it take effect. It's probably because the terminal emulator is being called from a process that was started before the account was changed.

Comments