Man page - chmod(1)

Packages contains this manual

Available languages:

en fr pt_BR es pl nl da cs tr sv ja uk id ru ro zh_TW zh_CN de

Manual

CHMOD

НАИМЕНОВАНИЕ
ОБЗОР
ОПИСАНИЕ
БИТЫ SETUID и SETGID
ФЛАГ ОГРАНИЧЕННОГО УДАЛЕНИЯ ИЛИ STICKY BIT
ПАРАМЕТРЫ
АВТОРЫ
ИНФОРМАЦИЯ ОБ ОШИБКАХ
СМОТРИТЕ ТАКЖЕ
ПЕРЕВОД

НАИМЕНОВАНИЕ

chmod — изменить биты режима доступа к файлу

ОБЗОР

chmod [ ПАРАМЕТР ]... РЕЖИМ [ ,РЕЖИМ ]... ФАЙЛ ...
chmod
[ ПАРАМЕТР ]... ВОСЬМЕРИЧНЫЙ-РЕЖИМ ФАЙЛ ...
chmod
[ ПАРАМЕТР ]... --reference=ОФАЙЛ ФАЙЛ ...

ОПИСАНИЕ

Данная страница руководства описывает версию chmod от GNU. chmod изменяет биты режима доступа для каждого указанного файла в соответствии с РЕЖИМ ом, который может носить символьное представление вносимых изменений или являться восьмеричным числом, определяющим битовую комбинацию нового режима доступа.

Символьное представление имеет формат [ ugoa ...][[ -+= ][ права ...]...], где права содержат ноль или более букв из набора rwxXst или одну букву из набора ugo . Несколько символьных режимов доступа могут быть перечислены через запятую.

Комбинация букв ugoa определяет, для каких пользователей будет изменён доступ к файлу: для пользователя, владеющего им ( u ), для других пользователей, состоящих в группе файла ( g ), для других пользователей, не состоящих в группе файла ( o ), или для всех пользователей ( a ). Если ни одна из этих букв не указана, результат будет таким же, как при указании ( a ), но биты, заданные в маске режима umask, изменены не будут.

Оператор + позволяет добавить выбранные биты режима к уже существующим у каждого файла, - удаляет их, а = добавляет указанные биты и удаляет те, что не указаны, за исключением не указанных битов установки идентификатора пользователя (set user ID) и группы (set group ID) у каталогов.

Буквы rwxXst задают режим доступа к файлу для соответствующих пользователей: чтение ( r ), запись ( w ), исполнение (или поиск для каталогов) ( x ), исполнение/поиск только для файла, который является каталогом или уже имеет права на исполнение каким-либо пользователем ( X ), установка идентификатора пользователя (set user ID) или группы (set group ID) при исполнении ( s ), ограничение на удаление или sticky bit ( t ). Вместо одной или нескольких из перечисленных букв, вы можете также указать одну из букв ugo : права, выданные владельцу файла ( u ), права, выданные пользователям, входящим в группу файла ( g ), и права, выданные пользователям, которые не относятся ни к одной из предыдущих категорий ( o ).

Числовое представление режима доступа содержит от одной до четырёх восьмеричных цифр (0-7), получаемых сложением битов с весами 4, 2 и 1. Отсутствующие цифры считаются ведущими нулями. Первая цифра задаёт атрибуты установки идентификатора пользователя set user ID (4), группы set group ID (2) и ограниченного удаления или sticky (1). Вторая цифра задаёт права пользователя, владеющего файлом: чтение (4), запись (2) и исполнение (1); третья задаёт права других пользователей из группы файла с такими же значениями; четвёртая цифра — права пользователей, не входящих в группу файла, с такими же значениями.

chmod не изменяет права на символьные ссылки; системный вызов chmod не может изменить эти права на большинстве систем, и большинство систем игнорирует их. Однако, для каждой символьной ссылки, перечисленной в командной строке, chmod изменяет права на файл, на который она ссылается. При рекурсивном прохождении по каталогам, chmod , напротив, игнорирует встречающиеся символьные ссылки. Параметры, которые изменяют это поведение, описаны в разделе ПАРАМЕТРЫ .

