Команда chmod изменяет права доступа файлов в операционных системах linux.
Синтаксис chmod:
CHMOD [КЛЮЧ] [РЕЖИМ] [ФАЙЛ]
англ.
CHMOD [OPTION] [MODE] [FILE]
[КЛЮЧ] — набор настроек программы chmod
[РЕЖИМ] — новый режим файла (папки)
[ФАЙЛ] — изменяемый файл (папка)
КЛЮЧИ CHMOD
-R, —recursive — рекурсивное задание привелегий (будут изменены привелегии вложеных фалов и папок)
-f, —silent, —quiet — подавление сообщений об ошибках
—help — показать справочную документацию
—version — показать версию программы
РЕЖИМЫ CHMOD
- Символьный (сочитание символов rwx):
- r — файл доступен для чтения
- w — файл доступен для записи
- x — файл доступен для исполнения
- s — установка идентификатора пользователя
Каждый символ должен быть на своём месте в последовательности rwx, — — обозначает недоступность
определённых привелегий.
rwx файл доступен для чтения, записи и исполнения
rw- файл доступен для чтения и записи
r-x файл доступен для чтения и исполнения
r— файл доступен только для чтения
-wx файл доступен для записи и исполнения
-w- файл доступен только для записи
—x файл доступен только для исполнения
— файл не доступен
Каждый полный набор привелегий состоит из 9 символов, 3ёх наборов привелегий (rwx rwx rwx):
- rwx — набор привелегий для пользователя
- rwx — для группы
- rwx — для остальных пользователей
Имеется возможность изменить только 1 набор привелегий:
Для єтого перед набором привелегий указывается специальный символ:
- u — для пользователя
- g — для его группы
- o — для остальных
- a — для всех (используется по умолчанию)
И символ:
- + добавить привелегию
- — отнять привелегию
- = присвоение прав (и отмена не заданных привелегий)
Например:
$ chmod u=rwx file #даст полные права на файл file пользователю
$ chmod g+x #добавит право исполнять файл всем пользователям группы
2. Восьмеричные режимы прав
Восьмеричный режим прав, также как и символьный, имеет 3 блока (пользователь, группа, остальные), каждый состоит из 1 цифры:
в скобках символ которому соответствует
- 0 (-) пользователь не имеет прав на файл
- 1 (x) пользователь может запускать файл
- 2 (w) пользователь может записывать в файл
- 4 (r) пользователь может читать файл
Оприделив необходимый набор привелегий следует суммировать промежуточные цифры.
Например:
(rw-) 4 + 2 = 6
(rwx) 4 + 2 + 1 = 7
Например зададим полные права для всех пользователей на файл — file:
$ chmod 777 file