.\" -*- coding: UTF-8 -*-
.\" This manpage is Copyright (C) 1992 Drew Eckhardt;
.\"             and Copyright (C) 1993 Ian Jackson
.\"             and Copyright (C) 2006, 2014 Michael Kerrisk.
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.\" Modified 1993-07-24 by Rik Faith <faith@cs.unc.edu>
.\" Modified 1996-09-08 by Arnt Gulbrandsen <agulbra@troll.no>
.\" Modified 1997-01-31 by Eric S. Raymond <esr@thyrsus.com>
.\" Modified 2001-05-17 by aeb
.\" Modified 2004-06-23 by Michael Kerrisk <mtk.manpages@gmail.com>
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH unlink 2 "13 czerwca 2024 r." "Linux man\-pages 6.9.1" 
.SH NAZWA
unlink, unlinkat \- usuwa nazwę i może usunąć plik, do której nazwa ta się
odnosi
.SH BIBLIOTEKA
Standardowa biblioteka C (\fIlibc\fP, \fI\-lc\fP)
.SH SKŁADNIA
.nf
\fB#include <unistd.h>\fP
.P
\fBint unlink(const char *\fP\fIpathname\fP\fB);\fP
.P
\fB#include <fcntl.h>           \fP/* Definicja stałych \fBAT_*\fP */
\fB#include <unistd.h>\fP
.P
\fBint unlinkat(int \fP\fIdirfd\fP\fB, const char *\fP\fIpathname\fP\fB, int \fP\fIflags\fP\fB);\fP
.fi
.P
.RS -4
Wymagane ustawienia makr biblioteki glibc (patrz \fBfeature_test_macros\fP(7)):
.RE
.P
\fBunlinkat\fP():
.nf
    Od glibc 2.10:
        _POSIX_C_SOURCE >= 200809L
    Przed glibc 2.10:
        _ATFILE_SOURCE
