PyVFS is a simple pure Python VFS library. It consists of several layers, allowing to use different low-level protocol implementations. Now you can choose between 9p (9p2000.u) and FUSE (you should have python-py9p or python-fuse installed).
The library has several options to control access to the filesystem, from FUSE restrictions to PKI client authentication in 9p2000 protocol. You can mount your FS with TCP/IP or UNIX sockets, or simply browse it with 9p clients without mounting.
The simplest example. Environment variables:
export PYVFS_PROTO=9p export PYVFS_ADDRESS=/tmp/socket
Your script:
# import server from pyvfs.utils import Server # create it srv = Server() # start it in foreground srv.run()
Client side, 9p + UNIX socket:
$ sudo mount -t 9p -o trans=unix /tmp/socket /mnt
ObjectFS
ObjectFS (pyvfs.objectfs) is a library that allows you to export your Python objects on a dynamic filesystem. ObjectFS integration is extremely simple and engages only the decorator import and usage. The developer should not care about almost any of fs-related issues. Objects of the decorated classes will automatically appear as file trees on a dynamic filesystem with read/write access.
Example. Environment variables:
export PYVFS_PROTO=fuse export PYVFS_MOUNTPOINT=~/mnt
Your script:
# simply import the library in your code
from pyvfs.objectfs import export
# decorate a class
@export
class MyClass(object):
some code
Client side (already mounted!):
# ls -l ~/mnt
PyVFS
Also you can write your own applications with PyVFS. E.g., one can utilize file I/O as an RPC interface, or use a dynamic filesystem for runtime service configuration.
More details in the documentation and examples.
Links
Changes
0.2.9 – Mesoarchean
unicode literals fixed
0.2.8 – Paleoarchean
directory listing fixes
0.2.7 – Eoarchaean
support authentication options
support setuid, setgid, sticky bits
0.2.6 – Hadean
initial pypi release
Metadata
Release files for objectfs 0.2.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| objectfs-0.2.9.tar.gz | 28.6 kB | Details |
Release files / objectfs-0.2.9.tar.gz
| Download URL | objectfs-0.2.9.tar.gz |
|---|---|
| Size | 28.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
969a577e653dd45c3d224e893786b59fe091064ba3e14d93094561098a53b676
|
|
BLAKE2b-256 checksum How to use checksums |
bdb13439281a92ce17e2f932500692afab22cf284de72b030b369f83598df91b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |