IPCRM(1)                         User Commands                        IPCRM(1)

       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 identi-
       fier 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 spec-
       ifies  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 spec-
       ified  either by key or by identifier (see below).  Both keys and iden-
       tifiers 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 performed.

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

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

       The  ipcrm  command  is part of the util-linux package and is available
       from Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-

util-linux                         July 2014                          IPCRM(1)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2022 Hurricane Electric. All Rights Reserved.