Skip to content

Калькулятор chmod — права доступа к файлам Linux

Конвертация прав доступа Linux между восьмеричной записью (755, 644) и символами rwx. Готовые команды chmod и предупреждения о рискованных режимах вроде 777 — бесплатно, прямо в вашем браузере.

Без отслеживания Работает в браузере Бесплатно
Всё выполняется локально в вашем браузере — введённые права никогда не покидают это устройство.
Типовые права доступа
Матрица прав
Чтение (4)Запись (2)Выполнение (1) Цифра rwx
Владелец (u) 7 rwx
Группа (g) 5 r-x
Остальные (o) 5 r-x
Специальные биты
Команда chmod
Числовой (абсолютный) режим
chmod 755 file
Символьный режим
chmod u=rwx,go=rx file
Рекурсивно (-R)
chmod -R 755 dir
Только каталоги
find dir -type d -exec chmod 755 {} +
Только файлы
find dir -type f -exec chmod 644 {} +

Совет: chmod -R u+rwX добавляет выполнение только каталогам и файлам, которые уже исполняемые, — безопаснее, чем сплошной -R 755.

В Linux числовой chmod вроде 755 сохраняет существующие setuid/setgid на каталогах — снимайте их явно через 00755, =755 или u-s,g-s (BSD/macOS снимает их по умолчанию).

Текущий режим файла: stat -c '%a' file (Linux) · stat -f '%Lp' file (macOS)

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

Новые файлы (база 666)
644 · rw-r--r--
Новые каталоги (база 777)
755 · rwxr-xr-x

effective = base & ~umask

Таблица прав доступа Linux: типичные значения chmod

Таблица прав доступа Linux: типичные значения chmod
Восьмеричное Символьное Типичное применение Владелец Группа Остальные
400 r-------- Приватный ключ SSH (только чтение) r-- --- ---
600 rw------- Приватные файлы, ключи SSH rw- --- ---
644 rw-r--r-- Веб-страницы, файлы конфигурации rw- r-- r--
664 rw-rw-r-- Файлы, редактируемые группой rw- rw- r--
666 rw-rw-rw- Может редактировать любой — избегайте rw- rw- rw-
700 rwx------ Приватные каталоги rwx --- ---
755 rwxr-xr-x Скрипты, веб-каталоги rwx r-x r-x
775 rwxrwxr-x Общие каталоги группы rwx rwx r-x
777 rwxrwxrwx Разрешено всё и всем — избегайте rwx rwx rwx
1777 rwxrwxrwt Общие временные каталоги (/tmp) rwx rwx rwt

Цифры прав доступа 0–7 в одной таблице

Цифры прав доступа 0–7 в одной таблице
Цифра Двоичное rwx Значение
0 000 --- Нет прав
1 001 --x Только выполнение
2 010 -w- Только запись
3 011 -wx Запись + выполнение
4 100 r-- Только чтение
5 101 r-x Чтение + выполнение
6 110 rw- Чтение + запись
7 111 rwx Чтение + запись + выполнение
Проверено на соответствие семантике POSIX chmod и руководству GNU coreutils; правила регистра s/S и t/T, порядок конструкций и поведение GNU с сохранением setuid/setgid на каталогах сверены с первоисточниками — Команда инженеров Go-Tools · Jul 17, 2026

Что такое chmod?

chmod — change mode, «изменить режим» — это команда Unix и Linux, задающая, кто может читать, записывать или выполнять файл. Каждый файл хранит девять битов прав в трёх группах (владелец, группа, остальные), и chmod принимает их либо восьмеричным числом в числовом (абсолютном) режиме, например chmod 755, либо буквами в символьном режиме, например chmod u=rwx,go=rx. Обе записи описывают одни и те же биты; этот калькулятор переводит между ними на лету.

Восьмеричная запись работает потому, что каждое право — степень двойки: чтение — 4, запись — 2, выполнение — 1, а одна цифра на класс — просто их сумма. Так 7 — это всё сразу (4+2+1), 5 — чтение плюс выполнение, 6 — чтение плюс запись, 0 — ничего. Прочитайте rwxr-xr-x слева направо тройками — получится 7, 5, 5. Четвёртая, ведущая цифра кодирует специальные режимы — setuid (4), setgid (2) и sticky-бит (1); так возникают 4755 и 1777, а в символьной строке их присутствие видно как s или t на месте x.

