Fermer le menu

Astuce : réparer les autorisations de votre dossier personnel

Nicolas Furno | | 10:00 |  51

Avec les dernières versions de macOS, Apple a retiré les fonctions de maintenance que l’on trouvait auparavant dans l’Utilitaire de disque. La réparation des permissions était une opération que l’on effectuait de temps en temps pour corriger certains problèmes. Avec El Capitan, l’outil était toujours disponible en ligne de commande. Depuis Sierra, c’est fini, il n’est plus possible de réparer les permissions.

À défaut, Apple détaille dans une fiche technique comment réparer les autorisations pour votre dossier personnel. Ce n’est pas la même chose que l’outil disponible à une époque dans l’Utilitaire de disque, puisque cela ne concerne que le dossier personnel (celui avec une maison en guise d’icône). Néanmoins, c’est là que se trouvent tous vos documents et surtout les préférences et contenus des apps.

Cliquer pour agrandir

Comme l’explique Apple, si les autorisations ne sont pas correctement réglées, vous pouvez avoir de nombreux problèmes. La fiche technique liste plusieurs cas, celui que j’ai rencontré concerne les paramètres système. Du jour au lendemain, les modifications apportées dans les Préférences Système n’étaient plus vraiment enregistrées et je devais les modifier à nouveau à chaque redémarrage.

La méthode détaillée par la fiche technique a parfaitement fonctionné dans mon cas. Pour commencer, ouvrez le Finder, sélectionnez votre dossier personnel et affichez les informations avec le raccourci clavier (⌘i) ou avec un clic secondaire et Lire les informations. Dans la palette qui s’ouvre, affichez la partie Partage et permissions et cliquez sur le cadenas en bas à droite. Saisissez le mot de passe de la session, puis cliquez sur la roue crantée sur la gauche et choisissez l’option Appliquer aux éléments inclus.

Première étape de la manipulation dans le Finder. Cliquer pour agrandir

Patientez jusqu’à la fin de l’opération. Selon le nombre de dossiers et fichiers présents dans votre dossier personnel, elle peut prendre un petit peu de temps. Quand c’est terminé, ouvrez le Terminal (utilisez Spotlight) et saisissez cette commande :

diskutil resetUserPermissions / `id -u`

Patientez encore jusqu’à la fin de l’opération (qui peut, elle aussi, être longue et utiliser intensément le processeur) et votre problème devrait avoir été réglé. Dans mon cas en tout cas, les réglages modifiés dans Préférences Système sont à nouveau parfaitement enregistrés, même après un redémarrage.

Deuxième étape, dans le Finder. Cliquer pour agrandir

Cette méthode en deux étapes n’est pas la plus simple qui soit toutefois et la réparation des permissions dans l’Utilitaire de disque était peut-être préférable. L’utilitaire de maintenance OnyX permet toujours de la réaliser, mais de l’aveu même de son concepteur, elle ne sert plus à grand-chose depuis qu’Apple a mis en place de nouvelles protections sur les dossiers système. Et cette réparation des permissions ne touche pas le dossier de départ de l’utilisateur.

Il espère d’ailleurs pouvoir intégrer à OnyX un outil équivalent à ce qu’effectue le système quand on suit la méthode détaillée dans cette fiche technique.

Catégories: 

Les derniers dossiers

Ailleurs sur le Web


51 Commentaires Signaler un abus dans les commentaires

avatar Niro 01/02/2017 - 10:03 via iGeneration pour iOS

Ub grand retour en arrière... la simplicité d'utilisation de Mac OS en prend un sacré coup !

avatar JohnBob 01/02/2017 - 12:23

+1 ! beaucoup de fonctions "simples" et pourtant très utiles perdues au fil des évolutions de MacOS.
Dernier exemple en date avec Sierra: plus possible de synchroniser les notes d'un compte iCloud secondaire (on ne peut le faire plus que sur le compte principal) !! Du coup j'ai "downgradé" mon iMac 5K tout neuf en El Capitan...
et je ne parle pas des fonctions "basiques" perdues dans les Apps Apple (iPhoto -> Photos, quelle déception...)
Quant aux permissions qu'il est impossible de rétablir "proprement" j'en bave tous les jours avec les librairies de photo placées dans le dossier partagé... Du coup pour résoudre le problème, j'ai déporté toutes mes librairies... sur un NAS (qui tourne sous Linux, ça au moins ça marche).
J'ai l'impression de vivre une descente aux enfers

avatar C1rc3@0rc 01/02/2017 - 17:56 (edité)

Surtout que la fonction de l'utilitaire disque etait secure, alors que les procedure indiquée par Apple est une source potentielle de graves problemes de securité: le fait de mettre l'acces en lecture a "autre" veut dire que tout le monde peut lire les fichiers d'un utilisateur.

