1 votes

Mise à jour vers Yosemite, mkdir indique maintenant "permission denied" (permission refusée)

Je suis passé du système d'exploitation 10.7.3 au 10.10.3. Maintenant j'obtiens "permission denied" quand je lance mkdir sur des dossiers qui m'appartiennent et sur lesquels j'ai toutes les permissions.

F Je possède un dossier appelé "/library/webserver/documents". J'essaie de créer un sous-dossier et j'obtiens un refus d'autorisation. J'ai vérifié que je suis connecté en tant qu'utilisateur propriétaire du dossier. Les permissions sont de 755.

Il y a quelques jours, lorsque j'étais encore sous 10.7.3, je n'avais pas ce problème.

Quelle est la solution ? Je ne veux pas simplement taper "sudo [commande]" à chaque fois que je veux créer un dossier. Je veux juste utiliser le terminal comme il fonctionnait avant.

1voto

jdphenix Points 229

J'ai dit que je possédais le répertoire. Je viens de découvrir que j'étais en fait propriétaire du lien symbolique vers le répertoire. L'utilisateur 'Root' était propriétaire du répertoire. J'ai changé la propriété du répertoire et tout fonctionne bien maintenant.

Je pense que la mise à jour a changé le propriétaire du répertoire ou qu'elle a modifié la logique des autorisations concernant les liens symboliques.

1voto

yoliho Points 340

/Library et tous les sous-répertoires appartiennent à Root

Je pense que la mise à jour du système d'exploitation a rétabli les autorisations.

Le répertoire que vous possédez et que le serveur web peut voir était auparavant ~/Sites, mais depuis Mountain Lion, la configuration est plus complexe et ne se limite pas à un simple clic sur une option dans les préférences du système. article (NB : cela semble raisonnable, mais je ne l'ai pas essayé).

0voto

John K Points 1992

Je vois que vous ne possédiez pas le répertoire. Une autre astuce pour vérifier le propriétaire est l'émission :

namei -l /path/to/directory

NOTE : Vous devez port install namei car il n'est pas natif sur mac

Réparez également les autorisations du disque si certains répertoires ont des autorisations incorrectes. Si quelque chose doit être fait en mode Root et que vous ne voulez pas taper sudo à chaque fois, vous pouvez lancer la commande sudo su ou sudo - i * au démarrage, ce qui vous permettra d'accéder à une console racine. Quittez cette console en tapant exit.

*= Si vous souhaitez connaître la différence entre su et -i, reportez-vous à la section cette . En résumé, -i est votre utilisateur avec des privilèges élevés, et su est un shell sans login ( root@root~# )

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X