Права доступа — первый слой безопасности Unix, и большинство повседневных проблем с правами сводится к горстке шаблонов: скрипту, который не запускается, нужно выполнение (u+x); каталог, в который не войти, лишён бита x; веб-ресурс должен быть 644 с каталогами 755 над ним; приватный ключ обязан быть 600, иначе OpenSSH откажется его использовать. Ошибки группируются так же — во главе с печально известным chmod 777, который «чинит» ошибки доступа, раздавая право записи каждой учётной записи на машине. Эта страница собирает арифметику, символы, готовые команды и предупреждения о рисках в одном месте, а поскольку восьмеричная запись — просто система счисления с основанием 8, устройство позиционной арифметики можно изучить в конвертере систем счисления.

# Make a script executable, then verify with ls -l
$ ls -l deploy.sh
-rw-r--r--  1 jack  staff  512 Jul 17 10:00 deploy.sh
$ chmod 755 deploy.sh
$ ls -l deploy.sh
-rwxr-xr-x  1 jack  staff  512 Jul 17 10:00 deploy.sh

# The symbolic equivalent of 755
$ chmod u=rwx,go=rx deploy.sh

# Read the current mode as a number
$ stat -c '%a' deploy.sh   # Linux → 755
$ stat -f '%Lp' deploy.sh  # macOS → 755

Ключевые возможности

Три представления, одно состояние

Матрица флажков, восьмеричное число и символьная строка rwx — все три поля живые: отредактируйте любое из них, и остальные два мгновенно обновятся, в обоих направлениях.

Специальные биты как положено

setuid, setgid и sticky-бит — полноправные участники: четвёртая восьмеричная цифра, правила регистра s/S и t/T и корректные символьные конструкции (u+s, g+s, a+t) отображаются ровно так, как их понимает chmod.

Вставляйте ls -l как есть

Бросьте целую строку ls -l в символьное поле — символ типа файла, точка SELinux, плюс ACL и @ из macOS обрабатываются автоматически — и получите восьмеричный режим без ручной обрезки.

Команды, которые действительно можно запускать

Числовая, символьная, рекурсивная и более безопасная пара find -type d / find -type f — каждая с кнопкой копирования; плюс команда stat для чтения текущего режима файла и заметка про снятие setuid с каталогов в GNU.

Предупреждения о рисках по мере ввода

Режимы с записью для всех подсвечиваются сразу: 777 и 666 помечаются отдельно, любой бит записи для остальных вызывает предупреждение, а 1777 корректно распознаётся как шаблон общего каталога со sticky-битом, а не ошибка.

umask, таблицы и постоянные ссылки

Встроенный калькулятор umask показывает, что получат новые файлы и каталоги, две справочные таблицы покрывают типичные режимы и цифры 0–7, а «Копировать ссылку» делится точным состоянием — всё на 100% в вашем браузере.

Примеры прав доступа chmod

755 — стандарт для скриптов и веб-каталогов

755
rwxr-xr-x — chmod 755 file · chmod u=rwx,go=rx file

Режим 755 даёт владельцу полный контроль (чтение + запись + выполнение = 4 + 2 + 1 = 7), а группа и остальные могут читать и выполнять, но не изменять (4 + 1 = 5). Ровно это нужно скрипту деплоя или публичному веб-каталогу: сервер может обходить и отдавать содержимое, но менять его вправе только владелец. Калькулятор показывает обе формы команды — числовую 755 и символьный эквивалент u=rwx,go=rx, — а рецепт «только файлы» автоматически опускается до 644, потому что обычным файлам не нужны лишние биты выполнения.

600 — закрыть приватный файл для всех, кроме владельца

600
rw------- — владелец читает и пишет, остальные не видят ничего

Режим 600 (rw-------) — правильная настройка для приватных ключей SSH, файлов .env, учётных данных API и всего прочего, что не должна открывать ни одна другая учётная запись на машине. OpenSSH строго следит за этим: ключ, доступный группе или остальным, отклоняется со знаменитой ошибкой «Permissions 0644 ... are too open». Загрузите чип 600, скопируйте chmod 600 file — и панель рисков будет молчать: это принцип минимальных привилегий в действии.

4755 — анатомия setuid: почему x превращается в s

