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 присваивается код ошибки.