| ipcrm(1) - phpMan
IPCRM(1) User Commands IPCRM(1)
NAME
ipcrm - remove certain IPC resources
SYNOPSIS
ipcrm [options]
ipcrm {shm|msg|sem} id...
DESCRIPTION
ipcrm removes System V interprocess communication (IPC) objects and associated data struc‐
tures from the system. In order to delete such objects, you must be superuser, or the
creator or owner of the object.
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 (shmdt(2)) the object from
their virtual address space.
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.
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').
OPTIONS
-M, --shmem-key shmkey
Remove the shared memory segment created with shmkey after the last detach is per‐
formed.
-m, --shmem-id shmid
Remove the shared memory segment identified by shmid after the last detach is per‐
formed.
-Q, --queue-key msgkey
Remove the message queue created with msgkey.
-q, --queue-id msgid
Remove the message queue identified by msgid.
-S, --semaphore-key semkey
Remove the semaphore created with semkey.
-s, --semaphore-id semid
Remove the semaphore identified by semid.
-a, --all [shm] [msg] [sem]
Remove all resources. When an option argument is provided, the removal is per‐
formed only for the specified resource types. Warning! Do not use -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.
The details of the removes are described in shmctl(2), msgctl(2), and semctl(2). The
identifiers and keys can be found by using ipcs(1).
NOTES
In its first Linux implementation, ipcrm used the deprecated syntax shown in the second
line of the SYNOPSIS. Functionality present in other *nix implementations of ipcrm 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.
SEE ALSO
ipcs(1), ipcmk(1), msgctl(2), msgget(2), semctl(2), semget(2), shmctl(2), shmdt(2),
shmget(2), ftok(3)
AVAILABILITY
The ipcrm command is part of the util-linux package and is available from Linux Kernel
Archive ⟨ftp://ftp.kernel.org/pub/linux/utils/util-linux/⟩.
util-linux July 2014 IPCRM(1)
|