Impossible d'activer Zsh installé par MacPorts
Question
Je mets sans succès Zsh installé par MacPorts comme shell de connexion en définissant le chemin suivant sur Paramètres
/opt/local/bin/zsh
Je le mets également dans les options avancées des comptes d’utilisateur. Je reçois l'erreur suivante texte de remplacement http://dl.getdropbox.com/u/175564/macportsError.png
Je mets le chemin suivant sans succès dans les paramètres
/opt/local/var/macports/software/zsh/4.2.7_0+mp_completion
Je reçois le message d'erreur suivant lorsque je redémarre mon shell
login: /opt/local/var/macports/software/zsh/4.2.7_0+mp_completion: Permission denied
[Process completed]
Comment activer votre Zsh en tant que shell de connexion?
La solution
Comme Norbert le dit, je pense que la réponse est dans / etc / shells. Le mien a ceci:
# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.
/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
Ajoutez / opt / local / bin / zsh
à cette liste, et tout devrait bien se passer. Vous devriez alors pouvoir changer le shell (individuellement pour chaque utilisateur) en utilisant chsh
.
Autres conseils
Avez-vous entré le shell dans / etc / shells. Il semble que Mac OS gère les coquilles valides qui s'y trouvent. Je ne peux pas dire exactement parce que je ne suis pas sur Mac
Je sais que cette question a été marquée comme étant résolue, mais
/opt/local/var/macports/software/zsh/4.2.7_0+mp_completion
n'est même pas un fichier exécutable dans macports. C'est pourquoi tu as l'erreur. Les shells doivent être exécutables.
Vous vouliez définir votre shell sur / opt / local / bin / zsh.
Cela a fonctionné pour moi à la fois dans Léopard et dans Snow Leopard. OSX n'utilise pas réellement / etc pour la gestion de la configuration, il utilise NetInfo (Leopard) et utilise maintenant les services de répertoire (Snow Leopard). Vous vouliez définir cela en cliquant avec le bouton droit de la souris sur votre utilisateur dans Préférences Système > Comptes (S.L.) ou en utilisant Netinfo Manager (Leopard)
EDIT:
Snow Leopard: sudo dscl. -create / Users / chiggsy UserShell / opt / local / bin / zsh
(create crée ou met à jour)
EDIT: S'il vous plaît, imaginez-moi couvert de honte puante et puante. J'utilise iTerm et la modification de la coque de mon compte a fonctionné sans faille. Dans Terminal, j'ai obtenu le même résultat que l'OP et je l'ai corrigé en modifiant le fichier / etc / shells. Maintenant, il me semble que je ne devrais pas pouvoir contourner la restriction / etc / shells en utilisant simplement un terminal tiers, mais il semble que ce soit le cas.