TanodTools
FR

Calculateur chmod

Définissez les permissions de fichiers Unix avec des cases à cocher, un nombre octal comme 755 ou le texte rwxr-xr-x, et obtenez les commandes chmod correspondantes.

Fonctionne entièrement dans votre navigateur

Permissions
PropriétaireGroupeAutres
Lecture 4
Écriture 2
Exécution 1

Numérique
Symbolique

Ce que ce mode autorise

QuiSur un fichierSur un répertoire

Gère les neuf bits de permission plus setuid, setgid et sticky, comme le chmod POSIX. L'outil ne lit pas de vrais fichiers, n'affiche pas les propriétaires et ne couvre ni les ACL, ni les attributs de fichiers, ni l'umask. Les modes octaux doivent avoir 3 ou 4 chiffres.

Comment calculer un mode chmod

  1. Cochez les cases pour le propriétaire, le groupe et les autres, ou choisissez un mode courant comme 644 ou 755. Vous pouvez aussi taper un nombre octal ou le texte de neuf lettres, et les cases suivent.
  2. Lisez le résumé en clair de ce que chaque catégorie peut faire sur un fichier et sur un répertoire, ainsi que les éventuels avertissements.
  3. Copiez la commande chmod numérique ou symbolique. Changez d'abord le nom du fichier si vous voulez une commande prête à coller.

Comment les permissions de fichiers Unix sont stockées

Ce calculateur chmod repose sur un principe simple : chaque fichier et répertoire d'un système de type Unix porte un mode court, composé de trois bits de permission (lecture, écriture, exécution) pour chacune des trois catégories (l'utilisateur propriétaire, le groupe propriétaire, tous les autres), plus trois bits spéciaux. Cela fait douze bits, et le nombre octal n'est rien d'autre que ces bits écrits trois par trois, c'est pourquoi les chiffres ne dépassent pas 7. La forme à neuf lettres affichée par ls -l montre les mêmes bits sous forme de lettres.

Lecture, écriture et exécution n'ont pas le même sens sur un répertoire. La lecture permet de lister les noms qu'il contient, l'écriture permet d'ajouter, de renommer et de supprimer des entrées, et l'exécution permet d'entrer dans le répertoire et d'accéder aux éléments par leur nom. Un répertoire avec la lecture mais sans l'exécution affiche ses noms mais refuse l'accès à tout ce qu'il contient, une source fréquente d'erreurs de permission déroutantes.

Les bits spéciaux modifient le comportement d'un mode. Setuid et setgid font tourner un programme avec les droits du propriétaire ou du groupe du fichier au lieu de ceux de l'appelant, ce qui est puissant et donc ignoré pour les scripts shell sur la plupart des systèmes. Setgid sur un répertoire fait hériter son groupe aux nouveaux fichiers, et le sticky bit sur un répertoire empêche les utilisateurs de supprimer les fichiers des autres. Si vous ne savez pas quel mode il faut à un fichier, commencez restrictif et n'ajoutez que ce qu'un message d'erreur réclame.

Astuces

Questions fréquentes

Comment fonctionne le nombre octal ?

Chaque chiffre additionne lecture (4), écriture (2) et exécution (1) pour une catégorie, dans l'ordre propriétaire, groupe, autres. Ainsi, 7 signifie lecture, écriture et exécution, 5 lecture et exécution, et 4 lecture seule. 755 donne tous les droits au propriétaire, et la lecture et l'exécution à tous les autres. Un quatrième chiffre facultatif placé devant contient setuid (4), setgid (2) et sticky (1).

Que signifient les lettres s, S, t et T ?

Elles remplacent le x à la position du propriétaire, du groupe ou des autres. Une minuscule signifie que le bit spécial est activé et que l'exécution l'est aussi ; une majuscule signifie que le bit spécial est activé mais que l'exécution ne l'est pas, ce qui est généralement une erreur. Ainsi, 4755 donne rwsr-xr-x et 4644 donne rwSr--r--.

Quelle différence entre 644 et 755 ?

644 est le mode habituel des fichiers ordinaires : le propriétaire peut lire et écrire, tous les autres peuvent seulement lire. 755 ajoute l'exécution pour tous, nécessaire aux programmes, aux scripts et aux répertoires. Les répertoires ont besoin du bit d'exécution pour qu'on puisse y entrer.

Pourquoi 777 est-il considéré comme dangereux ?

Ce mode permet à n'importe quel utilisateur de la machine, et à tout programme exécuté sous son nom, de modifier ou de remplacer le fichier. Un serveur web qui doit écrire quelque part n'en a pas besoin : attribuer le bon utilisateur ou groupe propriétaire et utiliser 775 ou 770 résout la plupart des erreurs de permission sans ouvrir le fichier à tout le monde.

À quoi sert le sticky bit ?

Sur un répertoire, il empêche les utilisateurs de supprimer ou de renommer les fichiers qui ne leur appartiennent pas, même s'ils peuvent écrire dans le répertoire. C'est pourquoi les dossiers partagés comme /tmp sont en mode 1777. Sur un Linux moderne, il n'a aucun effet sur les fichiers ordinaires.

L'outil modifie-t-il quelque chose sur mon ordinateur ?

Non. Il calcule seulement le nombre et les commandes. Rien de ce que vous saisissez n'est envoyé nulle part, et c'est vous qui exécutez les commandes dans un terminal.