ИМЯ acct - включает или выключает учёт процессов
ОБЗОР #include <unistd.h>
int acct(const char *filename);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):
acct(): начиная с glibc 2.21: _DEFAULT_SOURCE в glibc 2.19 и 2.20: _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500) до glibc 2.19, включительно: _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
ОПИСАНИЕ Системный вызов acct() включает или выключает учёт процессов. Если при вызове, в качестве аргумента, указывается имя существующего файла, происходит включение учёта, и при завершении процесса, в файл filename добавляются записи
...
Читать дальше »
|
ИМЯ access, faccessat - проверить права доступа пользователя к файлу
ОБЗОР #include <unistd.h>
int access(const char *pathname, int mode);
#include <fcntl.h> /* определения констант of AT_* */ #include <unistd.h>
int faccessat(int dirfd, const char *pathname, int mode, int flags);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):
faccessat(): Начиная с glibc 2.10: _POSIX_C_SOURCE >= 200809L До glibc 2.10: _ATFILE_SOURCE
ОПИСАНИЕ access проверяет, имеет ли вызвавший процесс права доступа к файлу pathname. Если pathname является символьной ссылкой, то проверяются права доступа к файлу, на ко
...
Читать дальше »
|
ИМЯ accept, accept4 - принять соединение на сокете
ОБЗОР #include <sys/types.h> /* См. ЗАМЕЧАНИЯ */ #include <sys/socket.h>
int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
#define _GNU_SOURCE /* Смотрите feature_test_macros(7) */ #include <sys/socket.h>
int accept4(int sockfd, struct sockaddr *addr, socklen_t *addrlen, int flags);
ОПИСАНИЕ Системный вызов accept() используется с сокетами, ориентированными на установление соединения (SOCK_STREAM, SOCK_SEQPACKET). Она извлекает первый запрос на соединение из очереди ожидающих соединений прослушивающего сокета, sockfd, создаёт новый подключенный сокет и и возвращает новый файловый деск
...
Читать дальше »
|
НАЗВАНИЕ chroot - изменить корневой каталог ОБЗОР #include
int chroot(const char *path); ОПИСАНИЕ chroot изменяет корневой каталог на тот, что задан аргументом path. Этот каталог будет использоваться для имен файлов, начинающихся со /. Корневой каталог наследуется всеми потомками текущего процесса.
Только суперпользователь может изменять корневой каталог.
Заметьте, что этот системный вызов не изменяет текущий рабочий каталог, поэтому . может находиться вне дерева каталогов, начинающегося со /. В частности, суперпользователь может выбраться из-под chroot тюрьмы с помощью mkdir foo; chroot foo; cd ... ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ В случае успеха возвращается ноль. При ошибке возвращается -1, а errno устанавливается должным образом.
ОШИБКИ
В зависимости от файловой системы могут появляться другие ошибки. Стандартные ошибки таковы:
EPERM Фактический UID не равен нулю. EFAULT path указывает за пр
...
Читать дальше »
|
ИМЯ link - создать новое имя файла ОБЗОР #include
int link(const char *oldpath, const char *newpath); ОПИСАНИЕ link создает новую ссылку (также известную как "жесткая" ссылка) на существующий файл.
Если newpath существует, он не будет перезаписан.
Это новое имя может использоваться точно так же, как и старое, для любых операций; оба имени ссылаются на один и тот же файл (то есть имеют те же права доступа и владельца) и невозможно сказать, какое имя было "настоящим".
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ В случае успеха возвращается ноль. При ошибке возвращается -1, а errno устанавливается должным образом.
ОШИБКИ
EXDEV oldpath и newpath находятся на разных файловых системах. EPERM Файловая система, содержащая oldpath и newpath, не поддерживает жесткие ссылки. EFAULT oldpath или newpath указывают за пределы доступного адресного пространства. EACCES Запись в каталог, содержащий new
...
Читать дальше »
|
НАЗВАНИЕ mknod - создает специальный или обычный файл СИНТАКСИС #include #include #include #include
int mknod(const char *pathname, mode_t mode, dev_t dev);
ОПИСАНИЕ Системный вызов mknod создат запись inode в файловой системе (обычный файл, файл устройства или именованый канал) с именем pathname, с атрибутами, определяемыми параметрами mode и dev.
Параметр mode задает как права доступа, так и тип создаваемой записи. В этом параметре содержится битовая комбинация (используя побитовое логическое сложение OR) одного из нижеперечисленных типов файлов и прав доступа для нового узла. Права доступа изменяются, при этом значение umask процесса используется обычным способом: права доступа становятся равны (mode & ~umask). Тип файла должен быть S_IFREG, S_IFCHR, S_IFBLK, S_IFIFO or S_IFSOCK для определения обычного файла (он будет создан пустым), особого символьного файла, особого блочного файла
...
Читать дальше »
|
НАЗВАНИЕ rmdir - удаляет каталог ИСПОЛЬЗОВАНИЕ #include
int rmdir(const char *pathname); ОПИСАНИЕ rmdir удаляет каталог, который должен быть пустым. ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ В случае успеха возвращается ноль. При ошибке возвращается -1, а errno устанавливается должным образом.
ОШИБКИ
EPERM Файловая система, содержащая pathname, не поддерживает удаление каталогов. EFAULT pathname указывает за пределы доступного адресного пространства. EACCES Доступ на запись в каталоге, содержащем pathname, не разрешен для текущего эффективного идентификатора пользователя, или же один из каталогов в pathname не разрешает поиск (выполнение). EPERM В правах доступа к каталогу, содержащему pathname, включен бит "липкости" (S_ISVTX), а эффективный идентификатор пользователя не совпадает ни с владельцем удаляемого файла, ни с владельцем каталога, который его содержит, или же pathname является каталогом. E
...
Читать дальше »
| |