Я использую учетную запись домена samba4 для входа на свой ноутбук. Я хотел попробовать zsh
, но так как мой пользователь не проживает в, /etc/passwd
я обнаружил, что chsh
не могу найти моего пользователя. Может кто-нибудь посоветовать, как я могу изменить свой login_shell
?
Я ничего не видел в моем ldap.conf
, nssswitch.conf
или что-то в /etc/pam.d
этом помогло ...
Глядя на контроллер домена, я подумал, что, возможно, смогу использовать samba-tool, но я ничего не увидел в справке, которая указала бы мне правильное направление ...
getent passwd `id -un` | sudo tee -a /etc/passwd
. Не уверен, работает ли он во всех оболочках, но по крайней мере bash и tcsh в порядке.У меня была точно такая же проблема. Поскольку не на всех машинах в моем домене установлена zsh, и поскольку я не хотел влиять на всех пользователей, я добавил в свой .bashrc:
Это может быть не элегантно, но, по крайней мере, это сделает работу.
источник
/usr/bin/zsh
вместоexec /usr/bin/zsh
заменыbash
процессzsh
оболочки на процесс оболочки?Если у вас есть доступ для редактирования конфигурации контроллера домена samba, вы можете установить следующее свойство, которое позволяет вам установить оболочку в smb.conf
Не уверен, что произойдет, если вы войдете на компьютер, на котором не установлена zsh (не во всех дистрибутивах установлена zsh по умолчанию), но я предполагаю, что он вызовет оболочку дистрибутива по умолчанию.
Если вы просто хотите попробовать, просто наберите zsh, чтобы получить подоболочку, которую, я уверен, вы уже знаете.
источник
zsh
установили. Я не уверен, что вы можете ограничить это для конкретного пользователя, но я бы проверилidmap uid
параметр, который может позволить вам сделать это.