Qu'est-ce que le signe «+» à la fin de la description du fichier?

27

Lorsque j'exécute 'ls -al ~', je vois des marques + et cela m'empêche de déplacer / supprimer des fichiers.

drwxr-xr-x+   5 prosseek  admin     170 Oct  5 03:43 Desktop
drwxr-xr-x+  17 prosseek  admin     578 Sep 25 22:20 Documents

Qu'est-ce que c'est et comment puis-je obtenir cette marque sur chaque fichier et répertoire de mon répertoire personnel?

Comment puis-je supprimer cela? Existe-t-il un moyen simple de supprimer cela sur chaque fichier de mon répertoire personnel?

prosseek
la source

Réponses:

36

Le +indique que le fichier possède une liste de contrôle d'accès (ACL) avec des autorisations supplémentaires. Chaque règle dans une ACL est appelée une entrée de contrôle d'accès (ACE).

La commande ls -aleaffichera les ACE pour chaque fichier / dossier qui a une ACL

Les dossiers par défaut qu'OS X crée lorsqu'il crée un nouveau dossier de départ - Bureau, Documents, Téléchargements, Bibliothèque, Films, Musique, Images et Public - auront l'ACE

0: group:everyone deny delete

ce qui signifie qu'aucun utilisateur n'est autorisé à supprimer le dossier, pas même le propriétaire du dossier. Cela empêche les gens de supprimer accidentellement ces dossiers, que OS X prévoit d'exister.

Pour supprimer toutes les ACL des dossiers de départ par défaut, sans affecter les ACL de leur contenu, utilisez

chmod -N ~/*

Pour supprimer une ACL d'un dossier et tout ce qu'il contient, utilisez

chmod -R -N /path/to/folder

Une fois la liste de contrôle d'accès supprimée, vous pouvez maintenant supprimer ces dossiers comme prévu. Cependant, il est généralement conseillé de ne pas supprimer les dossiers par défaut créés par OS X dans le dossier de départ d'un utilisateur. Le système d'exploitation et de nombreuses applications s'attendent à ce que ces dossiers soient là. En fait, OS X peut simplement recréer certains d'entre eux lors de votre prochaine connexion.

Une alternative consiste à les cacher du Finder avec

chflags hidden /path/to/folder

Pour afficher, passez hiddenà nohidden. Cependant, les dossiers cachés apparaîtront toujours dans Terminal.

joelseph
la source
1
Est-ce lié à la marque "@" que je vois dans Mojave 10.14.5?
drevicko
1
@drevicko Le "@" signifie des attributs étendus , qui sont aussi, à ma connaissance, spécifiques à macOS. Par exemple, en plus des données du fichier (la «fourchette de données»), il peut y avoir une «fourchette de ressources» ou (je crois) l'icône du fichier.
not-just-yeti
2

Le plus signifie qu'il existe des autorisations supplémentaires définies sur le fichier (à l'aide des listes de contrôle d'accès) qui sont plus nuancées que celles qui peuvent être exprimées au format rwxrwxrwx Unix habituel.

Ces autorisations peuvent être modifiées dans la fenêtre Get Info du Finder pour le fichier.

CajunLuke
la source
2

Un +à la fin signifie que le dossier contient des informations de sécurité étendues (telles qu'une liste de contrôle d'accès). Essayez de restaurer les autorisations.

Michiel
la source