4755
rwsr-xr-x — в позиции выполнения владельца показан s вместо x

Ведущая 4 — это setuid-бит: кто бы ни запускал программу, она выполняется с привилегиями владельца файла — именно так passwd обновляет принадлежащий root файл от имени обычного пользователя. В символьной форме позиция выполнения владельца меняется с x на s (строчная s означает, что выполнение тоже установлено; заглавная S означала бы setuid без выполнения — почти всегда ошибка). Калькулятор отображает четвёртую восьмеричную цифру, отмечает флажок setuid и показывает предупреждение: исполняемые файлы с setuid заслуживают осознанной проверки.

Расшифровка вывода ls -l — вставьте строку целиком

drwxr-xr-x  5 jack staff 160 Jul 17 dist
755

Скопируйте строку прямо из вывода ls -l и вставьте её в символьное поле — обрезать ничего не нужно. Инструмент читает первый токен drwxr-xr-x, распознаёт ведущую d как символ типа файла (каталог), а не право доступа, спокойно относится к точке SELinux, плюсу ACL и @ из macOS, которые добавляют некоторые системы, и конвертирует оставшиеся девять символов в восьмеричное 755. Это самый быстрый способ ответить на вопрос «какое это число?» во время код-ревью или инцидента, и он одинаково работает с l символьных ссылок и - обычных файлов.

Как пользоваться калькулятором chmod

  1. 1

    Задайте права любым удобным способом

    Отмечайте флажки чтения, записи и выполнения по классам, введите восьмеричный режим вроде 755 или 4755 либо начните с готового чипа — ключ SSH 400, приватный файл 600, веб-файл 644, скрипт 755 и другие.

  2. 2

    Читайте все три представления сразу

    Матрица флажков, восьмеричное значение и символьная строка rwx синхронизированы во всех направлениях; каждая строка показывает свою цифру и свой трёхсимвольный фрагмент по мере работы.

  3. 3

    Скопируйте нужную команду

    Пять готовых к запуску вариантов обновляются на лету: числовой режим, символьный эквивалент с умной группировкой, рекурсивный -R и более безопасная пара «только каталоги» / «только файлы» на основе find -type.

  4. 4

    Расшифровывайте существующие права

    Вставьте полную строку ls -l — вместе с символом типа файла и маркерами ACL — в символьное поле и мгновенно получите восьмеричное значение, включая специальные биты.

  5. 5

    Проверьте umask и поделитесь результатом

    Секция umask показывает, что получат новые файлы и каталоги, а «Копировать ссылку» сохраняет текущий режим в URL, который удобно вставить в код-ревью или документацию.

Частые ошибки при работе с chmod

«Чинить» Permission denied через 777

Открытие режима всему миру обычно маскирует проблему владельца, а не решает её, — и оставляет каждой учётной записи на машине возможность менять ваши файлы. Сначала исправьте владельца; режим держите строгим.

✗ Неверно
sudo chmod -R 777 /var/www   # доступ появился, безопасность исчезла
✓ Верно
sudo chown -R www-data:www-data /var/www   # чиним владельца, оставляем 755/644

Сплошной chmod -R на каталоге загрузок

Рекурсивные числовые режимы бьют по файлам и каталогам одним значением: 755 делает каждую картинку и документ «исполняемыми», а 777 — доступными на запись всем. Разделяйте рекурсию по типу.

✗ Неверно
chmod -R 777 uploads/
✓ Верно
find uploads -type d -exec chmod 755 {} + && find uploads -type f -exec chmod 644 {} +

Забыть, что каталогам нужно выполнение

Бит x на каталоге означает «можно войти и пройти насквозь». В каталог 644 нельзя сделать cd даже тем, кто может показать его содержимое, — отсюда сбивающие с толку Permission denied уровнем глубже.

✗ Неверно
chmod 644 reports/   # cd reports/ → Permission denied
✓ Верно
chmod 755 reports/   # каталогам нужен x, чтобы в них можно было войти

Выкатить скрипт без бита выполнения

Свежесозданный файл наследует значения umask вроде 644, поэтому ./script.sh падает с Permission denied, пока выполнение не добавлено хотя бы владельцу. CI-раннеры и entrypoint в Docker натыкаются на это постоянно.