.fi
.SH OPIS
\fBunlink\fP() usuwa nazwę z systemu plików. Jeśli nazwa ta była ostatnim
dowiązaniem do pliku i żaden proces nie utrzymuje tego pliku otwartego, plik
jest usuwany, a przestrzeń jaką zajmował staje się dostępna do ponowego
użytku.
.P
Jeśli nazwa była ostatnim dowiązaniem do pliku, lecz istnieją procesy, które
utrzymują plik otwarty, plik będzie istniał do momentu zamknięcia
ostatniego, odnoszącego się do niego, deskryptora pliku.
.P
Jeśli nazwa odnosi się do dowiązania symbolicznego, dowiązanie to jest
usuwane.
.P
Jeśli nazwa odnosiła się do gniazda, FIFO lub urządzenia, nazwa ta jest
usuwana, lecz procesy, które utrzymywały obiekt otwarty, wciąż mogą go
używać.
.SS unlinkat()
Wywołanie systemowe \fBunlinkat\fP() działa dokładnie w ten sam sposób jak
\fBunlink\fP() lub \fBrmdir\fP(2)  (w zależności od tego, czy \fIflags\fP zawiera
\fBAT_REMOVEDIR\fP, czy też nie) z wyjątkiem różnic opisanych poniżej.
.P
Jeśli ścieżka podana w \fIpathname\fP jest względna, to jest interpretowana w
odniesieniu do katalogu, do którego odnosi się deskryptor pliku \fIdirfd\fP
(zamiast w odniesieniu do bieżącego katalogu roboczego procesu wywołującego,
jak czynią to \fBunlink\fP() i \fBrmdir\fP(2) w przypadku ścieżek względnych).
.P
Jeśli ścieżka podana w \fIpathname\fP jest względna, a \fIdirfd\fP ma wartość
specjalną \fBAT_FDCWD\fP, to ścieżka \fIpathname\fP jest interpretowana w
odniesieniu do bieżącego katalogu roboczego procesu wywołującego (jak czynią
to \fBunlink\fP() i \fBrmdir\fP(2)).
.P
Jeśli ścieżka podana w \fIpathname\fP jest bezwzględna, to \fIdirfd\fP jest
ignorowane.
.P
\fIflags\fP jest maską bitową mogącą być określoną jako 0 lub jako suma (OR)
wartości znaczników, które kontrolują działanie \fBunlinkat\fP(). Obecnie
zdefiniowano tylko jeden taki znacznik:
.TP 
\fBAT_REMOVEDIR\fP
Domyślnie, \fBunlinkat\fP() przeprowadza odpowiednik \fBunlink\fP() na
\fIpathname\fP. Jeśli podany jest znacznik \fBAT_REMOVEDIR\fP, to przeprowadzany
jest odpowiednik \fBrmdir\fP(2) na \fIpathname\fP.
.P
Więcej informacji o potrzebie wprowadzenia \fBunlinkat\fP() można znaleźć w
podręczniku \fBopenat\fP(2).
.SH "WARTOŚĆ ZWRACANA"
Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest \-1 i
ustawiane \fIerrno\fP, wskazując błąd.
.SH BŁĘDY
.TP 
\fBEACCES\fP
Dostęp do zapisu do katalogu zawierającego \fIpathname\fP nie jest dozwolony
dla efektywnego UID\-u procesu, albo jeden z katalogów w \fIpathname\fP nie
dozwala na uprawnienie przeszukania (zob. też \fBpath_resolution\fP(7)).
.TP 
\fBEBUSY\fP
Plik \fIpathname\fP nie może być odlinkowany, ponieważ jest używany przez
system lub inny proces np. jest punktem montowania lub oprogramowanie
klienta NFS utworzyło go do reprezentacji aktywnego, ale poza tym
nienazwanego i\-węzła (\[Bq]NFS silly renamed\[rq] \[em] \[Bq]głupio
przemianowane przez NFS\[rq]).
.TP 
\fBEFAULT\fP
\fIpathname\fP wskazuje poza dostępną dla użytkownika przestrzeń adresową.
.TP 
\fBEIO\fP
Wystąpił błąd wejścia/wyjścia.
.TP 
\fBEISDIR\fP
\fIpathname\fP odnosi się do katalogu (jest to wartość spoza POSIX, zwracana od
Linuksa 2.1.132).
.TP 
\fBELOOP\fP
Przy tłumaczeniu \fIpathname\fP napotkano zbyt wiele dowiązań symbolicznych.
.TP 
\fBENAMETOOLONG\fP
\fIpathname\fP było zbyt długie.
.TP 
\fBENOENT\fP
Składowa ścieżki \fIpathname\fP nie istnieje lub jest wiszącym dowiązaniem
symbolicznych, lub \fIpathname\fP jest pusta.
.TP 
\fBENOMEM\fP
Brak pamięci jądra.
.TP 
\fBENOTDIR\fP
Składnik \fIpathname\fP, który powinien być katalogiem, w rzeczywistości
katalogiem nie jest.
.TP 
\fBEPERM\fP
System nie zezwala na odlinkowanie katalogów lub odlinkowanie katalogów
wymaga przywilejów, którymi nie dysponuje proces wywołujący (jest to błąd
przewidziany przez POSIX, jak zaznaczono wyżej, Linux w tym przypadku zwraca
\fBEISDIR\fP).
.TP 
\fBEPERM\fP (tylko Linux)
System plików nie zezwala na odlinkowanie plików.
.TP 
\fBEPERM\fP lub \fBEACCES\fP
Katalog zawierający \fIpathname\fP ma ustawiony bit lepkości (\fBS_ISVTX\fP), a
efektywny UID procesu nie jest ani UID\-em usuwanego pliku, ani katalogu go
zawierającego oraz proces nie jest uprzywilejowany (Linux: nie ma przywileju
\fBCAP_FOWNER\fP).
.TP 
\fBEPERM\fP
Plik do odlinkowania jest oznaczony jako tylko do odczytu lub tylko do
nadpisu (zob. również \fBFS_IOC_SETFLAGS\fP(2const)).
.TP 
\fBEROFS\fP
\fIpathname\fP odnosi się do pliku w systemie plików tylko do odczytu.
.P
Błędy, które mogą wystąpić w \fBunlink\fP() i \fBrmdir\fP(2) mogą również wystąpić
w \fBunlinkat\fP(). Następujące dodatkowe błędy mogą wystąpić w \fBunlinkat\fP():
.TP 
\fBEBADF\fP
\fIpathname\fP jest względna, lecz \fIdirfd\fP nie wynosi ani \fBAT_FDCWD\fP, ani nie
jest prawidłowym deskryptorem pliku.
.TP 
\fBEINVAL\fP
We \fIflags\fP podano nieprawidłową wartość znacznika.
.TP 
\fBEISDIR\fP
\fIpathname\fP odnosi się do katalogu, a we \fIflags\fP nie podano
\fBAT_REMOVEDIR\fP.
.TP 
\fBENOTDIR\fP
\fIpathname\fP jest względna a \fIdirfd\fP jest deskryptorem pliku odnoszącym się
do pliku zamiast do katalogu.
.SH STANDARDY
POSIX.1\-2008.
.SH HISTORIA
.TP 
\fBunlink\fP()
.\" SVr4 documents additional error
.\" conditions EINTR, EMULTIHOP, ETXTBSY, ENOLINK.
SVr4, 4.3BSD, POSIX.1\-2001.
.TP 
\fBunlinkat\fP()
POSIX.1\-2008.  Linux 2.6.16, glibc 2.4.
.SS glibc
W starszych jądrach, gdzie \fBunlinkat\fP() jest niedostępne, funkcja
opakowująca z glibc zapasowo korzysta z \fBunlink\fP() lub \fBrmdir\fP(2). Gdy
\fIpathname\fP jest ścieżką względną, glibc tworzy ścieżkę w oparciu o
dowiązanie symboliczne w \fI/proc/self/fd\fP, które odnosi się do argumentu
\fIdirfd\fP.
.SH USTERKI
Nietrafne rozwiązania w protokole odpowiedzialnym za obsługę NFS mogą
spowodować nieoczekiwane zniknięcie plików, które są wciąż w użyciu.
.SH "ZOBACZ TAKŻE"
\fBrm\fP(1), \fBunlink\fP(1), \fBchmod\fP(2), \fBlink\fP(2), \fBmknod\fP(2), \fBopen\fP(2),
\fBrename\fP(2), \fBrmdir\fP(2), \fBmkfifo\fP(3), \fBremove\fP(3),
\fBpath_resolution\fP(7), \fBsymlink\fP(7)
.PP
.SH TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są:
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
