Tool.Yun
Outils pour les développeurs
Aide-mémoire PowerShell
Aide-mémoire de la commande chmod
Aide-mémoire des commandes Tmux
Aide-mémoire des commandes Zellij
Aide-mémoire des commandes à l'écran
Bash Cheatheet
Docker Cheatheet
Docker Compose Cheatheet
Docker Swarm Cheatheet
Dockerfile Cheatheet
Feuille de triche
Feuille de triche de Markdown
Feuille de triche regex commune
Git Cheatheet
Git sémantique commit trichetheet
JQ TicheSheet
JSONPath Syntax Cheatheet
K8S Cheatheet
Nano Cheatheet
Nginx trichetheet
SED CHRYSHEET
Sélectionneurs CSS
Vim Cheatheet
Xpath syntaxe Cheatheet
Décodeur de code QR
Générateur de code QR
Générateur de code QR WiFi
Générateur de code-barres
Générateur de contacts QR
Lecteur de code-barres
Validateur GTIN
tools.epc-qrcode-generator.name
Base64 Encodeur / décodeur hexagonal
Base64 Encodeur de chaîne / décodeur
CSV aux données
Caractères Unicode à Java Entities Converter
Computer de consommation d'énergie et de dépenses
Convertisseur d'unité de stockage de données
Convertisseur dBm mW
Convertisseur de base entier
Convertisseur de coordonnées géographiques
Convertisseur de fichiers Base64
Convertisseur de format de variables Env
Convertisseur de propriétés
Convertisseur numérique romain
De nombreux convertisseurs d'unités
Excel aux données
Générateur ulide
Normalizer par e-mail
Texte au binaire UTF-8
Texte à Unicode
Torrent à l'aimant
ANSIBLE Vault Crypt Decrypt
Analyseur JWT
Analyseur SAML
Bcrypt
Calculateur CRC
Certificat / analyseur clé
Chiffrement de chaînes Jasypt
Chiffrement de fichiers PGP
Convertisseur de certificat SSL
Cryptage PGP
Cryptage RSA
Crypter / décrypter le texte
Cryptographie d'âge
Encodeur/décodeur Bech32
Générateur HMAC
Générateur JWT
Générateur de RSE
Générateur de certificat x509
Générateur de paires de clés ECDSA
Générateur de paires de clés ED25519
Générateur de paires de clés RSA
Hachage Argon2
Hachage de fichiers
Niceware Octets en phrase de passe
Partage de secrets de Shamir
Paseto / Paserk public / privé
Paseto / paserk local
Pgp keygen
Signataire et vérificateur RSA / DSA / ECDSA
Texte de hachage
Alarme
Alarme Cron / en semaine
Analyseur de fichiers ical
Calculateur ETA
Calculateur TTL
Calculatrice de durée
Calculatrice de durée de date
Calculatrice de jours
Chronomètre
Compte à rebours
Convertisseur de date
Convertisseur de fuseau horaire
Convertisseur de numéros de semaine
Générateur ical
Quel jour ?
fusion ical
Convertisseur de format Docker Compose
Docker Compose vers un fichier .env
Docker Composer to Docker Run Converter
Docker Inspecter à Docker Run
Docker Run to Kubernetes
Docker Run vers des quadroutes
Docker compose aux quadlets
Docker compose à kubernetes
Docker exécuté vers Docker Compose Converter
Générateur RBAC Kubernetes
Générateur d'étiquettes Dockerfile
Trafik Docker compose Maker
Téléchargeur d'images Docker
Validateur Docker Compose
Étiquettes Docker Pangolin
Analyseur de téléphone et formateur
Calculateur SLA
Calculateur d'IMC
Calculateur de rythme de course
Chercheur de codes de pays ISO 3166
Compatibilité des licences logicielles
Convertisseur de calendrier
Convertisseur de devises
Convertisseur en majuscules RMB
Dictionnaire en ligne
Directives d'éclairage IES
Explication des commandes Shell
Recherche ISO 639
Recherche Unicode
VALIDATEUR DE LUHN
VALIDATEUR IBAN et PARSER
VATURE VALIDATEUR
Validateur ISBN et analyseur
Vérificateur de carte de crédit
Générateur d'expressions Cron
Amélioration et minification CSS/JS
Convertisseur de devis
Convertisseur de fichiers hexadécimal
Convertisseur en boucle
Escaper de la chaîne
Générateur GitIgnore
Générateur d'attributs Git
Générateur de chaînes de connexion à la base de données
Générateur de courrier
Générateur de création de bases de données
Générateur de fausses données
Générateur de favori
Générateur de paramètres SQL
Générateur de scripts de test de charge K6
Générateur de secrets Django
Générateur de tables de base de données
Highlighter de code / scripts
Insert JSON à SQL
JSON à Protobuf
JSON à TypeScript
Javascript Unobfuscator / Unpacker
Jolie
Meta Generator ouvrir
Minificateur SQL
Minuterie de pomodoro
Obfuscateur JavaScript
SQL Prettify et Format
Stacktrace plus jolie
Séparateur de fichiers
Testeur API
Testeur Picomatch
Testeur d'échappement ANSI
Testeur d'interface utilisateur de fanfaronnade
Éditeur de commandes CLI
Calculateur d'amortissement
Convertisseur UUID
Générateur UUIDS
Générateur de code OTP
Générateur de code PIN
Générateur de mots de passe Diceware
Générateur de nanoïdes
Générateur de nombres aléatoires
Générateur de numératoires
Générateur de phrase passe
Générateur de phrases passagères BIP39
Générateur de token
Aperçu SVG
Comparateur d'images
Convertisseur Heic
Convertisseur ICO / PNG
Convertisseur de formats d'image
Filigrane
GIF vers MP4
Image EXIF ​​/ Metadata / GPS / JPEG Quality Reader
Image Resizer
Image et PDF OCRIE
Image à SVG (Potrace)
Inverseur de couleur d'image
Magnétophone
Rogner l'image
Supprimer l'arrière-plan de l'image
Supprimer l'exif
Cueilleur de cartes
Flipper de monnaie
Roue de fortune
Rouleau de dés
Analyseur de taille JSON
Aplatisseur JSON / Undeptener
CSV vers JSON
Convertisseur JS à JSON
Convertisseur JSON à JS
Convertisseur JSON à YAML
Convertisseur de chaîne JSON
Entité JSON à Java
Fusion JSON
JSON Diff
JSON Escaper / UNSCAPER
JSON MINIFY
JSON PRUTTIFY ET FORMAT
JSON aux données
JSON pour s'opposer
JSON vers .env
JSON vers MessagePack
JSON à C
JSON à CSV
JSON à PHP Code
JSON à PHP-Array
JSON à Python
JSON à SQL DDL
JSON à Schema
JSON à TOML
JSON à TS
JSON à XML
JSON à aller
Linter JSON
Maître de tri JSON
Message Pack vers JSON
ObjGen vers JSON
PHP-Array à JSON
Requête JSON
Rédacteur en chef JSON
Testeur JQ / JSONPath
tools.json-patch.name
Aide-mémoire de câblage RJ45 Cat6
Analyser de courrier électronique à rebond
Analyseur URL
Analyseur de cookies
Analyseur de rapport DMARC
Analyseur par e-mail
Calculateur de résistance
Chercheur de propriétés LDAP activeIrectory
Console du port série
Convertisseur GZIP / Deflate
Convertisseur brut intelligent
Convertisseur de codage mime
Convertisseur de numéro de point flottant
Convertisseur moyen-endien
Convertisseur objetId MongoDB
Décodeur EMV TLV
Décodeur URL de partage SharePoint
Décodeur de transactions ETH
Détecteur / décodeur de charme de texte
Détecteur de type de fichier
Encodeur / décodeur hexagonal
Extension d'URL courtes
Extracteur d'identification de flocon de neige
Générateur TCPDUmp
Générateur d'URL
Générateur de commandes Nmap
Informations sur le kicode
Lecteur de fichiers parquet
Masque de données sensible
Outlook Safelink Decoder
Parser MSG Outlook
Testeur DNS
Testeur HTTPS
Testeur de pixels morts
Testeur de propagation DNS
键盘测试器
Aperçu Markdown
Coller comme marquage
Différence Markdown
Epub vers Markdown
Générateur de TOC Markdown
Générateur de tableaux Markdown
HTML à Markdown
Markdown Lorem Ipsum
Markdown vers données
Markdown vers texte
Markdown à Docx
Markdown à HTML
Tableau de marque Beautifier
tools.markdown-format-converter.name
Éditeur de Markdown
Calculateur de pourboire
Calculatrice binaire
Convertisseur de formats mathématiques
OCR mathématique
Visualiseur de courbes trigonométriques/équations
Évaluateur mathématique
Calculatrice de distance GEO
Calculatrice du rapport d'aspect
Pourcentage de calculatrice
Référence
Compresseur PDF
Concaner PDF
Crypte PDF
Extracteur de page PDF
Extracteur de texte PDF
HTML vers PDF
PDF décrypter et déverrouiller
Pdf linéarize / fastweb
Vérificateur de signature PDF
Convertisseur d'accélération
Convertisseur d'angle
Convertisseur d'illuminance
Convertisseur d'unités de masse
Convertisseur d'unités de pression
Convertisseur d'unités de zone
Convertisseur d'énergie
Convertisseur d'énergie alimentaire
Convertisseur de débit volumique
Convertisseur de forces
Convertisseur de fréquence
Convertisseur de préfixes SI
Convertisseur de puissance
Convertisseur de température
Convertisseur de vitesse
Convertisseur des unités de longueur
Convertisseur des unités de volume
Ordinateur de fitness
Analyseur de force de mot de passe
Autorisation SIP
Calculateur IPv4 / 6 à CIDR (S)
Calculateur de fiabilité RAID
Calculateur de raid
Calculateur de taux de transfert de données
Calculateur visuel de sous-réseau
Calculatrice IPv4 / 6 CIDR à la plage IP
Calculatrice de ChMOD
Calculatrice de disque dur
Calculatrice de sous-réseau IPv4
Calculatrice de sous-réseau IPv6
Calculatrice de zpool RAID
Convertisseur d'adresse IPv4
Convertisseur d'adresse IPv6
Convertisseur d'adresse MAC
Convertisseur punycode
Curl Generator
Dnsbl
Décodeur ARPA
Décodeur X-VR-Spamcause
Désinfectant Har
Emplacement IP Geo
Entiers vers ipv4 / ipv6
Expanseur de plage IPv4
Force de mot de passe zxcvbn
Formateur Nginx
Formateur de commandes Shell
Générateur Apache Logrotate
Générateur Bimi DNS
Générateur DKIM DNS
Générateur DMARC DNS
Générateur DNS PTR
Générateur DNS SPF
Générateur FSTAB
Générateur HTACCESS
Générateur HTPASSWD / HTACCESS
Générateur IPv6 ULA
Générateur RSYNC
Générateur WPA PSK
Générateur d'adresses MAC
Générateur d'autherines de base
Générateur d'option43
Générateur de commandes UFW
Générateur de commandes d'arrêt
Générateur de configuration de Wireguard
Générateur de crontab
Générateur de ports aléatoires
Générateur iptables
IPv4-6 / iPrange / CIDR dans iPrange / CIDR / IPMask
Les sous-réseaux IP excluent le calculatrice
Linéariseur de commandes Shell
Listeur de sous-réseaux IPv4
Mon adresse IP
Numéros de port
Ping
Recherche d'adresse MAC
Requêtes DNS
Requêtes DNS/RDAP Cloudflare
Testeur WebSocket
Testeur de microphone
Testeur de ports TCP/UDP
Téléchargeur multi-link
Vérificateur Whois
Zpool Cheatheet
générateur de ligne de commande firewalld
tools.restic-command-generator.name
tools.url-redirection-checker.name
Linter TOML
TOML à JSON
TOML à YAML
Calculatrice de Levenshtein
Comparer la police
Convertisseur de cas
Convertisseur de code Morse
Convertisseur de disposition de clavier
Convertisseur de liste
Convertisseur rune
Diagramme de structure de dossiers
Emballer des fichiers pour l'IA
Encodeur / décodeur de jetons GPT
Estimateur de jeton GPT
Exportateur de Mermaid
Extraire du texte de HTML
Finder de lignes en double
Format unicode
Générateur Lorem Ipsum
Générateur de citations
Générateur de commande SED
Générateur de texte ASCII Art
Générateur/Bannière Zalgo
Image à Ascii Art
JSON vers TOON
Lecteur RSVP
Mots distincts
Obfuscateur de cordes
Partager le lien social
Remplaceur de texte intelligent et linebreaker
Répertorie le comparateur
Splitter rapide de l'IA
Statistiques de texte
Sélecteur d'emojis
Sélecteur de lignes aléatoires
TOON vers JSON
Tabulation pour espaces
Testeur Regex
Texte aux noms Unicode
Texte diff
Texte à l'alphabet de l'OTAN
Traducteur texte
Unicode à GSM-7
Vérificateur I et L
Analyseur d'agent utilisateur
CSS Gettificateur
Chaîne de slufier
Codes d'état HTTP
Convertisseur CSS XPATH
Convertisseur REM Pixel
Convertisseur d'unités CSS
Convertisseur de couleurs
Encoder / décoder les chaînes formatées
Fragment de recherche de texte d'URL
Futur d'URL
Générateur URL UTM
Générateur d'espace réservé SVG
Générateur de gradient CSS
HTML GARTIFIER
HTML vers XHTML
HTML vers données
Image à CSS
Informations sur l'appareil
Minficateur HTML
Nettoyant URL
Nettoyer HTML
Roue de couleur
Types de mime
Vérificateur de contraste de couleur
Échapper aux entités HTML
Éditeur HTML WYSIWYG
Formateur XML
Linter XML
ObjGen vers HTML
Testeur XSLT
Testeur xpath
XML à JSON
Apllareur YAML / Undeptener
Fusion de Yaml
YAML à JSON Converter
YAML à TOML
Yaml Prettify and Format

