Як користуватися
- Позначте прапорці читання, запису та виконання для власника, групи та всіх інших.
- Або введіть вісімкове значення, наприклад 640, або символьний рядок, як-от rw-r----- чи -rw-r-----, скопійований із ls -l.
- За потреби додайте setuid, setgid або sticky bit чи виберіть поширене значення.
- Введіть ім’я файлу та скопіюйте команду chmod.
Як це працює
Кожен із трьох класів (власник, група, інші) має три права доступу. Читання дає 4, запис — 2, виконання — 1, а їхня сума є однією вісімковою цифрою, тому rwx = 7, r-x = 5, r-- = 4. Три цифри утворюють режим: 755 означає rwx для власника та r-x для групи й інших.
Необов’язкова четверта цифра спереду містить спеціальні біти: 4 для setuid, 2 для setgid і 1 для sticky. У символьному вигляді вони замінюють позицію виконання: s для setuid або setgid, t для sticky. Велика S або T означає, що спеціальний біт встановлено, а виконання — ні, що зазвичай є помилкою.
Символьне поле приймає дев’ять символів (rwxr-xr-x) або десятисимвольну форму, яку виводить ls -l, де перший символ — тип файлу (- для файлу, d для каталогу) і тут ігнорується. Кінцеві . або + від SELinux чи ACLs також приймаються.
Показано дві команди: вісімкову форму, яка встановлює всі біти одночасно, та еквівалентну символьну форму, як-от u=rwx,g=rx,o=rx. Імена файлів з пробілами чи іншими спеціальними символами беруться в лапки для оболонки; початкові ~/ і знаки підстановки * та ? залишаються без лапок, щоб оболонка могла їх розгорнути. У GNU chmod вісімковий режим для каталогу не скидає вже встановлені біти setuid або setgid; якщо потрібно їх прибрати, використовуйте символьну форму або п’ятицифровий режим, наприклад 00755.
Приклади
Файли й каталоги вебсайту
Файли, які вебсервер лише читає, зазвичай мають режим 644 (rw-r--r--), а каталоги — 755 (rwxr-xr-x), щоб до них можна було перейти та переглянути вміст.
Приватний SSH-ключ
SSH відхиляє ключі, які можуть читати інші. Позначте лише читання й запис для власника, щоб отримати 600 і команду chmod 600 ~/.ssh/id_ed25519 (шлях введіть як ім’я файлу).
Спільний каталог завантажень
Каталоги у стилі /tmp використовують 1777 (rwxrwxrwt): усі можуть створювати файли, але sticky bit не дає користувачам видаляти файли одне одного.
Поширені запитання
Яка різниця між 755 і 775?
З правами 775 група також може записувати (створювати, змінювати та видаляти файли в каталозі). З правами 755 записувати може лише власник; група та інші можуть читати й виконувати.
Чому варто уникати 777?
Права 777 дозволяють будь-якому користувачу в системі змінювати або замінювати файл. На вебсервері це може дозволити іншому обліковому запису або скомпрометованому процесу впровадити код. Надавайте право на запис лише власнику або окремій групі.
Що означає execute для каталогу?
Для каталогу execute (x) означає право входити в нього та отримувати доступ до файлів усередині. Саме читання дозволяє переглядати назви, але не відкривати файли.
Чи змінює це права доступу на моєму комп’ютері?
Ні. Він лише обчислює значення та формує текст команди. Команду ви виконуєте самостійно в терміналі.
Конфіденційність
Усе обчислюється у вашому браузері. Ім’я файлу, яке ви вводите, нікуди не надсилається, не зберігається та не потрапляє в аналітику.