Provided by: util-linux_2.37.2-4ubuntu3.4_amd64 bug


       ipcrm - remove certain IPC resources


       ipcrm [options]

       ipcrm [shm|msg|sem] ID ...


       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.

       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').

       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).


       -a, --all [shm] [msg] [sem]
           Remove all resources. When an option argument is provided, the removal is performed
           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.

       -M, --shmem-key shmkey
           Remove the shared memory segment created with shmkey after the last detach is

       -m, --shmem-id shmid
           Remove the shared memory segment identified by shmid after the last detach is

       -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.

       -V, --version
           Display version information and exit.

       -h, --help
           Display help text and exit.


       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.


       ipcmk(1), ipcs(1), msgctl(2), msgget(2), semctl(2), semget(2), shmctl(2), shmdt(2),
       shmget(2), ftok(3), sysvipc(7)


       For bug reports, use the issue tracker at


       The ipcrm command is part of the util-linux package which can be downloaded from Linux
       Kernel Archive <>.