Aide-mémoire de la commande chmod

Aide-mémoire pour les modifications de permissions sous Linux

chmod (change mode) sets who may read, write, and execute a file or directory on Unix-like systems. The mode can be written symbolically (u+x) or numerically (755) — both reach the same result.

chmod [options] <mode> <file>...

💡 Inspect before and after with ls -l <file>, or get the octal value directly with stat -c '%a %n' <file>.

🗂 Reading ls -l Output

-  rwx  r-x  r--   →  754
│  │    │    │
│  │    │    └── others : r-- = 4
│  │    └─────── group  : r-x = 5
│  └──────────── user   : rwx = 7
└─────────────── type   : - file · d directory · l symlink · c/b device

🧑 User Classes (who)

SymbolClassApplies to
uUserThe file’s owner
gGroupMembers of the file’s group
oOthersEveryone else
aAllu, g and o at once (implied when omitted)

🔐 Permission Bits (what)

SymbolPermissionOctalOn a fileOn a directory
rRead4Read the contentsList entry names (ls)
wWrite2Modify the contentsCreate, rename and delete entries
xExecute1Run as a programEnter it (cd) and reach entries by name
-None0——

📝 Symbolic Mode

OperatorEffect
+Add the listed permissions, leave the rest untouched
-Remove the listed permissions, leave the rest untouched
=Set exactly these permissions, clearing the others for that class
# add execute for the owner
chmod u+x <file>

