Probablement parce que sur les systèmes d'exploitation Unix standard, chaque utilisateur a son propre shell, et Root est juste un autre utilisateur. Mac OS X est plus ou moins dérivé d'Unix. Ainsi, en l'absence de toute raison suffisamment puissante pour changer cela, il n'est pas surprenant que Mac OS X suive les conventions Unix.
Et il serait très surprenant que le changement bob
Le shell de connexion de l'utilisateur a également changé root
Le shell de connexion de l'utilisateur. Ce serait un risque pour la sécurité (les utilisateurs ordinaires ne devraient pas pouvoir changer le shell de connexion de Root), pourrait causer des problèmes de stabilité du système (si vous choisissez un mauvais shell de connexion ou un qui est sur une partition externe), et violerait le principe de moindre surprise.
De plus, d'un point de vue probabiliste, je pense que la plupart des utilisateurs qui en savent assez pour se connecter en tant que Root, en savent aussi assez pour pouvoir changer l'interpréteur de commandes de Root en ce que vous préférez.
Mais seul Apple peut vous dire avec certitude pourquoi ils ont procédé de cette façon. Le reste d'entre nous ne peut que spéculer.
0 votes
D'après vos commentaires sur l'une des réponses, il semble que ce que vous voulez vraiment savoir est comment changer le shell de Root. Si vous voulez savoir comment changer de shell, je vous suggère de poser une nouvelle question sur la façon de changer le shell de l'utilisateur Root. Cette question convient bien mieux à ce site qu'une question "pourquoi", car il s'agit d'un problème qui admet une solution. Honnêtement, si vous voulez savoir pourquoi Apple a fait quelque chose, seuls les développeurs d'Apple le sauront avec certitude -- à l'heure actuelle, votre question appelle à la spéculation, et n'est donc pas un ajustement merveilleux pour ce site.
0 votes
Incorrect. J'ai changé le shell, en trouvant une commande dans un autre fil. Je comprends la commande juste assez pour savoir qu'elle a changé le shell et choisi les paramètres que j'aime exécuter. La commande n'était pas "change shell to bash" mais quelque chose que je n'ai pas reconnu. Je vous assure que j'ai posé la question à laquelle je veux une réponse.
0 votes
Si vous voulez vraiment une réponse à la question "pourquoi", veuillez la modifier pour la clarifier : 1. Vous demandez pourquoi, si un utilisateur change son shell, le shell Root ne change pas aussi ? (C'est comme ça que je l'ai interprété.) Ou est-ce que vous demandez pourquoi l'interpréteur de commandes par défaut pour Root est différent de l'interpréteur de commandes par défaut pour les utilisateurs non-Root, initialement ? 2. Plus précisément, quelles complications pensez-vous éviter si les paramètres par défaut étaient différents ? 3. Veuillez préciser ce que vous demandez. J'ai du mal à comprendre quelle est la question spécifique.
0 votes
La complication spécifique était que je voulais que les paramètres que j'ai dans bash fonctionnent pour l'utilisateur Root. J'ai donc changé de shell et copié quelques fichiers de mon répertoire personnel vers le répertoire personnel de Root pour obtenir le résultat que je voulais. Cela m'a semblé être une corvée et je veux savoir pourquoi l'utilisateur Root n'utilise pas par défaut le même shell que les autres utilisateurs.
0 votes
Quoi qu'il en soit, une fois que vous aurez trouvé comment clarifier votre question, veuillez modifier la question pour le refléter. La conception du site n'est peut-être pas claire, mais les commentaires n'existent que pour vous aider à améliorer la question et peuvent disparaître à tout moment. Vous ne devriez pas déposer des clarifications uniquement dans les commentaires, et les lecteurs ne devraient pas avoir à lire les commentaires pour comprendre votre question. Voir le centre d'assistance pour en savoir plus sur la manière d'utiliser efficacement ce site.
0 votes
Pourquoi le shell par défaut pour Root est-il différent du shell par défaut pour les utilisateurs non-Root dans la configuration par défaut d'osx ?
0 votes
@DanAllen vos deux derniers commentaires portent sur deux choses totalement différentes - vous devez être clair sur la question que vous posez.
0 votes
Quelles commandes avez-vous utilisées pour changer le shell de l'utilisateur Root ? Parlez-vous vraiment de l'utilisateur Root (UID 0) ou de l'utilisateur admin ? De plus, les questions du type "pourquoi" ne fonctionnent pas très bien ici, veuillez vous concentrer sur le problème que vous voulez résoudre. FAQ pour les détails.
0 votes
Patrix, la commande que j'ai utilisée est dscl . -change /Users/Root UserShell /bin/sh /bin/bash J'ai lancé quelques commandes la sortie indique que j'ai changé le Root $ cd ~ $ pwd /Root $ id uid=0(Root) gid=0(Root) groups=0(Root)