55e2cb41f2
unused in one go. From the original PR: I've observed that linux apps running under the linuxulator have a habit of leaving behind shared memory segments which are unused, but which eventually cause the system to run out of free segments and these apps will stop working. ipcrm(1) currently only allows removal of unused message queues, shared memory segments and semaphores on an individual basis, or those having a matching (non-zero) key. However it would often be convenient to just do a complete cleanup of everything, usually as root. PR: bin/118292 Submitted by: Callum Gibson <callumgibson@optusnet.com.au> Not reviewed by: grog@ Approved by: grog@
120 lines
3.6 KiB
Groff
120 lines
3.6 KiB
Groff
.\" Copyright (c) 1994 Adam Glass
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. The name of the Author may not be used to endorse or promote products
|
|
.\" derived from this software without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY Adam Glass ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL Adam Glass BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.\""
|
|
.Dd December 12, 2007
|
|
.Dt IPCRM 1
|
|
.Os
|
|
.Sh NAME
|
|
.Nm ipcrm
|
|
.Nd "remove the specified message queues, semaphore sets, and shared segments"
|
|
.Sh SYNOPSIS
|
|
.Nm
|
|
.Op Fl W
|
|
.Op Fl v
|
|
.Op Fl q Ar msqid
|
|
.Op Fl m Ar shmid
|
|
.Op Fl s Ar semid
|
|
.Op Fl Q Ar msgkey
|
|
.Op Fl M Ar shmkey
|
|
.Op Fl S Ar semkey
|
|
.Ar ...
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
utility removes the specified message queues, semaphores and shared memory
|
|
segments.
|
|
These System V IPC objects can be specified by their
|
|
creation ID or any associated key.
|
|
.Pp
|
|
The following options are generic:
|
|
.Bl -tag -width indent
|
|
.It Fl v
|
|
If specified once with -W or with -1 for an object, it will show
|
|
all removed objects.
|
|
If specified twice with -W or with -1 for an objects, it will show
|
|
all removed objects and all failed removals.
|
|
.It Fl W
|
|
Try to wipe all specified message queues, semaphores and shared
|
|
memory segments.
|
|
.It Fl y
|
|
Use the
|
|
.Xr kvm 3
|
|
interface instead of the
|
|
.Xr sysctl 3
|
|
interface to extract the required information.
|
|
If
|
|
.Nm
|
|
is to operate on the running system,
|
|
using
|
|
.Xr kvm 3
|
|
will require read privileges to
|
|
.Pa /dev/kmem .
|
|
.El
|
|
.Pp
|
|
The following options are used to specify which IPC objects will be removed.
|
|
Any number and combination of these options can be used:
|
|
.Bl -tag -width indent
|
|
.It Fl q Ar msqid
|
|
Remove the message queue associated with the ID
|
|
.Ar msqid
|
|
from the system.
|
|
.It Fl m Ar shmid
|
|
Mark the shared memory segment associated with ID
|
|
.Ar shmid
|
|
for removal.
|
|
This marked segment will be destroyed after the last detach.
|
|
.It Fl s Ar semid
|
|
Remove the semaphore set associated with ID
|
|
.Ar semid
|
|
from the system.
|
|
.It Fl Q Ar msgkey
|
|
Remove the message queue associated with key
|
|
.Ar msgkey
|
|
from the system.
|
|
.It Fl M Ar shmkey
|
|
Mark the shared memory segment associated with key
|
|
.Ar shmkey
|
|
for removal.
|
|
This marked segment will be destroyed after the last detach.
|
|
.It Fl S Ar semkey
|
|
Remove the semaphore set associated with key
|
|
.Ar semkey
|
|
from the system.
|
|
.El
|
|
.Pp
|
|
The identifiers and keys associated with these System V IPC objects can be
|
|
determined by using
|
|
.Xr ipcs 1 .
|
|
If the identifier or the key is -1, it will remove all these objects.
|
|
.Sh SEE ALSO
|
|
.Xr ipcs 1
|
|
.Sh HISTORY
|
|
The wiping of all System V IPC objects was first implemented in
|
|
.Fx 6.4 and 7.1.
|
|
.Sh AUTHORS
|
|
The original author was Adam Glass.
|
|
The wiping of all System V IPC objects was thought up by Callum
|
|
Gibson and extended and implemented by Edwin Groothuis.
|