xrootd
eXtended ROOT daemon
What it is and what it does
XRootD is a Python interface to the XRootD distributed filesystem protocol, originally developed for High Energy Physics data access at SLAC and CERN. It enables transparent, fault-tolerant access to massive datasets stored across multiple remote storage resources—disk servers, tape libraries, and remote sites—regardless of underlying storage technology or location. The package wraps the core XRootD C++ client library, allowing Python applications to read, write, and manage files in XRootD clusters and federated storage systems.
The package is used primarily in scientific computing and large-scale data infrastructure, powering systems like EOS distributed filesystem and global CDN deployments. It supports multi-protocol communications, authentication, authorization, and integration with other storage systems. Installation via pip provides the Python bindings; the underlying XRootD client libraries may need to be installed separately through system package managers or conda.
Use it for:
- Access large datasets stored in XRootD clusters at research institutions like CERN or SLAC without managing protocol details.
- Build Python data pipelines that read from or write to EOS or other XRootD-backed storage systems.
- Integrate XRootD file operations into scientific analysis workflows and batch processing jobs.
- Implement fault-tolerant remote file transfers across geographically distributed storage nodes.
- Query and manage files in erasure-coded or replicated storage configurations via Python.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Python bindings to XRootD, a high-performance distributed filesystem client for accessing data across remote storage resources with fault tolerance and transparent protocol handling.
Yes, if you need to access XRootD storage systems from Python and have the underlying XRootD client libraries available on your system. The package is actively maintained, has no known vulnerabilities, and is well-suited for scientific and high-performance computing workloads. Install friction is moderate due to compiled bindings and external dependencies, but wheels are available for common platforms and Python versions.
Install
xrootd on PyPI
pip
pip install xrootduv
uv add xrootdpoetry
poetry add xrootdInstalling xrootd
Before you install
Medium install friction due to compiled C++ bindings; wheels are available for modern Python versions on macOS and Linux, but the package requires the underlying XRootD daemon or client libraries to be present on the system.
License in practice
Licensed under LGPL-3.0-or-later (copyleft); derivative works and modifications must be distributed under compatible terms, and source code must be made available to users.
Quickstart
pip install xrootd
import XRootD.client as xrd
with xrd.File() as f:
status, response = f.open('root://server.example.com//path/to/file')
if status.ok:
status, data = f.read()
The XRootD client library must be installed on your system (via dnf, apt, brew, or conda) before the Python bindings can function.
Verify before relying
- Whether the XRootD client library must be installed separately on the system before the Python bindings can function.
- Specific authentication and authorization mechanisms supported by the Python API.
- Performance characteristics and throughput limits for typical use cases.
- Whether pip install provides a complete working installation or requires additional system-level setup.
Package facts
| License | LGPL-3.0-or-later (copyleft) |
| Python support | not specified |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 3 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,191,186/month — #4,240 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: xrootd-6.1.1-cp310-cp310-macosx_15_0_arm64.whl; xrootd-6.1.1-cp310-cp310-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp310-cp310-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp310-cp310-manylinux_2_28_x86_64.whl; xrootd-6.1.1-cp311-cp311-macosx_15_0_arm64.whl; xrootd-6.1.1-cp311-cp311-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp311-cp311-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp311-cp311-manylinux_2_28_x86_64.whl; xrootd-6.1.1-cp312-cp312-macosx_15_0_arm64.whl; xrootd-6.1.1-cp312-cp312-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp312-cp312-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp312-cp312-manylinux_2_28_x86_64.whl; xrootd-6.1.1-cp313-cp313-macosx_15_0_arm64.whl; xrootd-6.1.1-cp313-cp313-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp313-cp313-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp313-cp313-manylinux_2_28_x86_64.whl; xrootd-6.1.1-cp314-cp314-macosx_15_0_arm64.whl; xrootd-6.1.1-cp314-cp314-macosx_15_0_x86_64.whl; xrootd-6.1.1-cp314-cp314-manylinux_2_28_aarch64.whl; xrootd-6.1.1-cp314-cp314-manylinux_2_28_x86_64.whl
Keywords: XRootD, network filesystem
Tags
More Distributed Computing packages
gRPC Python is an HTTP/2-based RPC framework…
permissive · top 100 on PyPI
execnetexecnet lets you spawn and communicate with…
permissive · top 1,000 on PyPI
cloudpickleCloudpickle extends Python's standard pickle…
permissive · top 1,000 on PyPI
smart-openProvides a unified, open()-compatible Python…
permissive · top 1,000 on PyPI
portalockerPortalocker provides cross-platform file…
permissive · top 1,000 on PyPI
rayRay is a distributed computing framework that…
permissive · top 1,000 on PyPI
fsspec-xrootdAdds XRootD storage support to fsspec, enabling…
permissive · top 5,000 on PyPI
rucio-clientsRucio-clients provides command-line and…
permissive · top 15,000 on PyPI
uproot3Reads and writes ROOT files (the data format…
permissive · top 15,000 on PyPI
xattrxattr is a Python wrapper for reading and…
permissive · top 5,000 on PyPI
uprootUproot reads and writes ROOT files (the data…
permissive · top 5,000 on PyPI
fatfs-ngfatfs-ng wraps ChaN's FatFS library to create,…
permissive · top 5,000 on PyPI
systemd-pythonProvides Python bindings to systemd's native C…
copyleft · top 5,000 on PyPI
scantreeRecursively scans directories with flexible…
permissive · top 5,000 on PyPI
certifi-linuxRedirects certifi's certificate lookup to use…
permissive · top 15,000 on PyPI