| fcntl(2) | System Calls Manual | fcntl(2) |
NAZWA
fcntl - manipuluje deskryptorem pliku
BIBLIOTEKA
Standardowa biblioteka C (libc, -lc)
SKŁADNIA
#include <fcntl.h>
int fcntl(int fd, int op, ...);
OPIS
fcntl dokonuje jednej z operacji opisanych poniżej na otwartym deskryptorze pliku fd. Wykonywana operacja jest określona przez op.
Niektóre z poniższych operacji są obsługiwane jedynie w określonej wersji jądra Linux. Preferowaną metodą sprawdzenia, czy działające aktualnie jądro obsługuje daną operację, jest przywołanie fcntl() z daną wartością op i sprawdzenie, czy wywołanie zawiedzie z błędem EINVAL wskazując, że jądro nie rozpoznało tej wartości.
Duplikowanie deskryptora pliku
Znaczniki deskryptora pliku
Znaczniki stanu pliku
Blokowanie doradcze rekordów
Blokady opisu otwartego pliku (spoza POSIX)
Zarządzanie sygnałami
Dzierżawy
Delegacje
Powiadamianie o zmianach pliku lub katalogu (dnotify)
Zmiana pojemności potoku
Pieczętowanie pliku (ang. file sealing)
Wskazówki odczytu/zapisu pliku
WARTOŚĆ ZWRACANA
Wartość zwracana po pomyślnym zakończeniu funkcji zależy od operacji.
W razie wystąpienia błędu zwracane jest -1 i ustawiane errno wskazując błąd.
BŁĘDY
- EACCES lub EAGAIN
- Operacja uniemożliwiona przez blokady utrzymywane przez inne procesy.
- EAGAIN
- Operacja jest zabroniona, gdyż plik został odwzorowany w pamięci przez inny proces.
- EBADF
- fd nie jest deskryptorem otwartego pliku.
- EINVAL
- Wartość podana w op nie jest rozpoznawana przez to jądro.
WERSJE
POSIX.1-2024 określa FD_CLOFORK i F_DUPFD_CLOFORK, lecz Linux ich nie obsługuje.
STANDARDY
POSIX.1-2024.
HISTORIA
4.3BSD, SVr4, POSIX.1-1988.
ZOBACZ TAKŻE
dup2(2), flock(2), open(2), socket(2), lockf(3), capabilities(7), feature_test_macros(7), lslocks(8)
TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika: Przemek Borys <pborys@dione.ids.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl> i Michał Kułach <michal.kulach@gmail.com>
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.
| 8 lutego 2026 r. | Linux man-pages 6.17 |