Calculateur chmod
Convertissez les permissions de fichiers Unix entre octal (755), lettres (rwxr-xr-x), ls -l et clauses chmod, avec une grille de cases à cocher et les bits setuid, setgid et sticky.
Exemples de code
Copiez ces exemples dans votre propre projet. Chacun n'utilise que la bibliothèque standard du langage : il n'y a rien à installer.
const mode = parseInt('755', 8)
const letters = [...'rwxrwxrwx'].map((letter, i) => (mode & (0o400 >> i) ? letter : '-'))
console.log(letters.join(''))Ce qu’il fait
Convertit les permissions de fichiers Unix entre octal (755), lettres de permission (rwxr-xr-x), une ligne ls -l et des clauses chmod (u=rwx,g=rx,o=rx). Cochez la grille et chaque notation suit, y compris les bits setuid, setgid et sticky.
Comment l’utiliser
- Saisissez un mode dans n’importe quelle notation, ou cochez les cases.
- Lisez-le dans chaque notation et modifiez-en une.
- Copiez la valeur convertie, ou choisissez un type de fichier pour voir la ligne
ls -ld’un répertoire ou d’un lien.
Exemples
755 donne rwxr-xr-x : le propriétaire peut lire, écrire et exécuter, tous les autres peuvent lire et exécuter. 644 donne rw-r--r--, le mode habituel d’un fichier, et 1777 donne rwxrwxrwt, un répertoire partagé comme /tmp.
Bon à savoir
- Les chiffres additionnent lecture 4, écriture 2 et exécution 1 pour le propriétaire, le groupe et tous les autres. Un quatrième chiffre devant ajoute setuid 4, setgid 2 et sticky 1.
- En lettres, les bits spéciaux prennent la place de l’exécution :
spour setuid et setgid,tpour sticky. UnSouTmajuscule signifie que le bit spécial est positionné sans le bit d’exécution. - Les clauses comme
u=rwx,g=rx,o=rxfixent chaque classe en entier, et une classe qu’aucune clause ne nomme n’a aucune permission. Les formes relatives commeu+xne sont pas lues ici, car elles dépendent du mode actuel d’un fichier.
Que signifient les chiffres de chmod ?
Chaque chiffre additionne la lecture (4), l’écriture (2) et l’exécution (1) pour une classe : le premier chiffre est le propriétaire, le deuxième le groupe et le troisième tous les autres. 755 signifie donc que le propriétaire peut lire, écrire et exécuter, et que les autres peuvent lire et exécuter. Un quatrième chiffre devant ajoute setuid (4), setgid (2) et sticky (1).
Questions fréquentes
Que sont setuid, setgid et le bit sticky ?
Avec setuid et setgid, un programme s’exécute avec les permissions de son propriétaire ou de son groupe plutôt qu’avec celles de la personne qui le lance. Sur un répertoire, setgid fait hériter du groupe les nouveaux fichiers, et le bit sticky (comme sur /tmp) n’autorise que le propriétaire d’un fichier à le supprimer. En lettres, ce sont un s ou un t à la place de l’exécution ; un S ou un T majuscule signifie que le bit d’exécution n’est pas positionné.
Pourquoi 777 est-il une mauvaise idée ?
Tous les utilisateurs du système peuvent alors modifier ou remplacer le fichier. Donnez au propriétaire ce dont il a besoin et au groupe ou aux autres seulement l’accès nécessaire : pour des scripts, c’est en général 755, pour des fichiers privés 600.
Cet outil envoie-t-il ma saisie quelque part ?
Non. Tout se passe dans votre navigateur. Ce que vous saisissez n’est jamais envoyé à nos serveurs.