SMARTie
This is a pure-python, 0-dependency library for getting basic disk information such as model, serial number, disk health, temperature, and SMART data. It supports both SCSI/ATA and NVMe devices.
Documentation
Read the getting started guide and API documentation at https://tkte.ch/smartie/.
Installation
SMARTie currently requires Python 3.8 or greater.
pip install smartie
If you want the command line tools, you'll also want to do:
pip install smartie[cli]
FAQ
This library isn't returning any of my drives?
The APIs this library uses to communicate with devices typically require root (on Linux) or administrator (on Windows) access to work.
My drive doesn't work with this library?
Support for drives that don't follow modern standards is still a work in progress. Open an issue.
Library Y does X, can I copy that code?
It depends. This library is available under the MIT license and is a fun side project. I want anyone to be able to use it. Many existing projects are GPL or LGPL, so you need to avoid them when contributing to this project. Instead:
- Use the specifications or vendor documentation whenever possible.
- Use the SG_IO documentation by Danny (https://sg.danny.cz/sg/).
- Use the conversations in mailing lists and bug trackers, while avoiding the code.
Does this library support RAID controllers?
Some RAID/HBA controllers are known to work and others should as well. If you're using a RAID controller, and it doesn't work, open an issue.
| RAID/HBA Adapter | OS under test | SCSI Supported | ATA Supported |
|---|---|---|---|
| Broadcom RAID 9440 | CentOS 8.4 | Yes | Yes |
| Broadcom RAID 9560 | CentOS 8.4 | Yes | Yes |
| Broadcom HBA 9500 | CentOS 8.4 | Yes | Yes |
| ThinkSystem 930 | CentOS 8.4 | Yes | Yes |
| ThinkSystem 940 | CentOS 8.4 | Yes | Yes |
| ThinkSystem 4350 | CentOS 8.4 | Yes | Yes |
| ThinkSystem 5350 | CentOS 8.4 | Yes | Yes |
Only INQUIRY, IDENTIFY and SMART-related commands are tested, and
the tests use the latest driver from vendor support web. If it does not work in
your environment, open an issue. The compatibility should be same as
pydiskcmd. Find the testing methodology here.
ATA, ATAPI, SCSI, NVMe, what?
Acronyms, acronyms everywhere! What does any of this mean?
- ATA: Advanced Technology Attachment.
- ATAPI: AT Attachment Packet Interface.
- SCSI: Small Computer System Interface.
- NVMe: Non-Volatile Memory Express. The standard for connecting "modern" solid-state drives to a computer, typically through PCI-e.
- SATA: Serial ATA.
- PATA: Parallel ATA.
- S.M.A.R.T: Self-Monitoring, Analysis, and Reporting Technology. A standard for hard drives and solid-state drives to report their health and status.
Metadata
Release files for smartie 4.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| smartie-4.0.4.tar.gz | 333.8 kB | Without provenance | Details for smartie-4.0.4.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| smartie-4.0.4-py3-none-any.whl | Python 3 | none | any | Details for smartie-4.0.4-py3-none-any.whl |
Total release size: 369.2 kB
Release files / smartie-4.0.4.tar.gz
| Download URL | smartie-4.0.4.tar.gz |
|---|---|
| Size | 333.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
98162893c16b50379b2d4b9479587238f4305175c38947faf1e6c1bf6606d4e6
|
|
BLAKE2b-256 checksum How to use checksums |
e3e9f4883d6027927e41d22c95e47922290e59850b4d393fab45830dd2f07d00
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.11.10
|
Release files / smartie-4.0.4-py3-none-any.whl
| Download URL | smartie-4.0.4-py3-none-any.whl |
|---|---|
| Size | 35.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9e6732362db881916ed05315b8951cae74f5a36cff8f457edcb4cbfc2bfea33d
|
|
BLAKE2b-256 checksum How to use checksums |
c0cf3a051fb4940569d52f4d3c719a5a97536069b1cf96c4337c8b917b589cb9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.11.10
|
Security for smartie 4.0.4
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.