Skip to main content

Module for calling SCSI devices from Python

Project description


python-scsi is a SCSI initiator for python. It contains python classes to create and send SCSI commands to devices accessible via:

These classes also provide interfaces to marshall/unmarshall both CDBs as well as DATA-IN/OUT buffers.


Python-scsi is distributed under LGPLv2.1 Please see the LICENSE file for the full license text.

Getting the sources

The module is hosted at

You can use git to checkout the latest version of the source code using:

$ git clone

It is also available as a downloadable zip archive from:

Building and installing

To build and install from the repository:

python-scsi $ pip install .[iscsi,sgio]

You can avoid installing the optional dependencies by omitting the "extras":

python-scsi $ pip install .

Tools (examples)

The tools directory contains example programs written against the python-scsi API.

An example tool to send INQUIRY commands to a device.

An example tool to operate a SCSI media changer. Similar to, but not as advanced as, the 'mtx' utility.


A mailinglist for python-scsi is available at:!forum/python-scsi

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PYSCSI-2.1.0.tar.gz (75.2 kB view hashes)

Uploaded Source

Built Distribution

PYSCSI-2.1.0-py3-none-any.whl (87.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page