.\" -*- coding: UTF-8 -*- .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH unlink 2 "17 maja 2025 r." "Linux man\-pages 6.15" .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 \fP .P \fBint unlink(const char *\fP\fIpath\fP\fB);\fP .P \fB#include \fP/* Definicja stałych \fBAT_*\fP */ \fB#include \fP .P \fBint unlinkat(int \fP\fIdirfd\fP\fB, const char *\fP\fIpath\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 \fIpath\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 \fIpath\fP jest względna, a \fIdirfd\fP ma wartość specjalną \fBAT_FDCWD\fP, to ścieżka \fIpath\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 \fIpath\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 \fIpath\fP. Jeśli podany jest znacznik \fBAT_REMOVEDIR\fP, to przeprowadzany jest odpowiednik \fBrmdir\fP(2) na \fIpath\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 \fIpath\fP nie jest dozwolony dla efektywnego UID\-u procesu, albo jeden z katalogów w \fIpath\fP nie dozwala na uprawnienie przeszukania (zob. też \fBpath_resolution\fP(7)). .TP \fBEBUSY\fP \fIpath\fP nie może być odlinkowana, ponieważ jest używana przez system lub inny proces np. jest punktem montowania lub oprogramowanie klienta NFS utworzyło ją 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 \fIpath\fP wskazuje poza dostępną dla użytkownika przestrzeń adresową. .TP \fBEIO\fP Wystąpił błąd wejścia/wyjścia. .TP \fBEISDIR\fP \fIpath\fP odnosi się do katalogu (jest to wartość spoza POSIX, zwracana od Linuksa 2.1.132). .TP \fBELOOP\fP Przy tłumaczeniu \fIpath\fP napotkano zbyt wiele dowiązań symbolicznych. .TP \fBENAMETOOLONG\fP \fIpath\fP była zbyt długa. .TP \fBENOENT\fP Składowa ścieżki \fIpath\fP nie istnieje lub jest wiszącym dowiązaniem symbolicznym, lub \fIpath\fP jest pusta. .TP \fBENOMEM\fP Brak pamięci jądra. .TP \fBENOTDIR\fP Składowa \fIpath\fP, która powinna 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 \fIpath\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 \fIpath\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 \fIpath\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 \fIpath\fP odnosi się do katalogu, a we \fIflags\fP nie podano \fBAT_REMOVEDIR\fP. .TP \fBENOTDIR\fP \fIpath\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 awaryjnie korzysta z \fBunlink\fP() lub \fBrmdir\fP(2). Gdy \fIpath\fP jest względna, 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 Tłumaczenie niniejszej strony podręcznika: Michał Kułach . .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 .