# remove write from the group
chmod g-w <file>

# cut off group and others entirely
chmod go-rwx <file>

# everyone gets read only, nothing else
chmod a=r <file>

# several clauses, comma separated
chmod u=rwx,go=rx <file>

# 'a' is implied, then filtered by the umask
chmod +x <file>

# regular and special bits in one call
chmod u+x,g+s <file>

# copy the mode of another file
chmod --reference=<ref> <file>

💡 Use X (capital) instead of x to add execute only to directories and to files that already have an execute bit — the safe way to fix a tree: chmod -R u=rwX,go=rX <dir>.

🔢 Numeric (Octal) Mode

Each digit is the sum of r (4), w (2) and x (1):

OctalSumBits
74+2+1rwx
64+2rw-
54+1r-x
44r--
32+1-wx
22-w-
11--x
00---

Three digits map to user, group, others. An optional fourth leading digit sets the special bits (chmod 4755, see below).

Common modes

ModeSymbolicTypical use
777rwxrwxrwxFull access for everyone — ⚠️ almost never the right answer
755rwxr-xr-xScripts, binaries and directories
750rwxr-x---Executable for the owner and their group only
700rwx------Private directory (~/.ssh, ~/.gnupg)
664rw-rw-r--Files shared read-write inside a group
644rw-r--r--Regular files, web assets, configs
640rw-r-----Config with secrets, readable by a service group
600rw-------Private files (~/.ssh/id_ed25519, .env)
400r--------Read-only key material
chmod 755 script.sh

chmod 644 notes.txt

chmod 600 ~/.ssh/id_ed25519

🧪 Special Permission Bits

These go beyond read/write/execute and control the execution context and deletion rules.

BitOctalSymbolicApplies toEffectShown in ls -l as
setuid4u+sExecutable filesRuns with the file owner’s privilegess in the user field
setgid2g+sExecutables, directoriesRuns as the file’s group / new entries inherit the directory’s groups in the group field
sticky1+tDirectoriesOnly the entry’s owner (or root) may delete or rename itt in the others field
# setuid → -rwsr-xr-x
chmod 4755 /usr/bin/somebinary

# setgid → drwxrwsr-x: one group for the whole tree
chmod 2775 /srv/shared

# sticky → drwxrwxrwt: a shared drop box, like /tmp
chmod 1777 /srv/tmp

# strip every special bit again
chmod u-s,g-s,o-t <file>

⚠️ setuid is a privilege-escalation vector — never set it on scripts or on binaries a user can replace. Linux ignores it on interpreted scripts anyway.

ℹ️ A capital S or T in ls -l (-rwSr--r--) means the special bit is set while the matching x bit is not — usually a mistake.

📂 Directory Access Matrix

x on a directory means traverse, not execute — without it nothing below the directory can be reached, no matter how permissive the files themselves are.

