Владение файлами

Владение файлами

Владелец-пользователь и владелец-группа файла могут быть изменены с помощью системных вызовов chown(2), fchown(2) и lchown(2):

#include <unistd.h>

#include <sys/types.h>

int chown(const char *path, uid_t owner, gid_t group);

int fchown(int fildes, uid_t owner, gid_t group);

int lchown(const char *path, uid_t owner, gid_t group);

Все три вызова работают одинаково за исключением ситуации, когда адресуемый файл является символической связью. В последнем случае вызов lchown(2) действует на сам файл — символическую связь, а не на целевой файл (т.е. не следует символической связи). В функциях chown(2) и lchown(2) файл адресуется по имени, а в fchown(2) — по файловому дескриптору. Если значение owner или group установлено равным -1, соответствующий владелец файла не изменяется.

В версиях BSD UNIX только суперпользователь может изменить владение файлом. Это ограничение призвано, в первую очередь, не допустить "скрытие" файлов под именем другого пользователя, например, при установке квотирования ресурсов файловой системы. Владельца-группу можно изменить только для файлов, которыми вы владеете, причем им может стать одна из групп, членом которой вы являетесь. Эти же ограничения определены и стандартом POSIX.1.

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

В случае успешного изменения владельцев файла биты SUID и SGID сбрасываются, если процесс, вызвавший chown(2) не обладает правами суперпользователя.

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



Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

Работа с файлами

Из книги автора

Работа с файлами fopenОткрывает файл и привязывает его к дескриптору.Синтаксис:int fopen(string $filename, string $mode, bool $use_include_path=false)Открывает файл с именем $filename в режиме $mode и возвращает дескриптор открытого файла. Если операция "провалилась", то функция возвращает false. Необязательный


17.4. Операции с файлами

Из книги автора

17.4. Операции с файлами Следующая группа вызовов начинается с FIO и может применяться к определенным типам файлов в дополнение к сокетам. Мы рассматриваем только вызовы, применимые к сокетам [128, с. 553].Следующие пять вызовов требуют, чтобы третий аргумент функции ioctl указывал


Манипулирование файлами

Из книги автора

Манипулирование файлами Перейдем к манипуляциям с существующими файлами — копированию, перемещёнию, переименованию, удалению.Начнем с копирования — это выполняется очень простой командой, cp, имеющей, однако, весьма разнообразные аспекты применения. В самом простом


14.2 Работа с файлами

Из книги автора

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


Работа с файлами

Из книги автора

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


СВЯЗЬ С ФАЙЛАМИ

Из книги автора

СВЯЗЬ С ФАЙЛАМИ      Часто нам бывает нужна программа получения информации от файла или размещения результатов в файле. Один способ организации связи программы с файлом заключается в использовании операций переключения < и >. Этот метод прост, но ограничен. Например,


Операции над файлами

Из книги автора

Операции над файлами Функция Краткое описание access определение прав доступа к файлу chmod изменение прав доступа к файлу filelength измерение длины файла isatty проверка, является ли устройство символьным mktemp генерация уникального имени файла remove уничтожение


Владение таблицами и привилегии

Из книги автора

Владение таблицами и привилегии Когда создается таблица, Firebird автоматически применяет к ним безопасность схемы по умолчанию. Человеку, который создает таблицу (ее владелец), назначаются к ней все привилегии SQL, включая право передавать привилегии другим пользователям,


Операции с файлами

Из книги автора

Операции с файлами В состав класса CFile входят методы, позволяющие выполнять над файлами различные операции, например копирование, переименование, удаление, изменение атрибутов.Операционная система MS-DOS содержит команду REN, позволяющую переименовывать файлы. Класс CFile


6.1. Связь с файлами

Из книги автора

6.1. Связь с файлами До сих пор мы применяли только один метод связи пользователя с программой — пользователь задает программе вопросы, а программа ему отвечает, конкретизируя переменные. Такой механизм связи прост и практичен и, несмотря на свою простоту, обеспечивает


Работа с файлами

Из книги автора

Работа с файлами Набрав первые несколько абзацев, обязательно сохраните их. Для этого предназначена команда меню Файл ? Сохранить. В появившемся окне Сохранение документа необходимо указать имя и выбрать месторасположение файла. По умолчанию текстовый редактор


Работа с MP3-файлами

Из книги автора

Работа с MP3-файлами Конвертируя диски в формат MP3, пользователь только первое время будет слушать композиции, сохраненные с пустыми тегами. Долгий поиск необходимой композиции вскоре начнет утомлять, ручное переименование тегов надоест после первых трех


Совместное владение кодом (Collective code ownership)

Из книги автора

Совместное владение кодом (Collective code ownership) Мы выступаем за совместное владение кодом, хотя ещё не все наши команды внедрили у себя эту практику. На собственном опыте мы убедились, что парное программирование и постоянная смена пар автоматически увеличивают уровень


Работа с файлами

Из книги автора

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