✗ Неверно
./deploy.sh   # bash: ./deploy.sh: Permission denied
✓ Верно
chmod u+x deploy.sh && ./deploy.sh

Что можно делать с калькулятором chmod

Безопасный деплой на веб-серверы
Задайте 755 каталогам и 644 файлам в корне nginx или Apache с помощью сгенерированных команд find и дайте панели рисков подтвердить, что ничто не доступно на запись всем, прежде чем выкладывать. Если каталогу нужна ещё и базовая аутентификация, пригодится генератор htpasswd.
Исправление прав ключей SSH
Чипы 400 и 600 дают ровно то, чего OpenSSH требует от приватных ключей, а FAQ разбирает ошибку «Permissions 0644 ... are too open», которая появляется, когда ключ остался читаемым для группы.
Расшифровка прав при разборе инцидентов
Вставляйте строки ls -l из продакшен-шелла прямо в символьное поле и превращайте rwxr-sr-x в 2755, не считая биты в уме, — специальные режимы, маркеры ACL и символы типа файла распознаются автоматически.
Правильные режимы для хостинга и FTP
Панели управления и FTP-клиенты запрашивают числовые режимы: 755 для public_html, 644 для страниц, 600 для конфигураций с учётными данными. Загрузите пресет, сверьтесь с таблицей, скопируйте число — без угадывания.
Подготовка контейнеров и CI-скриптов
Entrypoint-файлам и hook-скриптам нужен u+x, прежде чем Docker или CI-раннер сможет их выполнить, а смонтированные тома наследуют режимы хоста. Сгенерируйте точный chmod для каждого случая здесь, а запуск по расписанию настройте в генераторе crontab.

Как устроены права доступа к файлам в Linux

Восьмеричная арифметика: 4 + 2 + 1
Каждый класс пользователей получает одну восьмеричную цифру, и цифра — это сумма: чтение = 4, запись = 2, выполнение = 1. Существуют все восемь комбинаций: 0 — ничего, 1 — только выполнение, 2 — только запись, 3 — запись + выполнение, 4 — только чтение, 5 — чтение + выполнение, 6 — чтение + запись, 7 — всё сразу. Режим вроде 640 читается так: владелец 6 (чтение + запись), группа 4 (только чтение), остальные 0 (ничего). Таблица цифр на этой странице перечисляет все восемь строк, а матрица показывает, как та же сумма складывается по мере отметки флажков.
Числовой (абсолютный) режим против символьного
chmod принимает одни и те же биты двумя способами. Числовой режим задаёт полный результат — chmod 755 file заменяет всё, что было раньше. Символьный режим описывает изменение относительно текущего состояния: chmod u=rwx,go=rx file задаёт классы явно, а chmod g+w file переключает один бит и не трогает остальное. Числовой идеален для приведения к известному состоянию в скриптах и деплое; символьный незаменим для точечных правок вроде u+x. Этот калькулятор выдаёт оба варианта, автоматически объединяя классы (go=rx, a=rwx) так, как их пишут опытные администраторы.
setuid, setgid и sticky-бит
Четвёртая, ведущая восьмеричная цифра кодирует специальные режимы: setuid = 4000 запускает исполняемый файл с привилегиями владельца, setgid = 2000 делает то же для группы (а новые файлы в каталоге наследуют его группу), sticky-бит = 1000 на общем каталоге разрешает удаление только владельцу каждого файла — канонический пример 1777 у /tmp. В ls -l они занимают позицию выполнения: строчные s или t, когда выполнение тоже установлено, заглавные S или T — когда нет (обычно это ошибка конфигурации, которую стоит проверить). Тонкость GNU/Linux: числовой chmod намеренно сохраняет существующие setuid/setgid на каталогах — снимайте их пятизначным режимом вроде 00755, конструкцией =755 или u-s,g-s, как описано в руководстве GNU coreutils. BSD и macOS снимают их числовыми режимами по умолчанию.
Как umask формирует новые файлы
Свежесозданные файлы начинают с базы 666, каталоги — с 777; затем umask процесса выключает содержащиеся в нём биты — итоговый режим = base & ~umask. Umask по умолчанию 022 маскирует запись для группы и остальных, давая привычные 644 для файлов и 755 для каталогов. Более строгий 077 даёт 600 и 700, оставляя всё приватным для владельца; 002 для совместной работы даёт 664 и 775 — группа может писать. Секция umask на этой странице выполняет этот расчёт вживую для обеих баз.

Лучшие практики работы с правами доступа

Выдавайте минимально достаточные права
Начинайте с самого строгого режима и открывайте только то, что ломается: 600 для приватных файлов, 644 для доступных всем на чтение, 755 — лишь там, где выполнение или вход действительно нужны. Каждый лишний бит записи расширяет поверхность атаки.
По умолчанию: файлы 644 внутри каталогов 755
Эта пара покрывает почти каждый веб-корень, рабочую копию репозитория и сценарий общего чтения. Обычным файлам выполнение нужно редко; каталогам оно нужно всегда, чтобы в них входить, — путаница между этими двумя вызывает большинство повседневных ошибок с правами доступа.
Рекурсия через find -type, а не сплошной -R
chmod -R 755 помечает каждый файл исполняемым. Используйте команды «только каталоги» и «только файлы», которые генерирует инструмент, или заглавную X GNU chmod (u+rwX,go+rX) — она добавляет выполнение только там, где ему место.
Никогда не оставляйте 777 там, куда достаёт сервер
Веб-корни и каталоги загрузок с записью для всех — хрестоматийный путь к подброшенным файлам и дефейсу. Если писать должны несколько учётных записей, предпочтите общую группу с 775 или 2775 (setgid сохраняет группу-владельца) открытию режима всему миру.
Держите SSH-ключи на 600 — или 400, если менять их больше не нужно
OpenSSH наотрез отказывается от приватных ключей, читаемых группой или всеми. 600 — рабочий стандарт; 400 дополнительно защищает от случайной перезаписи ключ, который вы не собираетесь редактировать. Публичным ключам и authorized_keys достаточно 644.

Часто задаваемые вопросы о калькуляторе chmod

