--- id: pysmb version: "1.2.15" license: zlib/libpng license_treatment: permissive maintenance: active --- # pysmb — pysmb is an experimental SMB/CIFS library written in Python to support file sharing between Windows and Linux machines License: permissive · Maintenance: active · Downloads: 2.9M/mo ## What it is and what it does pysmb is a pure-Python SMB/CIFS client library that lets you connect to and interact with Windows file shares and Samba folders from Python code. It handles the protocol negotiation and file operations needed to list directories, read files, write files, and manage shares on remote SMB servers—useful for cross-platform automation, backup scripts, and applications that need to integrate with Windows network infrastructure. The library depends on pyasn1 for ASN.1 encoding and tqdm for progress indication. It is classified as Production/Stable and has been maintained since 2011, though it is labeled experimental in its description. The package supports both Windows and POSIX systems and carries no known security vulnerabilities. Use it for: - Automate file transfers to and from Windows network shares in Python scripts or applications. - Build cross-platform backup or synchronization tools that access Samba or Windows file servers. - List and inspect remote SMB share contents programmatically without mounting the share locally. - Integrate Windows file sharing into headless Linux or cloud-based Python applications. - Test SMB/CIFS client behavior in CI/CD pipelines against mock or real SMB servers. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. pysmb implements the SMB/CIFS protocol to let Python applications read, write, and transfer files to and from Windows file shares and Samba folders. Yes, if you need SMB/CIFS file access from Python and can tolerate the experimental label. Low install friction, permissive license, active maintenance, and no known vulnerabilities make it a reasonable choice. Verify that the protocol coverage and Python version support match your requirements before committing to production use. ## Install pip install pysmb uv add pysmb poetry add pysmb ## Installing pysmb Before you install: Low install friction with only 2 runtime dependencies (pyasn1, tqdm). Active maintenance with a release 6 days ago signals ongoing support. License in practice: Licensed under zlib/libpng, a permissive license that allows commercial and private use with minimal restrictions—suitable for most projects. Quickstart: pip install pysmb import pysmb # Connect to an SMB server with credentials and client name # then list or transfer files on the remote share Requires network access to an SMB/CIFS server; valid credentials and firewall rules are prerequisites for file operations. Verify before relying: - Whether Python 2 support (classifiers list 2.4–2.7) is still functional or merely legacy metadata. - Current test coverage and whether experimental status reflects incomplete protocol implementation. - Performance characteristics and suitability for high-throughput or large-file scenarios. - Specific API surface and which SMB/CIFS operations are fully implemented versus partial. ## Package facts - License: zlib/libpng (permissive) - Python support: unspecified - Install friction: low - Maintenance: active - Downloads: 2.9M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags smb file sharing python, cifs client library, windows network shares, samba file access, network file transfer python, smb protocol implementation, cross-platform file sharing, file-sharing, network-protocol, windows-interop [View on SkillFed](https://skillfed.io/packages/pysmb) · [View on PyPI](https://pypi.org/project/pysmb/)