> Linux Reviews > man >

chmod


  1. chmod.1.man
  2. chmod.2.man


1. chmod.1.man

Manpage of CHGRP

CHGRP

Section: User Commands (1)
Updated: 2000-08
Index Return to Main Contents
 

chmod -  

chmod [] ...

POSIX: [-R] [--]

GNU: [--reference=rfile]

GNU ( ): [-cfvR] [--help] [--version] [--]  

chmod , , , , .

:
`[ugoa...][[+-=][rwxXstugo...]...][,...]'.

-- , . `ugoa', , : , (u); (g); , (o) (a). `a' `ugo'. , `a', , umask, .

`+' ; `-' ; `=' .

`rwxXstugo' , `ugoa': (r); (w); ( ) (x); , - (X); setuid- setgid- (s); sticky- (t); , , (u); , (g); , ( ) (o). (, `chmod g-s file' set-group-ID (sgid), `chmod ug+s file' suid sgid, `chmod o+s file' ).

`sticky-' POSIX. - , : . sticky- , , . ( /tmp, ).

( ), 4, 2 1. . (setuid) (4) (setgid) (2) sticky- (1). , : (4), (2) (1); , , , ; ( ), .

chmod , chmod. , . , , , chmod . chmod , .  

POSIX

-R
.
 

GNU-

GNU ( fileutils 4.0) --reference=rfile , rfile.
--
.
 

GNU

-c, --changes
, .
-f, --silent, --quiet
, .
-v, --verbose
.
-R, --recursive
.
 

GNU

--help
.
--version
.
--
.
 

LANG, LC_ALL, LC_CTYPE LC_MESSAGES. , XSI, NLSPATH.  

POSIX 1003.2 -R. . POSIX `t'. , chmod , suid sgid, , , , , chmod `s'.  

`t' . , . , , Linux, System V (. System V Interface Definition (SVID) Version 3), setgid, , mandatory (), advisory (). /usr/src/linux/Documentation/mandatory.txt.  

chmod, fileutils-4.0; . aeb@cwi.nl. fileutils-bugs@gnu.ai.mit.edu.  

chattr(1), chown(1), install(1), chmod(2), stat(2), umask(2)  

ף <corochoone@perm.ru> 2003


 

Index

POSIX
GNU-
GNU
GNU

This document was created by man2html using the manual pages.
Time: 17:41:11 GMT, October 23, 2013

2. chmod.2.man

Manpage of CHMOD

CHMOD

Section: Руководство программиста Linux (2)
Updated: 2010-09-20
Index Return to Main Contents
 

ИМЯ

chmod, fchmod - изменить права доступа к файлу  

ОБЗОР

#include <sys/stat.h>

int chmod(const char *path, mode_t mode);
int fchmod(int fd, mode_t mode);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

fchmod():

Начиная с glibc 2.12:
_POSIX_C_SOURCE >= 200809L || _BSD_SOURCE || _XOPEN_SOURCE >=500 || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
До glibc 2.12:
_BSD_SOURCE || _XOPEN_SOURCE >= 500 || _XOPEN_SOURCE &&_XOPEN_SOURCE_EXTENDED
 

ОПИСАНИЕ

Данные системные вызовы изменяют права доступа к файлу. Они отличаются только тем, как задан файл:
*
chmod() изменяет права доступа к файлу, заданному параметром path, который разыменовывается, если является символьной ссылкой.
*
fchmod() изменяет права доступа к файлу, на который указывает открытый файловый дескриптор fd.

Новые права файла задаются в переменной mode, которая представляет собой битовую маску, создаваемую побитовым сложением нуля или более следующих констант:

S_ISUID (04000)
set-user-ID (установить эффективный идентификатор пользователя процесса при execve(2))
S_ISGID (02000)
set-group-ID (установить эффективный идентификатор группы процесса при execve(2); обязательная блокировка, описывается в fcntl(2); выбрать новую группу файла от родительского каталога, описывается в chown(2) и mkdir(2))
S_ISVTX (01000)
закрепляющий бит (ограничительный флаг удаления, описывается в unlink(2))
S_IRUSR (00400)
владелец может читать
S_IWUSR (00200)
владелец может писать
S_IXUSR (00100)
владелец может выполнять файл или искать в каталоге ("поиск" применим к каталогам и означает, что к элементам внутри каталога есть доступ)
S_IRGRP (00040)
группа-владелец может читать
S_IWGRP (00020)
группа-владелец может писать
S_IXGRP (00010)
группа-владелец может выполнять файл или искать в каталоге
S_IROTH (00004)
все остальные могут читать
S_IWOTH (00002)
все остальные могут писать
S_IXOTH (00001)
все остальные могут выполнять файл или искать в каталоге

Эффективный идентификатор пользователя (UID) вызывающего процесса должен совпадать с UID владельца файла или процесс должен быть привилегированным (Linux: у него должен быть мандат CAP_FOWNER).

Если вызывающий процесс не является привилегированным (Linux: не имеет мандата CAP_FSETID), а группа-владелец файла не совпадает с эффективным групповым ID процесса или одним из его дополнительных групповых идентификаторов, то бит S_ISGID будет сброшен, но ошибки при этом не возникнет.

В зависимости от файловой системы в целях безопасности биты выполнения set-user-ID и set-group-ID могут сбрасываться при записи в файл. (В Linux это происходит, если записывающий процесс не имеет мандата CAP_FSETID.) В некоторых файловых системах только суперпользователь может устанавливать закрепляющий бит, который может иметь специальное назначение. Значения закрепляющего бита, set-user-ID и set-group-ID для каталогов смотрите в stat(2).

В файловых системах NFS ограничивающие права сразу начинают действовать даже уже на открытые файлы, так как контроль доступа выполняется сервером, но открытые файлы находятся в ведении клиента. Распространение прав может откладываться для других клиентов, если у них установлен атрибут кэширования.  

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении возвращается 0. В случае ошибки возвращается -1, а errno устанавливается в соответствующее значение.  

ОШИБКИ

В зависимости от файловой системы могут также появиться другие ошибки. Общий набор ошибок для chmod() таков:
EACCES
Поиск запрещён из-за одного из частей префикса пути (См. также path_resolution(7).)
EFAULT
Аргумент path указывает за пределы доступного адресного пространства.
EIO
Произошла ошибка ввода-вывода.
ELOOP
Во время определения path встретилось слишком много символьных ссылок.
ENAMETOOLONG
path слишком длинен.
ENOENT
Файл не существует.
ENOMEM
Недостаточное количество памяти ядра.
ENOTDIR
Компонент в префиксе пути не является каталогом.
EPERM
Эффективный UID не совпадает с идентификатором владельца файла, а процесс не является привилегированным (Linux: не имеет мандата CAP_FOWNER).
EROFS
Файл находится на файловой системе, смонтированной только для чтения.

Общий набор ошибок для fchmod() таков:

EBADF
Файловый дескриптор fd не действителен.
EIO
См. выше.
EPERM
См. выше.
EROFS
См. выше.
 

СООТВЕТСТВИЕ СТАНДАРТАМ

4.4BSD, SVr4, POSIX.1-2001.  

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

chown(2), execve(2), fchmodat(2), open(2), stat(2), path_resolution(7)


 

Index

ИМЯ
ОБЗОР
ОПИСАНИЕ
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
ОШИБКИ
СООТВЕТСТВИЕ СТАНДАРТАМ
СМОТРИТЕ ТАКЖЕ

This document was created by man2html using the manual pages.
Time: 17:41:11 GMT, October 23, 2013

SVENSKA - cs - da - SVENSKA - SVENSKA - SVENSKA - ja - nl - pl - ro