Что означает chmod 777?
chmod 777 даёт чтение, запись и выполнение всем — владельцу, группе и всем остальным пользователям. Каждая цифра — это сумма чтения (четыре), записи (два) и выполнения (один) для одного класса пользователей, и максимум в каждой позиции означает, что никто ни в чём не ограничен. В символьной форме это rwxrwxrwx. Легитимные случаи существуют, но они редки и почти всегда касаются каталогов, а не файлов; когда инструкция советует сделать chmod 777, «чтобы заработало», реальная проблема почти всегда в том, кому принадлежит файл, и правильное решение — chown.
Опасен ли chmod 777?
На всём, до чего могут дотянуться другие пользователи или веб-сервер, — да: 777 означает, что любая учётная запись в системе, включая взломанную служебную, может подменить содержимое файла или подбросить новые файлы в каталог. Корневые каталоги веб-серверов с правами 777 — классический путь к дефейсу сайтов и внедрению вредоносного кода. Исключение, подтверждающее правило, — 1777: добавленный sticky-бит, как у /tmp, позволяет всем создавать файлы, но не даёт пользователям удалять чужие. Этот калькулятор помечает голый 777 как риск, а 1777 распознаёт как стандартный шаблон общего каталога.
Чем chmod 755 отличается от 644?
Битом выполнения. 755 (rwxr-xr-x) разрешает всем выполнять или входить — это нужно каталогам, скриптам и бинарным файлам; 644 (rw-r--r--) — то же самое без права выполнения, что правильно для обычных файлов: HTML-страниц, изображений, файлов конфигурации. Классическая пара — 755 для каждого каталога и 644 для каждого файла внутри; команды «только каталоги» и «только файлы», которые генерирует калькулятор, дают ровно такое разделение через find -type d и find -type f.
Как исправить «Permissions 0644 for 'id_rsa' are too open»?
Выполните chmod 600 ~/.ssh/id_rsa и подключитесь снова. OpenSSH отказывается использовать приватный ключ, который может прочитать любая другая учётная запись: он печатает баннер WARNING: UNPROTECTED PRIVATE KEY FILE!, строку Permissions 0644 for '/home/user/.ssh/id_rsa' are too open., сообщает, что private key files must NOT be accessible by others, и затем игнорирует ключ — что проявляется как внезапный запрос пароля или Load key ... bad permissions. Режим 600 (rw-------) удовлетворяет проверке; 400 (r--------) тоже работает и дополнительно защищает от случайной перезаписи. Требования к файлам ключей описаны в руководстве OpenSSH.
Чем chmod отличается от chown?
chmod меняет то, что могут делать с файлом существующие владелец, группа и остальные, — его биты прав. chown меняет то, кто на самом деле является владельцем и группой. Задачи у них разные: если веб-сервер не может писать в собственный каталог загрузок, лечится это обычно командой chown www-data:www-data на каталоге, а не раздачей прав всему миру через chmod. Полезная привычка, когда что-то неожиданно нечитаемо: сначала проверить владельца через ls -l, расшифровать режим (вставьте строку в этот калькулятор) и только потом решать, какая из двух команд нужна.
Что делает chmod +x?
Он добавляет бит выполнения тем классам пользователей, которые не замаскированы вашим umask: при распространённом umask 022 это все, поэтому chmod +x script.sh обычно эквивалентен chmod a+x script.sh и превращает файл, который оболочка отказывается запускать, в исполняемый. При более строгом umask вроде 077 +x затрагивает только владельца. Если нужен конкретный результат независимо от umask, скажите это явно: u+x — только владельцу, a+x — всем. Каталогам тот же бит нужен, чтобы в них вообще можно было войти, — поэтому по умолчанию они 755, а не 644.
Как рекурсивно применить chmod ко всем файлам и папкам?
Избегайте сплошного chmod -R 755: он делает каждый обычный файл исполняемым — в лучшем случае это шум, в худшем — риск. Чистый способ — обрабатывать каталоги и файлы раздельно: find dir -type d -exec chmod 755 {} + для каталогов и find dir -type f -exec chmod 644 {} + для файлов; обе команды этот калькулятор генерирует для выбранного режима. Заглавная X в GNU chmod делает то же одной строкой (chmod -R u+rwX,go+rX dir): она добавляет выполнение только каталогам и файлам, которые уже исполняемые. Тонкость Linux: простой числовой chmod вроде 755 оставляет существующий setuid/setgid на каталогах — снимайте его явно через 00755 или u-s,g-s, если это и была цель.
Загружаются ли мои данные при использовании калькулятора?
Нет. Каждая конвертация выполняется локально в вашем браузере — обычная битовая арифметика на JavaScript, без обращений к серверу, без событий аналитики, привязанных к вводу, и без какого-либо хранения данных. Можете открыть инструменты разработчика и убедиться, что панель «Сеть» молчит, пока вы переключаете права, или полностью отключиться от интернета и продолжить работу. Кнопка «Копировать ссылку» кодирует текущий режим во фрагмент URL, а фрагменты тоже никогда не отправляются на сервер.

Похожие инструменты

Все инструменты →

Конвертер систем счисления — bin, hex, dec, oct

Конвертеры

Конвертация между системами счисления — двоичной, hex, десятичной, восьмеричной и любой базой 2-36 мгновенно. Бесплатно, приватно — вся обработка в браузере.

Конвертер цветов — HEX, RGB, HSL и OKLCH

Конвертеры

Конвертируйте HEX в RGB, HSL, OKLCH, OKLAB и CMYK прямо в браузере — копируйте любой формат в один клик. Бесплатно, без регистрации, ваши цвета никогда не покидают страницу.

Конвертер HEX в CMYK

Конвертеры

Конвертируйте HEX-цвета в CMYK прямо в браузере. Наивное приближение на основе sRGB для предпросмотра печати. Бесплатно, без регистрации, ваши цвета остаются локально.

Конвертер HEX в HSL

Конвертеры

Конвертируйте любой HEX-цвет в HSL прямо в браузере — поддерживаются 3-значные, 6-значные и 8-значные HEX с альфой. Бесплатно, мгновенно, без регистрации, ваши цвета никогда не покидают страницу.

Конвертер HEX в OKLCH

Конвертеры

Конвертируйте HEX в OKLCH для токенов дизайна Tailwind v4. Живой перцептивно-равномерный вывод с предупреждениями цветового охвата Display P3. Бесплатно, только в браузере.

Конвертер HEX в RGB

Конвертеры

Конвертируйте любой HEX-код цвета в RGB прямо в браузере — поддерживаются 3-значные, 6-значные и 8-значные HEX с альфой. Бесплатно, мгновенно, без регистрации, ваши цвета никогда не покидают страницу.