Cela viole le principe de securité des permisions d'une session

Certes, la commande a taper dans le terminal (on fait mieux comme userfriendly) apres est censée remettre les bonnes permissions. Mais c'est juste censé, parce que si ça bug, ben on se retrouve avec un equivalent de passoire a la mode Windows!

Et puis c'est valable pour le dossier utilisateur et pas pour l'OS...

Il faut savoir que normalement, tous les fichiers d'une session doivent appartenir a l'utilisateur et a son groupe et n'etre accessible/modifiable que par l'utilisateur.

Sauf en ce qui concerne les fichiers et dossier du dossier "users/moi/Public", qui peuvent etre en lecture pour tous et en lecture/ecriture voire en ecriture uniquement pour le dossier "drop box" (boite de depot).

Et sauf que c'est pas si simple et qu'on peut avoir une platée de dossiers commençant par un point ( ls -la /users/moi ) qui peuvent necessiter des permissions specifiques.

On va aussi trouver des fichiers/dossiers dans le dossier utilisateurs qui appartienne a l'utilisateur "root", ce qui est en principe normal et qu'il ne faut pas changer.

Un autre methode par le terminal c'est

user_ID=$(id -u)
sudo chown -R $user_ID /users/moi/*
diskutil resetUserPermissions / $user_ID

Ca modifie pas le groupe ni les droits lecture/ecriture/execution, donc ça regle pas tous les problemes. Mais c'est moins dangereux.

Une methode -qui ne modifie rien - pour uniquement faire la chasse aux fichiers qui n'appartiennent pas au bon utilisateur c'est de taper dans le terminal:

user_ID=$(id -u)
find /users/moi ! -uid $user_ID -a ! -uid 0 -exec ls -lan '{}' ';' > /users/moi/Desktop/mauvais_proprio.txt

Aprés on a plus qu'a ouvrir le fichier mauvais_proprio.txt qui se trouve sur le bureau avec n'importe quel editeur de texte et on a la liste des fichiers a probleme. Pour chaque fichier on a une liste d'information separées par des espaces.
Le 1er groupe ce sont les droits d'acces (r: lecture w:ecriture x: execution, les 3 premier etant pour l'utilisateur, les 3 suivants pour le groupe auquel appartient lutilisateur et les 3 derniers pour les autres utilisateurs)
On trouve ensuite l'ID de l'utilisateur puis son groupe
Et en dernier le chemin d'acces du fichier.

en principe on doit avoir pour les fichiers
-rw------- 1 501 20 nombre nombre date heure chemin d'acces
et pour les dossiers
drwx------ 1 501 20 nombre nombre date heure chemin d'acces

Ceci dit, on peut se demander a ce point ou il faut jouer du terminal pourquoi ne pas directement aller sur Linux plutot qui n'a pas tout ces problemes d'autorisations...



avatar Erravid 01/02/2017 - 23:11

Merci pour les infos ! Juste une question : au cas où des fichiers ont un ID d'utilisateur différent, est-ce que la solution normale est de changer l'ID du propriétaire pour ces fichiers afin qu'il corresponde à celui du propriétaire de la session ? Ou bien est-ce déconseillé, et faut-il passer par une étape intermédiaire (copie des fichiers sur un support externe) afin de rétablir le bon ID de l'utilisateur pour tous les fichiers ?

avatar reborn 01/02/2017 - 10:04 via iGeneration pour iOS

Pourquoi ces permissions se "cassent" ?

avatar C1rc3@0rc 01/02/2017 - 16:16 (edité)

@reborn

Bonne question.
La reponse simple est: parce que MacOS est buggué.

Faut comprendre ce que sont les permissions et coment elles sont gerees.

Les permissions sont un des socles majeurs du systeme de gestion de fichiers sur les Unix. Ce sont ces permissions qui permettent au systeme de savoir a qui appartient un fichier, qui a le droit de le lire, de le modifier et d'en permettre le lancement comme programme.

Chaque fois qu'un fichier est créé, modifié ou deplacé, ses permsissions sont susceptibles d'etre modifiées.

Il y a toute une hierarchie qui en gros definit que l'utilisateur peut creer et modifier uniquement ses fichiers dans son espace (son compte/session) et que l'OS peut tout modifier et lire.
C'est une base de securité.

Pour verifier si le systeme est pas corrompu, l'OS dispose d'une table des permissions qui sont normales. En principe donc un fichier d'un utilisateur ne peut pas etre modifier par un autre utilisateur et un utilisateur ne peut pas modifier un fichier systeme.

Donc les permissions ne devraient jamais etre cassées, surtout celles des fichiers systemes que l'utilisateur ne peut pas toucher.

Sauf que l'OS se modifie et se met a jour regulierement et que le systeme de gestion de fichier se reorganise a bas niveau. S'il y a un bug dans ces processus, les permissions des fichiers peuvent etre alerees. Et c'est ce qu'il se passe :(

Avant 10.12 Apple fournissait une fonction pour reparer les permissions. C'etait pas ideal, et il fallait le faire depuis un boot sur un CD ou une cle USB, puis par la partition de securité. A partir de 10.11 Apple a decidé de mettre en place un systeme qui aurait du reparer automatiquement les permissions, qui en plus des nouvelles restrictions d'acces aurait du rendre les problemes de permissions obsoletes.

Mais bon, on voit clairement que la disparition d'equipes dediées a MacOS a les memes consequences desastreuses que pour le reste des probemes de MacOS: ça marche pas et c'est de plus en plus dysfonctionnel.
Et maintenant Apple ne permet pas de resoudre cet epineux probleme - qui peut aboutir a rendre l'OS inutilisable - de maniere simple.

avatar jeromedeuf 01/02/2017 - 10:09

Onyx le fait très bien aussi.

avatar r e m y 01/02/2017 - 10:14 via iGeneration pour iOS (edité)

@jeromedeuf

Si tu lis l'article jusqu'à la fin, tu apprendras (comme je l'ai appris moi-même) qu'Onyx ne le fait pas vraiment, voire pas du tout pour le dossier Utilisateur...

avatar jeromedeuf 01/02/2017 - 10:16

Mea culpa…

avatar MarcMame 01/02/2017 - 13:25 via iGeneration pour iOS

@jeromedeuf

Son développeur ne semble pas de ton avis

avatar jeromedeuf 01/02/2017 - 14:12 via iGeneration pour iOS

@MarcMame

Oui c'est pour ça que j'ai marqué "mea culpa" qui signifie grosso merdo "au temps pour moi" ce qui signifie à peu près que j'assume le fait de ne pas avoir lu l'article jusqu'au bout et que je fais amende honorable...

avatar deltiox 01/02/2017 - 10:09 via iGeneration pour iOS

Tout fermer dans le but de protéger l'utilisateur a parfois l'effet inverse de celui recherché je trouve.

Beaucoup d'utilisateurs sans connaissances techniques savaient aller dans l'utilitaire de disque et choisir "réparer les permissions"
Simple et souvent efficace

avatar tchit 01/02/2017 - 10:10 via iGeneration pour iOS

J'essaye de comprendre pourquoi Apple aurait supprimé la réparation des permissions ??

avatar C1rc3@0rc 01/02/2017 - 16:17 (edité)

Par vanité
Par manque de moyens
Par irresponsabilité
Par incoherence

avatar fosterj 01/02/2017 - 10:10

Quel intérêt pour Apple d'enlever cette possibilité ??????? Bientôt ils nous empêcheront de nettoyer nos écrans !

avatar pocketalex 01/02/2017 - 10:21

@fosterj

bientôt, il n'y aura plus d'écran, donc moins de consommation, plus d'autonomie, donc réduction de la batterie .. oh wait !

avatar Bigdidou 01/02/2017 - 21:42 via iGeneration pour iOS

@fosterj
"Bientôt ils nous empêcheront de nettoyer nos écrans !"

Ça, c'est déjà fait depuis longtemps avec l'enduit anti reflet qui se barre si t'utilise autre chose que des microfilms, et encore...

avatar bompi 01/02/2017 - 10:13

Ce qui m'épate est ce besoin d'avoir une telle fonction : je ne connais pas d'autre UNIX aussi sensible sur le point des permissions.

avatar C1rc3@0rc 01/02/2017 - 16:19 (edité)

+1

Je pense que le gros du probleme vient de HFS+

avatar Marco_la_frite 01/02/2017 - 11:01

Avec capitan
Onyx fonctionne encore

avatar iMaque 01/02/2017 - 11:01

CleanMyMac le propose dans ses outils de maintenance, mais je ne sais pas si c'est vraiment efficace ou si c'est comme avec Onyx. Quand je l'utilise, la réparation des permissions est quasi instantanée alors qu'avec Utilitaire de disque, ça prenait quelques dizaines de secondes.

avatar r e m y 01/02/2017 - 11:04 via iGeneration pour iOS

@iMaque

Tout sauf CleanArnaque! Désinstalle cet inutilitaire avant qu'il ne te cree des problèmes!

avatar tazdunord 03/02/2017 - 07:35

Ah bon ? Pourquoi ?

Je le trouve plutôt pratique et efficace pour le nettoyage (cache, inventaire des gros fichiers, photos...) et même les désinstallations.

avatar legallou 01/02/2017 - 11:06

Encore un argument qui me fait de plus en plus penser que Capitan sera mon dernier MacOS.

avatar joelcro 01/02/2017 - 11:06 via iGeneration pour iOS

Onyx est un des meilleurs amis pour la mac!

Pages