chmod- смена прав доступа

CHMOD(1)

НАЗВАНИЕ

chmod — смена прав доступа

СИНТАКСИС

chmod [-fhv] [-R [-H | -L | -P]] права файл …

ОПИСАНИЕ

Утилита chmod изменяет биты прав доступа указанных файлов.

Разрешенные опции:

-f

Не выводить диагностическое сообщение, если chmod не может изменить биты прав доступа файла. -H

Если указана опция -R, символические ссылки разрешенны. По умолчанию запрещено.

-h

смена прав доступа только символической ссылки (а не файла на который она указывает).

-L

Если опция -R указана, все символические ссылки разрещены.

-P

Если опция -R указана, все символические ссылки запрещены.

-R

Рекурсивная смена прав доступа.

-v

Детальный вывод работы chmod.

Если указана опция -R, опции -H, -L, -P игнорируются.Только владелец файла или супер-пользователь могут изменять права доступа.

КОД ЗАВЕРШЕНИЯ

При успешном завершении — 0, при ошибке > 0.

ПРАВА ДОСТУПА

Права доступа указываются в абсолютном или символическом виде. Абсолютный вид — сума восьмеричных значений.

4000

setuid bit. С установленным битом setuid файлы запускаются от имени их владельца.

2000

setgid bit. С установленным битом setgid файлы запускаются от имени их группы владельца.

1000

sticky bit.

0400

Владельцу разрешено чтение.

0200

Владельцу разрешена запись.

0100

Для файла — владельцу разрешенно его запускать, для директории — владельцу разрешенно просматривать содержимое.

0040

Групе разрешено чтение.

0020

Групе разрешена запись.

0010

Для файла — групе разрешенно его запускать, для директории — групе разрешенно просматривать содержимое.

0004

Другим разрешено чтение.

0002

Другим разрешена запись.

0001

Для файла — другим разрешенно его запускать, для директории — другим разрешенно просматривать содержимое.

Пример: владельцу разрешенно чтение, запись, запуск; групе — чтение и запуск; другим — чтение и запуск. Биты setuid и setgid не установленны. 400+200+100+040+010+004+001=755.

Символичекое представление прав:

mode ::= clause [, clause …]

clause ::= [who …] [action …] action

action ::= op [perm …]

who ::= a | u | g | o

op ::= + | — | =

perm ::= r | s | t | w | x | X | u | g | o

Символы who: u — пользователь, g — групgа, o — другие, a — эквивалентно ugo

Символы perm

r — чтение.

s — setuid и setgid.

t — sticky бит.

w — запись.

x — исполнение/запуск.

X — исполнение/запуск если это директория.

u — права доступа для владельца в оригинальном файле.

g — права доступа для группы в оригинальном файле.

o — права доступа для других в оригинальном файле.

Символы op

+ добавить

— удалить

= очистить

ПРИМЕРЫ

644

запись только владельцу, остальным чтение

go-w

Запрет на запись группе и другим

=rw,+X

установить бит чтения и записи, сохранить бит на исполнение

go=

очистить все биты для группы и других

СТАНДАРТЫ

команда chmod соответствует стандарту IEEE Std 1003.2 («POSIX.2»); исключение составляет sticky-бит, который не стандартизирован.

СОВМЕСТИМОСТЬ

опция -v не стандартизирована, и не рекомендуется использовать ее в скриптах.

ИСТОРИЯ

Команда chmod появилась в версии 1 AT&T UNIX

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *