IPCRM(1) | Polecenia użytkownika | IPCRM(1) |
NAZWA¶
ipcrm - usuwa określone zasoby IPC
SKŁADNIA¶
ipcrm [opcje]
ipcrm [shm|msg|sem] ID ...
OPIS¶
ipcrm usuwa z systemu obiekty komunikacji międzyprocesowej (inter-process communication - IPC) POSIX i Systemu V oraz skojarzone z nimi struktury danych. Aby usunąć takie obiekty, należy być superużytkownikiem lub twórcą albo właścicielem obiektu.
Są trzy typy obiektów IPC POSIX i Systemu V: pamięć dzielona, kolejki komunikatów i semafory. Usuwanie obiektu typu kolejka komunikatów lub semafor jest natychmiastowe (niezależnie od tego, czy jakiś proces wciąż utrzymuje identyfikator IPC tego obiektu). Obiekt typu pamięć współdzielona jest usuwany tylko wtedy, gdy wszystkie obecnie połączone procesy odłączą (shmdt(2)) ten obiekt z ich wirtualnej przestrzeni adresowej.
Obsługiwane są dwa style składni. Stara, historyczna składnia linuksowa składa się trzyliterowego słowa kluczowego, określającego jakiej klasy obiekt ma być usunięty, po którym następuje jeden lub więcej identyfikatorów IPC obiektów tego typu.
Składnia zgodna z SUS pozwala na podanie zera lub więcej obiektów wszystkich typów w pojedynczym wywołaniu. Obiekty mogą być określone albo przez klucz, albo przez identyfikator (patrz niżej). Zarówno klucze, jak i identyfikatory mogą być podane w postaci dziesiętnej, szesnastkowej (zaczynającej się od "0x" lub "0X") lub ósemkowej (zaczynającej się od "0").
Szczegóły usuwania są opisane w shmctl(2), shm_unlink(3), msgctl(2), mq_unlink(3), semctl(2) i sem_unlink(3). Identyfikatory i klucze można znaleźć używając lsipc(1) lub ipcs(1).
OPCJE¶
-a, --all [shm] [pshm] [msg] [pmsg] [sem] [psem]
Uwaga! Nie należy używać -a jeśli nie jest się pewnym jaka będzie reakcja oprogramowania używającego zasobów, na brakujące obiekty. Część programów tworzy te zasoby przy starcie i może nie obsługiwać nieoczekiwanego ich zniknięcia.
-M, --shmem-key klucz-pam-dziel
-m, --shmem-id id-pam-dziel
-x, --posix-shmem nazwa
-Q, --queue-key klucz-komunik
-q, --queue-id id-komunik
-y, --posix-mqueue nazwa
-S, --semaphore-key klucz-semafora
-s, --semaphore-id id-semafora
-z, --posix-semaphore nazwa
-h, --help
-V, --version
UWAGI¶
W swojej pierwszej implementacji linuksowej, ipcrm używało przestarzałej składni pokazanej w drugim wierszu SKŁADNI. Od tego czasu została dodana funkcjonalność obecna w innych implementacjach *niksowych, mianowicie możliwość usuwania zasobów przez podanie klucza (a nie tylko identyfikatora) oraz zgodność składni polecenia. Dla zachowania wstecznej zgodności poprzednia składnia jest wciąż obsługiwana.
ZOBACZ TAKŻE¶
ipcmk(1), ipcs(1), lsipc(1), msgctl(2), mq_unlink(3), msgget(2), semctl(2), semget(2), sem_unlink(3), shmctl(2), shmdt(2), shmget(2), shm_unlink(3), ftok(3), sysvipc(7)
ZGŁASZANIE BŁĘDÓW¶
Problemy należy zgłaszać w systemie śledzenia błędów <https://github.com/util-linux/util-linux/issues>.
DOSTĘPNOŚĆ¶
Polecenie ipcrm jest częścią pakietu util-linux, który można pobrać ze strony Archiwum jądra Linux <https://www.kernel.org/pub/linux/utils/util-linux/>.
2025-03-19 | util-linux 2.41 |