CHOWN(2)
НАЗВАНИЕ
chown - изменение владельца и группы файла
СИНТАКСИС
int chown (path, owner, group)
char *path;
int owner, group;
ОПИСАНИЕ
Аргумент path является указателем на маршрутное имя
файла. Идентификаторы владельца и группы указанного
файла устанавливаются равными числовым значениям, соответственно, аргументов owner и group.
Изменить хозяев файла (владельца и группу) может только
процесс, имеющий действующий идентификатор пользователя, равный идентификатору владельца файла или суперпользователя.
Если системный вызов chown выполняется не суперпользователем, то биты переустановки идентификаторов пользователя и группы, 04000 и 02000 соответственно, обнуляются.
Системный вызов chown завершается неудачей и идентификаторы владельца и группы указанного файла не изменяются, если выполнено хотя бы одно из следующих условий:
- [ENOTDIR]
- Компонент маршрута не является каталогом.
- [ENOENT]
- Указанный файл не существует.
- [EACCES]
- Для компонента маршрута отсутствует право
на поиск.
- [EPERM]
- Действующий идентификатор пользователя не
равен идентификатору владельца файла или
суперпользователя.
- [EROFS]
- Указанный файл расположен в файловой системе, доступной только на чтение.
- [EFAULT]
- Аргумент path указывает за пределы отведенного процессу адресного пространства.
- [EINTR]
- Во время выполнения системного вызова перехвачен сигнал.
- [ENOLINK]
- Маршрутное имя path указывает на удаленный
компьютер, связи с которым в данный момент
нет.
- [EMULTIHOP] Компоненты path требуют многократного обращения к удаленным компьютерам.
СМ. ТАКЖЕ
chmod(2).
chown(1) в Справочнике пользователя.
ДИАГНОСТИКА
При успешном завершении результат равен 0; в случае
ошибки возвращается -1, а переменной errno присваивается код ошибки.