ModeList names (ls)Details (ls -l, stat)Enter (cd)Open a known fileCreate / delete entries
r--✅❌❌❌❌
--x❌✅ (by exact name)✅✅❌
r-x✅✅✅✅❌
rwx✅✅✅✅✅
-w-❌❌❌❌❌ (write needs x)

🔁 Recursive & Selective Changes

# blunt: also marks every file executable
chmod -R 755 <dir>

# preferred: X only touches dirs + real executables
chmod -R u=rwX,go=rX <dir>

# directories only
find <dir> -type d -exec chmod 755 {} +

# files only
find <dir> -type f -exec chmod 644 {} +

# make every shell script executable
find <dir> -type f -name '*.sh' -exec chmod +x {} +

⚙️ Useful Options

OptionDescription
-R, --recursiveApply to directories and everything inside them
-v, --verbosePrint a line for every file processed
-c, --changesPrint a line only when a mode actually changed
-f, --silent, --quietSuppress most error messages
--reference=<file>Reuse the mode of another file instead of spelling it out
--preserve-rootRefuse to run recursively on / — not the default, unlike rm
-h (BSD/macOS)Act on the symlink itself instead of its target

🎭 umask — Default Permissions for New Files

New files start from 666 and new directories from 777; the umask bits are removed from that base.

# show the current mask, e.g. 0022
umask

# show it symbolically, e.g. u=rwx,g=rx,o=rx
umask -S

# stricter default for this shell session
umask 027
umaskNew filesNew directories
022644755
002664775
027640750
077600700

💡 Put umask 027 in ~/.bashrc (or a systemd unit’s UMask=) to make the default stick.

🚑 Common Recipes

GoalCommand
Make a script runnablechmod +x deploy.sh
Lock down an SSH key pairchmod 700 ~/.ssh && chmod 600 ~/.ssh/id_* && chmod 644 ~/.ssh/*.pub
Serve web content read-onlychmod -R u=rwX,go=rX /var/www/site
Shared team directory (one group)chmod 2775 /srv/shared
Public scratch directorychmod 1777 /srv/tmp
Clone the mode of a known-good filechmod --reference=good.conf new.conf
Undo an accidental chmod -R 777 .find . -type d -exec chmod 755 {} + && find . -type f -exec chmod 644 {} +

🧰 Related Commands

CommandPurpose
chown <user>:<group> <file>Change the owner and/or group
chgrp <group> <file>Change the group only
ls -l / ls -ld <dir>Show permissions (-d for the directory itself, not its contents)
stat -c '%a %A %U:%G %n' <file>Octal mode, symbolic mode, owner and group in one line
namei -l <path>Show the permissions of every component of a path
getfacl / setfaclFine-grained ACLs when u/g/o is not expressive enough
id / groupsCheck which groups you actually belong to

⚠️ Gotchas

  • chmod 777 is not a fix. It grants every local user write access; the real problem is almost always ownership (chown) or a missing x on a parent directory.
  • “Permission denied” on a file with rw-? Every directory in the path needs x. Debug the whole chain with namei -l /path/to/file.
  • Interpreted scripts need r too — the kernel hands the file to the interpreter, which has to read it.
  • Group changes need a new login (or newgrp <group>) before the shell picks them up.
  • FAT/NTFS/exFAT mounts ignore chmod — set permissions with the umask=, fmask= and dmask= mount options instead.
  • Removing x from a directory hides everything below it, even world-readable files.

📚 Resources

  • GNU coreutils — chmod invocation
  • GNU coreutils — file permissions
  • Man pages: man 1 chmod · man 1 umask · man 1 chown · man 5 acl