-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fsspec integration #690
Comments
cc @mxmlnkn of ratarmount |
Hi @martindurant, thanks for reaching out! Apologies for the delayed response, I also saw the other thread where Dissect was mentioned and wanted to give an in-depth reply there, but some things came up and I just couldn't get around to it yet. When I have some more time I'd still like to elaborate some of our decisions and goals in further detail there. To give a short response, this looks interesting to us and something we'd be interested in exploring. Could you perhaps give a short overview of the necessary tasks or some API references so we can make an estimate on how much work this would be? FYI, our FUSE implementation isn't flawless (or particularly fast), but it does get used very heavily and seems to be pretty stable overall. |
The fsspec API is essentially https://github.com/fsspec/filesystem_spec/blob/master/fsspec/spec.py#L96 , with various user functions. It is not dissimilar to yours! Indeed, we have some built in implementations for file-based filesystems like libarchive, but nowhere near as comprehensive a set at dissect. The work would be to write a wrapper for a dissect implementation class ( https://github.com/fox-it/dissect.target/blob/main/dissect/target/filesystem.py#L34 ?) to allow fsspec to use it or vice-versa. Going fsspec->dissect would be the route that would allow for your implementation of FUSE on top of our storage implementations. |
I was only recently made aware of this library. Fsspec has some similar concerns, but is primarily used for interacting with remote storage systems, whereas most of the FS-like targets here are local file containers. Would you like to provide a shim such that fsspec.filesystem or fsspec.open can deal with a dissect target filesystem type? It could have a benefit to you, maybe opening a filesystem container file in a remote store.
I am also interested in the FUSE integration. fsspec also has this, but it is flaky, experimental and rarely used. Perhaps the solution here is more robust, and all fsspec filesystem types could be exposed.
The text was updated successfully, but these errors were encountered: