web-dev-qa-db-fra.com

Running Cherche ne change pas de coquille

Je veux changer ma coquille de Bash à ZSH.

J'ai essayé d'exécuter ce qui suit lors de la connexion en tant qu'utilisateur Zol:

$ chsh -s /bin/zsh
$ Sudo chsh -s /bin/zsh zol
$ su -c 'chsh -s /bin/zsh zol'
# The above all results with:
$ password:
$ chsh: Shell not changed.

# zsh exists in /etc/shells.. 
chsh -l
/bin/sh
/bin/bash
/sbin/nologin
/bin/zsh

Qu'est-ce qui pourrait être faux? Comment puis-je le réparer?

22
Zolomon

Les modifications de compte d'utilisateur ne seront pas enregistrées si vous avez ouvert/etc/passwd (VIM/etc/PasswD) lorsque vous essayez de changer les informations.

Alternative: essayez avec usermod (comme zol):

$ usermod -s /bin/zsh 

ou

$ Sudo usermod -s /bin/zsh zol

Si cela ne fonctionne pas non plus, éditez /etc/passwd par la main.

Sudo vipw
# set zol's Shell to /bin/zsh
:wq
20
fromnaboo

Quand exécuter "CHSH -L" si vous voyez:

/usr/bin/zsh
/bin/zsh

Ensuite, utilisez:

chsh -s /usr/bin/zsh

AVERTISSEMENT: Les commandes ont été exécutées sur Fedora 25, dans buntun L'option "-l" de est sortie.

1
lourencoccc

Si tu vois chsh: Shell not changed., cela pourrait signifier que la coquille a déjà été changée.

Vérifiez quel shell est répertorié:

cat /etc/passwd | grep `cd; pwd`

Si c'est correct, déconnectez-vous et revenez pour que le changement prend effet.

0
Codebling