Калькулятор Chmod
| Сорт | Читать (р) | Напиши (ж) | Выполнить (х) |
|---|---|---|---|
| Владелец | |||
| Группа | |||
| Другие |
Права доступа к файлам в Unix состоят из трёх троек, чтение, запись, выполнение для владельца, группы и остальных, которые аккуратно сворачиваются в трёхзначное восьмеричное число. chmod 755 script.sh, это rwxr-xr-x: у владельца есть все права, а группа и остальные могут читать и выполнять. Этот калькулятор позволяет переключать каждый флажок и видеть, как меняется восьмеричное значение в реальном времени, или вставить восьмеричное число и увидеть разбивку rwx, вместе с точной командой chmod, готовой к копированию.
Как работают разрешения chmod
-
1
Переключить 9 бит разрешения
Три группы (пользователь, группа, другое) × три разрешения (чтение, запись, выполнение) = 9 флажков.
-
2
Каждая группа становится одной восьмеричной цифрой.
Чтение = 4, запись = 2, выполнение = 1. Суммируйте биты, которые вы хотите включить.
-
3
Прочтите полученную восьмеричную и символическую форму.
например 755 → rwxr-xr-x; 644 → rw-r--r--; 600 → rw-------.
-
4
Скопируйте команду chmod
Инструмент показывает команду chmod для текущих прав, готовую к копированию. Примеры: chmod 755 имя файла, chmod u+x имя файла, chmod -R 755 каталог.
Значения битов разрешения
| Бит | Значение | Значение для файлов | Значение для каталогов |
|---|---|---|---|
| Чтение | 4 | Можно просматривать содержимое | Можно получить список записей |
| Запись | 2 | Можно изменять | Можно создавать/удалять/переименовывать записи |
| Выполнение | 1 | Можно запускать как программу | Можно входить (cd, доступ внутрь) |
Общие значения chmod
| Восьмеричный | Символический | Типичное использование |
|---|---|---|
| 777 | rwxrwxrwx | Доступно для записи всем, опасно; почти никогда не оправдано |
| 755 | rwxr-xr-x | Скрипты, бинарники, каталоги |
| 750 | rwxr-x--- | Скрипты, доступные только вам и вашей группе |
| 700 | rwx------ | Частные скрипты (SSH, ~/.ssh) |
| 644 | rw-r--r-- | Публичные документы, изображения, HTML |
| 640 | rw-r----- | Конфигурации, доступные для группового чтения |
| 600 | rw------- | Приватные конфигурации, приватные ключи SSH, ~/.netrc |
| 444 | r--r--r-- | Опубликованные файлы только для чтения |
| 400 | r-------- | Частное, только для чтения (редко правильно; используйте 600) |
Специальные разрешения (редко, но важно)
- setuid (4xxx): запускает файл от имени его владельца, независимо от того, кто его выполняет.
/usr/bin/passwdиспользует это. - setgid (2xxx): для файлов запускается как группа. В каталогах новые файлы наследуют группу каталога.
- липкий бит (1xxx): в каталогах только владелец файла может удалять/переименовывать.
/tmpиспользует это.
Четырехзначные восьмеричные числа включают в себя следующие: chmod 4755 setuid-binary включает setuid рядом с 755.
Символический chmod
Многие администраторы предпочитают символическую форму для дополнительных изменений:
chmod u+x script, добавить выполнение только для владельца.chmod go-w file, убрать запись для группы и прочего.chmod a+r file, дать прочитать всем (пользователю, группе, другим).chmod u=rw,go=r file, установите именно эти биты.chmod -R 755 directory, рекурсивный.
Распространенные ошибки
- 777 в папках загрузок: похоже, «исправляет разрешения»; фактически открывает сервер для злоумышленников. Используйте более узкую комбинацию (например, 755 с правильным владением группой).
- chmod -R 644 для каталогов: удаляет выполнение в каталогах, поэтому вы не можете войти в них с помощью
cd. Используйте 755 для каталогов, 644 для обычных файлов. - 0600 против 600: ноль в начале означает восьмеричное число в C и оболочке; большинство реализаций chmod принимают оба варианта.
- Umask: новые файлы наследуют 666 минус маска. По умолчанию umask 022 дает 644 файла и 755 каталогов.
Часто задаваемые вопросы
Обычно вы хотите, чтобы владелец мог вносить изменения, а все остальные могли составлять список и перемещаться. 755 = rwx для владельца, r-x для группы и прочее, именно такая комбинация.
Почти никогда. 777 позволяет любому пользователю системы изменять файл. В многопользовательских системах это дыра в безопасности; в однопользовательских системах это ненужно (у владельца уже есть rwx с 755). Если веб-приложению требуется 777, реальным решением будет правильное владение (chown) или членство в группе.
Каталог ~/.ssh: 700. Закрытые ключи (id_rsa, id_ed25519): 600. Открытые ключи (.pub): 644. authorized_keys: 600. SSH отказывается от ключей с более широкими разрешениями в качестве меры безопасности.
chown для владельца, chgrp для группы, отдельные команды. chmod меняет только биты, а не пользователя/группу, владеющего файлом.
Сопутствующие инструменты
Справочная таблица ASCII
Полная таблица ASCII от 0 до 127 с десятичным, шестнадцатеричным, восьмеричным и двоичным представлением, а также записью числовых ссылок HTML, включая NUL, LF и DEL.
Справочник сочетаний клавиш
Ищите документированные сочетания по умолчанию для VS Code, Chrome и Bash с GNU Readline в macOS, Windows и Linux.
Справочник символов HTML
Справочник HTML-сущностей с поиском, их именованными и числовыми кодами, а также копированием специальных символов и знаков одним кликом.
Счетчик FPS
Измерьте FPS браузера через requestAnimationFrame: сглаживание, минимальная и максимальная частота кадров, порог предупреждения и график по желанию. Работает локально, без загрузок и API.
Генератор цветовой палитры
Создавайте монохромные, аналоговые, комплементарные, триадные или тетрадные палитры из базового HEX-цвета и экспортируйте готовые CSS-переменные.
Генератор случайных букв
Генерируйте случайные буквы A-Z. Выберите количество, верхний или нижний регистр либо смешанный вариант для игр, заданий и уроков.