Man Linux: Main Page and Category List


       ipcrm - remove a message queue, semaphore set or shared memory id


       ipcrm [ -M key | -m id | -Q key | -q id | -S key | -s id ] ...

       deprecated usage

       ipcrm {shm|msg|sem} id...


       ipcrm  removes  System  V  interprocess 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

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


       -M shmkey
              removes the shared memory segment created with shmkey after  the
              last detach is performed.

       -m shmid
              removes  the shared memory segment identified by shmid after the
              last detach is performed.

       -Q msgkey
              removes the message queue created with msgkey.

       -q msgid
              removes the message queue identified by msgid.

       -S semkey
              removes the semaphore created with semkey.

       -s semid
              removes the semaphore identified by semid.

       The details of the removes are described in msgctl(2),  shmctl(2),  and
       semctl(2).  The identifiers and keys may be found by using ipcs(1).


       In  its  first  Linux  implementation, ipcrm used the deprecated syntax
       shown  in  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.


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


       The ipcrm command is part of the util-linux-ng package and is available