Перейти к основному содержимому
LibraTool logoLibraTool

Калькулятор прав доступа chmod — бесплатно

Переключайте права доступа Unix для владельца, группы и остальных, чтобы получить восьмеричное значение (755), символьную нотацию (rwxr-xr-x) и точную команду chmod.

Работает офлайн после загрузки
ЧтениеЗаписьВыполнениеЗначение
Владелец7
Группа5
Остальные5
Специальные биты
Восьмеричное (редактируемое)
rwxr-xr-x
Символьное
Команда
$ chmod 755 имя_файла

Стандартные пресеты

Частые применения

  • Правильные разрешения файлов для веб-серверовУстановите правильные разрешения для веб-файлов и папок на серверах Apache/Nginx.
  • Установка разрешений ключа SSHSSH отклоняет ключи со слабыми разрешениями. Получите точный chmod для файлов ключей.
  • Сделайте скрипты оболочки исполняемымиПолучите команду chmod, чтобы сделать скрипт запускаемым, сохраняя его безопасным.
  • Изучите разрешения файлов LinuxПоймите, как восьмеричные и символические разрешения Unix отображаются на чтение/запись/выполнение.
  • Разрешения файлов в образах DockerУстановите правильные разрешения для файлов, скопированных в контейнеры Docker.

Как это работает

Этот инструмент — написанный вручную, полностью клиентский калькулятор прав доступа Unix — без библиотек, без сервера. Он моделирует каждое право как булево значение в матрице состояния React и конвертирует между форматами восьмеричным, символьным и ls -l с использованием прямой битовой арифметики.

  1. 1
    Матрица флажков устанавливает состояние
    Каждый из девяти флажков чтения/записи/выполнения (владелец, группа, остальные) переключает булево значение в объекте состояния React. Специальные биты — setuid, setgid и sticky — отслеживаются отдельно в параллельном объекте состояния.
  2. 2
    Битовая арифметика вычисляет восьмеричное значение
    Функция octalFor() суммирует значения активных прав для каждой группы, используя фиксированные веса r=4, w=2, x=1. Три цифры группы объединяются, и если установлен какой-либо специальный бит, добавляется четвёртая ведущая цифра (setuid=4, setgid=2, sticky=1).
  3. 3
    Двунаправленный парсинг синхронизирует все вводы
    Ввод 3- или 4-значного восьмеричного числа запускает parseOctal(), который использует побитовое И для разложения каждой цифры обратно в булевы права и обновления матрицы флажков. Вставка строки ls -l запускает parseLsPerms(), который использует регулярное выражение для извлечения 9-символьной строки прав и декодирует специальные символы, такие как s, S, t и T для setuid/setgid/sticky.
  4. 4
    Команда chmod собирается и копируется
    Финальная команда chmod строится путём интерполяции строки — восьмеричный режим или символьный режим (форма u=rwx,g=rx,o=rx) — с опциональным флагом -R и целевым именем файла. Нажатие Копировать записывает команду в буфер обмена через navigator.clipboard.writeText(), который работает локально без сетевых вызовов.

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

Часто задаваемые вопросы