DevToolPal
UK

Калькулятор chmod

Перетворює права доступу Unix між прапорцями, вісімковим (755) і символьним (rwxr-xr-x) записом, підтримує setuid, setgid і sticky-біт та формує готову команду chmod.

Працює локально, нічого не завантажується на сервер

Параметри

Права доступу

ЧитанняЗаписВиконанняОсобливі
Власник
Група
Інші

Результат

Тут з’явиться результат

Що вміє інструмент

Калькулятор chmod перетворює права доступу до файлів Unix і Linux між трьома звичними формами запису: сіткою прапорців читання, запису й виконання, вісімковим числом на зразок 755 і символьним рядком на зразок rwxr-xr-x. Він також формує відповідну команду chmod у вісімковій і символьній формі, пояснює, хто що може робити, і підтримує особливі біти setuid, setgid і sticky. Усе працює в браузері.

Як користуватися

  1. Позначте прапорці для власника, групи та інших або введіть режим у поле. Поле приймає вісімковий запис (644, 0644, 4755), рядки в стилі ls -l (rw-r--r-- або -rw-r--r-- з типом файлу попереду) і вирази chmod на зразок u=rwx,g=rx,o= чи a+x.
  2. Прапорці й результати стежать за введенням, а клацання прапорця переписує режим у тому самому записі.
  3. Укажіть ім’я файлу в Параметрах і ввімкніть Рекурсивно (-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 на місці права виконання.