У меня есть сервер LDAP и установленная в нем предопределенная оболочка (bash). Но есть некоторые машины, на которых я хочу, чтобы при входе пользователя в систему использовалась другая оболочка вместо оболочки, хранящейся в LDAP.
Как я могу это сделать?? Может ли кто-нибудь дать мне какое-то направление в этом?
Спасибо
В /etc/ldap.conf добавьте следующую строку:
nss_override_attribute_value loginShell <different_shell>
Удачи,
Жуан Мигель Невеш
Общие домашние каталоги? Если нет, введите в пользователей ~/.bash_profile
(или другой подходящий файл, проверьте ВЫЗОВ в man bash
):
exec /bin/tcsh
Или любую оболочку, на которую вы хотите заменить bash.
Если они входят в систему с помощью ssh, вы можете использовать пары ключей и принудительные команды.
Обратите внимание: в зависимости от того, где вы размещаете exec для другой оболочки, такие команды, как scp
может не работать должным образом, если вы не проверите интерактивную оболочку, как в /etc/skel/.bashrc
на Ubuntu.
Лучше всего попросить администратора LDAP изменить loginShell
для вашего пользователя LDAP.