БИТЫ SETUID и SETGID

chmod удаляет бит установки идентификатора группы (set-group-ID) у обычного файла, если идентификатор группы этого файла не совпадает с эффективным идентификатором группы пользователя или идентификатором одной из его дополнительных групп, если только у пользователя нет соответствующих привилегий. Дополнительные ограничения могут привести к тому, что биты установки идентификатора пользователя (set-user-ID) и группы (set-group-ID) РЕЖИМа или ОФАЙЛа будут проигнорированы. Такое поведение зависит от политик и функциональности лежащего в основе системного вызова chmod . В случае сомнений, ознакомьтесь с низкоуровневым поведением системы.

При обработке каталогов, chmod сохраняет биты установки идентификатора пользователя (set-user-ID) и группы (set-group-ID), если вы явно не указали иначе. Вы можете установить или снять эти биты с помощью символьного представления режима доступа, например u+s или g-s . Для снятия этих битов у каталогов с использованием числового представления режима потребуется дополнительный ведущий ноль ( 00755 ), ведущий минус ( -6000 ) или ведущий символ равенства ( =755 ).

ФЛАГ ОГРАНИЧЕННОГО УДАЛЕНИЯ ИЛИ STICKY BIT

Флаг ограниченного удаления или sticky bit — это одиночный бит, назначение которого зависит от типа файла. Для каталогов, он предотвращает удаление или переименование файлов в каталоге непривилегированным пользователем, не являющимся владельцем этого файла или каталога; в этом случае бит носит название флага ограниченного удаления для каталога и широко применяется среди общедоступных для записи каталогов, например /tmp . Для обычных файлов на некоторых старых системах, данный бит позволяет сохранять образ текста программы на устройстве подкачки, чтобы она загружалась быстрее при запуске; в этом случае бит носит название sticky bit .

ПАРАМЕТРЫ

Изменить режим доступа для каждого ФАЙЛа на РЕЖИМ. При использовании --reference изменить режим доступа для каждого ФАЙЛа на соответствующие значения у файла ОФАЙЛ.
-c
, --changes

аналогично параметру verbose, но информировать только при внесении изменений

-f , --silent , --quiet

подавлять большинство сообщений об ошибках

-v , --verbose

выводить диагностическую информацию для каждого обработанного файла

--dereference

для каждой символьной ссылки изменять не саму ссылку, а её целевой объект

-h , --no-dereference

для каждой символьной ссылки изменять саму ссылку, а не её целевой объект

--no-preserve-root

не воспринимать «/» особым образом (по умолчанию)

--preserve-root

отказываться от рекурсивного выполнения над «/»

--reference = ОФАЙЛ

вместо указания значения РЕЖИМ использовать режим доступа к ОФАЙЛу в качестве образца. Если ОФАЙЛ является символьной ссылкой, она будет предварительно разыменована.

-R , --recursive

изменять файлы и каталоги рекурсивно

The following options modify how a hierarchy is traversed when the -R option is also specified. If more than one is specified, only the final one takes effect. -H is the default.

-H

если аргумент командной строки является символьной ссылкой на каталог, перейти по ней

-L

переходить по всем символьным ссылкам на каталоги

-P

не переходить по символьным ссылкам

--help

отобразить эту справочную информацию и завершить работу

--version

вывести информацию о версии и завершить работу

РЕЖИМ указывается в формате «[ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+».

АВТОРЫ

Программа написана Дэвидом Маккензи (David MacKenzie) и Джимом Мейерингом (Jim Meyering).

ИНФОРМАЦИЯ ОБ ОШИБКАХ

Онлайн-справка GNU coreutils: <https://www.gnu.org/software/coreutils/>
Сообщайте обо всех ошибках перевода по адресу <https://translationproject.org/team/ru.html>

СМОТРИТЕ ТАКЖЕ

chmod (2)

Полная документация на <https://www.gnu.org/software/coreutils/chmod>,
также доступна локально посредством info '(coreutils) chmod invocation'

Packaged by Debian (9.7-2)
Copyright © 2025 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Андрей Догадкин <adogadkin@outlook.com> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков .