| .\" Copyright 2002 Andre C. Mazzone (linuxdev@karagee.com) |
| .\" May be distributed under the GNU General Public License |
| .TH IPCRM "1" "July 2014" "util-linux" "User Commands" |
| .SH NAME |
| ipcrm \- remove certain IPC resources |
| .SH SYNOPSIS |
| .B ipcrm |
| [options] |
| .sp |
| .B ipcrm |
| .RB { shm | msg | sem } |
| .IR id ... |
| .SH DESCRIPTION |
| .B ipcrm |
| removes System V inter-process communication (IPC) objects |
| and associated data structures from the system. |
| In order to delete such objects, you must be superuser, or |
| the creator or owner of the object. |
| .PP |
| System V IPC objects are of three types: shared memory, |
| message queues, and semaphores. |
| Deletion of a message queue or semaphore object is immediate |
| (regardless of whether any process still holds an IPC |
| identifier for the object). |
| A shared memory object is only removed |
| after all currently attached processes have detached |
| .RB ( shmdt (2)) |
| the object from their virtual address space. |
| .PP |
| Two syntax styles are supported. The old Linux historical syntax specifies |
| a three-letter keyword indicating which class of object is to be deleted, |
| followed by one or more IPC identifiers for objects of this type. |
| .PP |
| The SUS-compliant syntax allows the specification of |
| zero or more objects of all three types in a single command line, |
| with objects specified either by key or by identifier (see below). |
| Both keys and identifiers may be specified in decimal, hexadecimal |
| (specified with an initial '0x' or '0X'), or octal (specified with |
| an initial '0'). |
| .PP |
| The details of the removes are described in |
| .BR shmctl (2), |
| .BR msgctl (2), |
| and |
| .BR semctl (2). |
| The identifiers and keys can be found by using |
| .BR ipcs (1). |
| .SH OPTIONS |
| .TP |
| \fB-a\fR, \fB\-\-all\fR [\fBshm\fR] [\fBmsg\fR] [\fBsem\fR] |
| Remove all resources. When an option argument is provided, the removal is |
| performed only for the specified resource types. \fIWarning!\fR Do not use |
| .B \-a |
| if you are unsure how the software using the resources might react to missing |
| objects. Some programs create these resources at startup and may not have |
| any code to deal with an unexpected disappearance. |
| .TP |
| .BR \-M , " \-\-shmem\-key " \fIshmkey |
| Remove the shared memory segment created with |
| .I shmkey |
| after the last detach is performed. |
| .TP |
| .BR \-m , " \-\-shmem\-id " \fIshmid |
| Remove the shared memory segment identified by |
| .I shmid |
| after the last detach is performed. |
| .TP |
| .BR \-Q , " \-\-queue\-key " \fImsgkey |
| Remove the message queue created with |
| .IR msgkey . |
| .TP |
| .BR \-q , " \-\-queue\-id " \fImsgid |
| Remove the message queue identified by |
| .IR msgid . |
| .TP |
| .BR \-S , " \-\-semaphore\-key " \fIsemkey |
| Remove the semaphore created with |
| .IR semkey . |
| .TP |
| .BR \-s , " \-\-semaphore\-id " \fIsemid |
| Remove the semaphore identified by |
| .IR semid . |
| .TP |
| .BR \-V , " \-\-version" |
| Display version information and exit. |
| .TP |
| .BR \-h , " \-\-help" |
| Display help text and exit. |
| .SH NOTES |
| In its first Linux implementation, \fBipcrm\fR used the deprecated syntax |
| shown in the second line of the |
| .BR SYNOPSIS . |
| Functionality present in other *nix implementations of \fBipcrm\fR has since |
| been added, namely the ability to delete resources by key (not just |
| identifier), and to respect the same command-line syntax. For backward |
| compatibility the previous syntax is still supported. |
| .\" .SH AUTHORS |
| .\" Andre C. Mazzone (linuxdev@karagee.com) |
| .\" .br |
| .\" Krishna Balasubramanian (balasub@cis.ohio-state.edu) |
| .SH SEE ALSO |
| .nh |
| .BR ipcmk (1), |
| .BR ipcs (1), |
| .BR msgctl (2), |
| .BR msgget (2), |
| .BR semctl (2), |
| .BR semget (2), |
| .BR shmctl (2), |
| .BR shmdt (2), |
| .BR shmget (2), |
| .BR ftok (3) |
| .SH AVAILABILITY |
| The ipcrm command is part of the util-linux package and is available from |
| .UR https://\:www.kernel.org\:/pub\:/linux\:/utils\:/util-linux/ |
| Linux Kernel Archive |
| .UE . |