SG\_PREVENT(8) SG3\_UTILS SG\_PREVENT(8)

# [NAME](#NAME)

sg\_prevent - send SCSI PREVENT ALLOW MEDIUM REMOVAL command

# [SYNOPSIS](#SYNOPSIS)

**sg\_prevent** \[*--allow*] \[*--help*] \[*--prevent=PC*] \[*--verbose*] \[*--version*] *DEVICE*

# [DESCRIPTION](#DESCRIPTION)

Sends a SCSI PREVENT ALLOW MEDIUM REMOVAL command to *DEVICE*. The default action of this utility is to prevent the removing or ejecting of the medium from a drive. This is done by ignoring the SCSI START STOP UNIT command (see sg\_start) and ignoring the eject button on the drive when the user presses it. Drives that hold removable disks, tape cartridges or cd/dvd media typically implement this command. The definition of the "prevent" codes for this command differ between disks and tapes (covered by SBC-3 and SSC-3) and cd/dvd drives (covered by MMC-5). The "prevent codes" described here are from MMC-5.

# [OPTIONS](#OPTIONS)

Arguments to long options are mandatory for short options as well.

[**-a**, **--allow**](#a)

allow medium removal. This is equivalent to setting to '--prevent=2'. Cannot be used with *--prevent=PC* option (i.e. either use no options (hence prevent removal), this option or *--prevent=PC*).

[**-h**, **--help**](#h)

output the usage message then exit.

[**-p**, **--prevent**=*PC*](#p)

where *PC* is a prevent code value. Defined values are: 0 allows removal, 1 prevents removal (default), 2 allows persistent removal while 3 prevents persistent removal. "Persistent" in this context means that the initiator (port) that successfully uses code 3 blocks other initiators (ports) from allowing removal. A "persistent prevent" state can be cleared by the owner allowing persistent removal (code 2) or a power cycle (or anything that resets the device (LU)) or some special commands (e.g. various service actions of Persistent Reserve Out, see SPC-3).

[**-v**, **--verbose**](#v)

increase the level of verbosity, (i.e. debug output).

[**-V**, **--version**](#V)

print the version string and then exit.

# [EXIT STATUS](#EXIT_STATUS)

The exit status of sg\_prevent is 0 when it is successful. Otherwise see the [sg3\_utils(8)](/man/enterprise-packages/sg3-utils/sg3_utils.8) man page.

# [AUTHORS](#AUTHORS)

Written by Douglas Gilbert.

# [REPORTING BUGS](#REPORTING_BUGS)

Report bugs to &lt;dgilbert at interlog dot com&gt;.

# [COPYRIGHT](#COPYRIGHT)

Copyright © 2004-2012 Douglas Gilbert  
This software is distributed under a BSD-2-Clause license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

# [SEE ALSO](#SEE_ALSO)

**sg\_start(sg3\_utils), sg\_persist(sg3\_utils)**

November 2012 sg3\_utils-1.35

---

Document: sg_prevent(8) from sg3-utils 1.49-r3 (Chainguard OS)
Source: https://github.com/doug-gilbert/sg3_utils.git
