Outils de développement · Calculatrice Chmod
Comment umask décide des autorisations par défaut des nouveaux fichiers et dossiers
· Comment ça marche
chmod unix flux de travail du développeur
Les nouveaux fichiers ne commencent pas à 777 ; un masque est appliqué en premier. Cet article montre le fonctionnement exact au niveau du bit, pourquoi les fichiers et les répertoires finissent par être différents et comment raisonner sur umask 022, 027 et 077.
Fichiers que le serveur Web ne peut pas lire - une tâche cron écrit les fichiers 600 dans un répertoire servi par nginx, et personne n'a exécuté chmod sur quoi que ce soit
Un mode de fichier nouvellement observé peut être décodé ici même lorsque le processus qui l'a produit est inconnu. Entrez 600 et la calculatrice affiche rw------- : propriétaire en lecture et en écriture, sans autorisation de groupe ou autre. Cela explique les bits du résultat fourni. Il n'établit pas pourquoi une tâche planifiée a produit cette valeur ni si un processus Web peut lire le fichier.
L'article 501 fournit la contention diagnostique nécessaire. Un mode valide peut coexister avec une mauvaise propriété ou un bit d'exécution manquant sur un répertoire parent. Cette page ne reçoit ni l'identité du processus ni les informations sur le chemin. Il peut comparer 600 avec un 640 proposé et exposer le bit de lecture de groupe ajouté, mais il ne peut pas attribuer le mode d'origine à umask, à un service, à un shell ou à un système de fichiers.
D'où proviennent les nouvelles autorisations : le mode demandé (généralement 666 pour les fichiers, 777 pour les répertoires) et l'umask du processus
Les modes de création demandés et l'umask sont des entrées en arrière-plan, pas des contrôles de la calculatrice. Il n'y a pas de champ umask ni aucune opération permettant de créer un fichier ou un répertoire. Tout exemple en mode création doit donc arriver comme un résultat calculé en externe. Une fois fournie, la calculatrice peut traduire ce résultat sous des formes octales, symboliques, matricielles, récapitulatives et en anglais simple sans prétendre comment la valeur a été obtenue.
Cette portée corrigée est importante car la sortie synchronisée peut sembler plus faisant autorité qu'elle ne l'est. La saisie de 640 donne rw-r----- et identifie le propriétaire read/write plus la lecture du groupe. La page peut vérifier cette représentation. Il ne peut pas prédire les valeurs par défaut d'un processus de connexion, d'une tâche planifiée, d'un service, d'un conteneur ou d'un système de stockage, car aucun de ces contextes n'apparaît parmi ses entrées ou son implémentation.
Les modes de création demandés et umask sont des entrées en arrière-plan non implémentées ici
L'arithmétique AND-NOT doit être effectuée en dehors de cette calculatrice. Son noyau accepte un entier complet et le décompose en drapeaux nommés ; il n'a pas de deuxième opérande pour un masque de création. Par conséquent, la page ne peut pas démontrer une formule de masque, comparer la soustraction avec des opérations au niveau du bit ou décider si un calcul externe a été effectué correctement avant d'entrer dans son mode résultant.
Ce qu'il peut vérifier, c'est la configuration binaire finale. Si une autre source fiable fournit 640, la matrice affiche la lecture et l'écriture du propriétaire, la lecture du groupe et aucune autre autorisation. La modification d'une lecture de groupe reconstruit 600, tandis que la modification d'une autre lecture sur reconstruit 644. Ces transitions vérifient l'arithmétique des modes à l'intérieur du convertisseur sans les présenter comme des calculs de masque de création ou des preuves d'un processus invisible.
L'arithmétique AND-NOT doit être effectuée en dehors de la calculatrice
La calculatrice peut comparer les modes fichier et répertoire résultants, mais elle ne crée ni l'un ni l'autre. Avec 644 sélectionné, l'explication du fichier normal décrit la lecture et la modification d'un fichier ; changer la cible en répertoire change ces verbes en listant, en modifiant les entrées et en atteignant les noms. L'entier reste 644. Ce contraste montre pourquoi le type de cible est important sans affirmer quelle création répond par défaut aux requêtes du programme.
Un résultat 755 fourni séparément peut être inspecté de la même manière. Son affichage est rwxr-xr-x, avec exécution active pour toutes les classes ; 644 est rw-r--r--, avec exécution absente partout. La page expose clairement cette différence. Il ne dérive aucune valeur de 666, 777, 022 ou de toute autre entrée en arrière-plan, car ces calculs ne sont pas implémentés dans CHMOD_SOURCES.
La calculatrice peut comparer les modes fichier et répertoire résultants mais ne crée ni l'un ni l'autre.
Pour un exemple de masque restrictif, gardez le calcul externe et décodez uniquement les résultats indiqués. Si un fichier régulier observé est 640, la calculatrice affiche rw-r-----; si un répertoire observé est 750, il restitue rwxr-x---. Le propriétaire conserve un accès plus large dans les deux cas, le groupe reçoit un ensemble plus restreint et les autres n'en reçoivent aucun. Ces déclarations découlent directement des modes complétés.
Une autre paire fournie en externe, 600 et 700, rend la même méthode de révision visible sans revendiquer son origine. Le mode 600 permet uniquement au propriétaire de lire et d'écrire sur un fichier. Le mode 700 permet uniquement au propriétaire de lire, d'écrire et d'exécuter sur un répertoire. Le convertisseur peut confirmer chaque classe et chaque bit, mais il ne peut faire correspondre aucun des résultats à un paramètre umask particulier à partir de ses propres preuves.
Exemple pratique : décoder les résultats calculés en externe pour les masques restrictifs
L'endroit où un processus obtient umask se trouve en dehors des preuves du référentiel. Le calculateur ne contient aucune intégration avec des shells, des planificateurs, des gestionnaires de services, des conteneurs ou des environnements de processus. Nommer l’un de ces systèmes comme cause d’un mode dépasserait donc ce que la page observe. Commencez par un mode fiable rassemblé ailleurs, puis utilisez cette route uniquement pour rendre lisible son propriétaire, son groupe et d'autres bits.
L'aperçu de la commande ne comble pas cette lacune en matière de preuves. Il peut citer un chemin fourni et éventuellement afficher -R, mais il n'ouvre jamais le chemin ni ne lit les paramètres du processus. De même, le sélecteur de cible change le langage explicatif plutôt que de découvrir un type d'objet. Une conversion cohérente réduit la question des autorisations ; il ne révèle pas quel composant a sélectionné le mode ni si la sélection était intentionnelle.
L'endroit où un processus obtient umask se trouve en dehors des preuves du référentiel
Les ACL par défaut et les modes de création explicites sont en dehors de cet outil. Son modèle de données comporte une classe propriétaire, une classe groupe, tous les autres et trois bits spéciaux. Il n'y a pas d'entrées ACL nommées, de masques ACL, d'appels de création ou d'arguments de programme. Le calculateur ne peut donc pas décider si un mode terminé est issu d'une autre couche de contrôle d'accès ou d'une application fournissant une requête particulière.
Un mode peut toujours être vérifié sans regrouper ces mécanismes. Entrez la valeur octale observée, confirmez les neuf positions symboliques et comparez la matrice avec le résumé à quatre chiffres. S'ils sont d'accord, le mode traditionnel a été correctement décodé. Toute réclamation concernant les valeurs par défaut, les effets ACL ou le comportement du programme nécessite une preuve de la part du créateur et du système de fichiers, et non une autre interprétation du même nombre entier.
Les ACL par défaut et les modes d'ouverture explicites sont en dehors de cet outil
Le workflow corrigé est calculé ailleurs, puis inspectez le mode résultant ici. Fournissez la chaîne octale ou de style ls complétée et laissez les champs synchronisés exposer chaque bit. La validation détecte les chiffres octaux mal formés et les lettres dans des positions symboliques incorrectes. Il ne valide pas une expression umask, ne découvre pas un contexte de création ou ne prédit pas ce qu'un futur fichier ou répertoire recevra.
Traitez le résultat comme une seule couche de diagnostic. Un 640 ou 750 décodé peut révéler une autorisation inattendue ou un bit d'exécution manquant, tandis que l'article 501 nous rappelle de vérifier séparément la propriété et la traversée du répertoire parent. Arrêtez-vous avant d’attribuer une cause. La calculatrice prouve comment une valeur fournie correspond aux autorisations ; il n'offre aucune base pour les réclamations concernant les valeurs par défaut du shell, du service, du conteneur, de l'ACL ou du système de fichiers.