Comment utiliser les indicateurs de fichier pour modifier son comportement sur un système MacOS

Est utilisé Drapeaux Par système MacOS pour réduire la manière dont les fichiers sont modifiés. Elles sont définies différemment des autorisations et s'exécutent dans des structures parallèles avec de telles commandes. chown et chmod. Sera utilisé chflags Pour changer les drapeaux aussi ls Affiche les signaux. Unix exécute un système similaire, mais avec plus d'options appelées "attributs" au lieu d'indicateurs

Comment utiliser les indicateurs de fichier pour modifier son comportement sur macOS - Mac

Afficher le groupe d'indicateurs sur macOS

Dans Terminal, vous pouvez utiliser le drapeau ls pour afficher tous les drapeaux existants.

ls -lO 

~/Librarydrwx------@ 88  alexander staff hidden 2992 Jan 25 14:01 Library

S'il n'y a pas d'indicateur pour le fichier ou le dossier, alors tiret Sinon.

ls -lO ~/Library/Caches

drwx------+ 234 alexander staff   -    7956 Jan 25 13:03 Caches

Les drapeaux peuvent être supprimés en utilisant leur inverse, comme indiqué ci-dessous.

Configurer et supprimer des indicateurs sur macOS

Comment utiliser les indicateurs de fichier pour modifier son comportement sur macOS - Mac

Les drapeaux posent souvent problème. Puisqu'ils placent des autorisations supplémentaires sur les autorisations, ils peuvent être faciles à manquer. Vous trouvez-vous avec un fichier qui ne peut pas être effacé, peu importe la hauteur de vos autorisations utilisateur? Vous devrez peut-être effacer un ou deux drapeaux.

Les indicateurs pouvant être définis sous macOS sont répertoriés ci-dessous. Voici la liste complète des options disponibles, avec une explication de leurs fonctions. La plupart des indicateurs ne peuvent être définis que par le propriétaire du fichier ou le superutilisateur; Sappnd et schg ne peuvent être définis que par le super-utilisateur, car ce sont des indicateurs à l'échelle du système. Seul l'indicateur masqué peut être défini sans élévation de privilège.

Définir des drapeaux sur macOS

Lorsque vous définissez des indicateurs sur macOS, utilisez la commande ci-dessous. La balise récursive -R est disponible pour les opérations au niveau du répertoire:

sudo chflags -R [flag] /usr/bin/local

sudo chflags [flag] /usr/bin/local/mnt.sh

chflags -R hidden ~/Desktop

Déterminera le drapeau approprié. Par exemple, les ensembles suivants marquent nodump:

sudo chflags nodump /usr/bin/local/tty.sh

Un seul indicateur peut être attribué ou supprimé par commande chflags.

Opacité Ouvre le dossier qui paraît opaque lorsqu'il est affiché via montage de l'union , Une ancienne façon d’afficher plusieurs annuaires simultanément.

  • nodump Empêche le vidage du fichier ou du dossier lorsque vous utilisez la commande dump pour sauvegarder votre système.
  • sappnd , Fait sappend Définissez uniquement l'indicateur d'ajout du système, ce qui permet au fichier d'être ajouté à un répertoire mais ne sera ni modifié ni supprimé. La suppression de cet indicateur nécessite une entrée en mode mono-utilisateur.
  • schg، échanger، simmutable Spécifie le signal système fixe, qui ferme toutes les modifications de fichiers effectuées par tous les utilisateurs, quel que soit leur niveau de privilège. Pour supprimer cet indicateur, vous devez entrer un mode utilisateur.
  • uappnd ، en retard Identifie l'indicateur de l'ajout de l'utilisateur uniquement. Cela peut être défini par le propriétaire du fichier et peut être annulé par le propriétaire sans privilèges de montage. Étant donné que le fichier est verrouillé et utilise sappnd ou schg dans un état de sécurité inférieur, il est utilisé fréquemment.
  • Uchg، changer، immuable Il place le drapeau de l'utilisateur dur, qui entretient la même relation avec la connaissance du système, où le drapeau uappnd devrait être affiché.
  • caché Identifie le drapeau caché. Cela masque l'élément à l'intérieur des commandes ls, GUI Finder.

Supprimer les drapeaux sur macOS

Pour effacer un drapeau particulier, placez l'inverse. Dans la plupart des cas, cela signifie "non" avant votre commande. Dans le cas d nodump , Utiliser le drapeau déverser Par exemple

sudo chflags dump /usr/bin/local/oty.sh

Des termes plus standards peuvent être inversés en utilisant le préfixe "aucune", Tels que:

sudo chflags nosappnd /usr/bin/local/oty.sh

Comme avec chmod , Il existe une balise de redondance:

chflags  -R nohidden ~/Desktop

Une fois les indicateurs effacés, vous serez libre de modifier la propriété et les autorisations du fichier comme prévu.

Utiliser les attributs sur un système Unix

Comment utiliser les indicateurs de fichier pour modifier son comportement sur macOS - Mac

Unix exécute un système similaire sur le backend, mais est géré avec des commandes différentes. Sur les plates-formes Linux les plus populaires, vous pourrez accéder à la place chattr et lsattr. Ces drapeaux sont utilisés pour changer et afficher les "attributs", ce que font les drapeaux sur la plupart des autres installations Unix.

Les fonctionnalités peuvent être trouvées avec lsattr:

lsattr /path/to/file.txt

Le changement d'attributs dépend du code de configuration initial et est répertorié sur la page Accueil chattr:

"Les caractères" acdeijstuADST "spécifient les nouveaux attributs des fichiers: append only (a), compressé (c), no dump (d), e-format (i), journalling (j) , T (), undeletable (u), no onime (A), mises à jour simultanées de répertoire (D), mises à jour simultanées (S) et hiérarchie de répertoires supérieurs (T). "

Cela ressemble à ceci:

chattr +s /file/name.txt

Définit l'attribut de suppression sûre pour le chemin sélectionné.

La couverture

Les drapeaux sont très utiles pour déterminer qui peut changer le fichier. En verrouillant les fichiers, vous pouvez empêcher toute manipulation ou modification non intentionnelle au niveau du système de fichiers. Sans remonter aux pouvoirs de la routine ou au propriétaire du fichier, puisque ces privilèges ne peuvent pas être modifiés, ils sont donc relativement sûrs.

source
Aller au bouton supérieur