chmod — используется для изменения прав доступа к файлам и директориям. Она позволяет установить или изменить разрешения на чтение (read), запись (write) и выполнение (execute) для владельца файла, группы пользователей и остальных пользователей.
Команда chmod предоставляет гибкость в настройке прав доступа. Можно указывать права как символами (rwx), так и числами (например, 755), что делает процесс настройки прав более удобным и гибким.
Рекурсивное применение прав: Используя опцию -R, можно рекурсивно применять изменения прав доступа ко всем файлам и поддиректориям в указанной директории. Это удобно при массовой настройке прав доступа для большого количества файлов.
Лицензия:
Стандартная общественная лицензия GNU версии 3 (GPLv3)
Автор:
David MacKenzie
Jim Meyering
Синтаксис:
chmod [опции] <права> <файлы>
Опции:
Опция | Описание |
---|---|
-c, --changes | как verbose, но выводить только при выполнении изменений |
-f, --silent, --quiet | не выводить большинство сообщений об ошибках |
-v, --verbose | выводить диагностические сообщения по каждому файлу |
--no-preserve-root | не обрабатывать «/» особым образом (по умолчанию) |
--preserve-root | отказываться рекурсивно обрабатывать «/» |
--reference=rfile | использовать режим доступа rfile вместо значений РЕЖИМ |
-R, --recursive | рекурсивно изменять файлы и каталоги |
--help | показать справку и выйти |
--version | показать информацию о версии и выйти |
Команда chmod позволяет устанавливать права доступа к файлам и директориям с использованием как числового, так и символьного формата.
Примеры использования числового формата:
# устанавливает права rwxr-xr-x для владельца, r-xr-xr-x для группы пользователей и остальных пользователей.
chmod 755 file.txt
# устанавливает права rw-r--r-- для владельца, группы пользователей и остальных пользователей.
chmod 644 file.txt
Файл с правами 000 может быть прочитан/изменен пользователем root. Все остальные не могут прочитать/изменить/выполнить файл.
Примеры использования символьного формата:
# устанавливает права rw-r--r-- для владельца и группы пользователей,
# и только право на чтение для остальных пользователей.
chmod u=rw,go=r file.txt
# добавляет право на выполнение для всех пользователей.
chmod a+x script.sh
# удаляет право на запись для группы пользователей.
chmod g-w file.txt
Бит смены идентификатора пользователя/группы:
Бит смены идентификатора пользователя (Set User ID, SUID) и Бит смены идентификатора группы (Set Group ID, SGID) являются атрибутами, связанными с выполнением файлов в операционной системе.
Бит SUID, когда установлен на исполняемом файле, позволяет запускать этот файл с привилегиями владельца файла, а не запускающего пользователя. Это полезно, например, для выполнения программ, требующих повышенных привилегий временно, но не постоянно.
Бит SGID, когда установлен на исполняемом файле или директории, устанавливает групповую идентификацию для любых файлов, созданных в этой директории. Это означает, что новые файлы будут принадлежать той же группе, что и родительская директория.
Использование битов SUID и SGID с командой chmod осуществляется путем установки соответствующих флагов. Например, для установки бита SUID используется символ "+s", а для сброса бита SUID используется символ "-s". Аналогичные символы используются для установки и сброса бита SGID.
chmod a+x file.sh
chmod go-rw file.txt
chmod ugo+rwx file.txt
chmod u-x file
chmod 744 file
chmod ugo-rwx file
#или
chmod 000 file
chmod -R ug+rw dir
chmod -Rv ug+rw dir
chmod +s filename
chmod -s filename
chmod +s directory
chmod -s directory
Установить можно отдельным модулем или пакетом:
Для установки следует воспользоваться утилитой "Установка и удаление программ".
Модуль, необходимый для установки:
Для установки следует воспользоваться утилитой "Установка и удаление программ".
Пакет, необходимый для установки:
Внимание! Если система загружена в режиме полного сохранения, то внесенные изменения в систему будут сохранены. Если режим загрузки другой, то рекомендуется воспользоваться "Сохранением изменений".