Що вміє інструмент
Калькулятор chmod перетворює права доступу до файлів Unix і Linux між трьома звичними формами запису: сіткою прапорців читання, запису й виконання, вісімковим числом на зразок 755 і символьним рядком на зразок rwxr-xr-x. Він також формує відповідну команду chmod у вісімковій і символьній формі, пояснює, хто що може робити, і підтримує особливі біти setuid, setgid і sticky. Усе працює в браузері.
Як користуватися
- Позначте прапорці для власника, групи та інших або введіть режим у поле. Поле приймає вісімковий запис (
644,0644,4755), рядки в стиліls -l(rw-r--r--або-rw-r--r--з типом файлу попереду) і вирази chmod на зразокu=rwx,g=rx,o=чиa+x. - Прапорці й результати стежать за введенням, а клацання прапорця переписує режим у тому самому записі.
- Укажіть ім’я файлу в Параметрах і ввімкніть Рекурсивно (-R), якщо режим треба застосувати до всього дерева каталогів. Готову команду можна скопіювати одним клацанням.
Типові режими
chmod 755 deploy.sh # rwxr-xr-x
chmod 644 index.html # rw-r--r--
chmod 600 ~/.ssh/id_ed25519 # rw-------
chmod 1777 /tmp # rwxrwxrwt
- 755 для каталогів, скриптів і програм: власник може їх змінювати, усі — читати й запускати.
- 644 для звичайних файлів, наприклад вебсторінок і зображень.
- 600 для особистих файлів на кшталт SSH-ключів і
.env: читати їх може лише власник. SSH відмовляється використовувати ключі, доступні іншим. - 700 для особистих каталогів і 775/664, коли проєкт спільно використовує група користувачів.
Як влаштовані числа
Кожен клас користувачів отримує одну вісімкову цифру — суму читання = 4, запису = 2 і виконання = 1. Для каталогу читання означає перегляд списку імен, запис — створення й видалення файлів усередині, а виконання — вхід до каталогу та доступ до файлів у ньому.
Необов’язкова провідна цифра зберігає особливі біти: setuid = 4, setgid = 2, sticky = 1. У символьному записі вони замінюють літеру виконання: s для setuid і setgid, t для sticky. Велика S або T означає, що особливий біт є, а права виконання немає, — майже завжди це помилка.
Калькулятор показує й відповідну umask — біти, які стандартна umask прибирає з 777, щоб отримати режим. За umask 022 каталоги отримують 755, а файли — 644.
Часті запитання
› Що означає chmod 755?
Кожна цифра стосується класу користувачів: власник, група та інші. 7 = читання (4) + запис (2) + виконання (1); 5 = читання + виконання. Отже, 755 дозволяє власнику все, а іншим — читати й запускати файл; у символьному записі це rwxr-xr-x. Це звичайний режим для скриптів і каталогів.
› Чим 644 відрізняється від 755?
У 644 (rw-r--r--) немає біта виконання, тому він підходить для звичайних файлів: HTML, зображень, конфігурацій. 755 додає виконання для всіх — воно потрібне програмам для запуску, а каталогам — щоб у них можна було зайти.
› Чому chmod 777 — погана ідея?
777 дозволяє будь-якому користувачеві системи змінити чи підмінити файл. На вебсервері це означає, що будь-який скомпрометований процес може переписати ваш код. Краще виправте власника через chown і використовуйте 755 для каталогів та 644 для файлів.
› Що таке setuid, setgid і sticky-біт?
Це четверта, провідна вісімкова цифра. setuid (4) запускає програму від імені власника, setgid (2) — від імені групи або змушує нові файли в каталозі успадковувати групу, а sticky-біт (1) не дає видаляти чужі файли в спільному каталозі на кшталт /tmp. У виводі ls вони видні як s і t на місці права виконання.