chmod
Chmod (change mode) - это команда для изменения прав доступа к файлам и каталогам в Linux/UNIX системах.
Базовое представление прав доступа
Символьное представление:
-rw-r--r--
││││││││└────── Права для остальных (read)
│││││││└──────── Права для группы (read)
││││││└───────── Права для владельца (write)
│││││└────────── Права для владельца (read)
││││└─────────── Исполнение (нет)
│││└──────────── Группа
││└───────────── Владелец
│└────────────── Тип файла (обычный файл)
Абсолютное представление:
Каждая цифра - это сумма прав:
4 (read)
2 (write)
1 (execute)
Пример: 755 = rwxr-xr-x
Базовое использование
Изменение прав в символьном формате:
chmod u+rwx filename # Добавить права чтения/записи/исполнения владельцу
chmod go-w filename # Удалить права записи у группы и остальных
Изменение прав в числовом формате:
chmod 755 filename # rwxr-xr-x
chmod 644 filename # rw-r--r--
Основные параметры
Операторы:
+- добавить права-- убрать права=- установить точно указанные права
Классы пользователей:
u- владелецg- группаo- остальныеa- все (равнозначно ugo)
Работа с каталогами
Рекурсивное изменение прав:
chmod -R 755 directory # Изменить права для каталога и всех его содержимого
Специальные биты
SUID/SGID:
chmod u+s filename # Установить SUID
chmod g+s filename # Установить SGID
Sticky-бит:
chmod +t directory # Установить sticky-бит
Практические примеры
Установка прав для исполняемых файлов:
chmod 755 script.sh
Установка прав для конфигурационных файлов:
chmod 644 config.txt
Установка прав для директорий:
chmod 755 directory
Продвинутые техники
Массовое изменение прав:
find /path -type f -exec chmod 644 {} \;
find /path -type d -exec chmod 755 {} \;
Сохранение текущих прав при изменении владельца:
chmod --reference=sourcefile targetfile
Типичные сценарии использования
Веб-сервер:
Файлы: 644
Директории: 755
CGI скрипты: 755
Системные скрипты:
755 для исполняемых скриптов
700 для личных скриптов пользователя
Безопасность
Не устанавливайте права 777 без необходимости
Используйте минимальные необходимые права
Проверяйте права перед выполнением критических операций
Last modified: 25 марта 2025