#directory #read-write #devices #symlink #ext2 #symbolic-links

nightly no-std efs

An OS and architecture independent implementation of some Unix filesystems in Rust

6 releases

0.4.0 Aug 22, 2024
0.3.3 Aug 3, 2024
0.3.2 Apr 28, 2024
0.2.0 Oct 23, 2023
0.1.0 Sep 28, 2023

#1046 in Filesystem

GPL-3.0 license

445KB
7K SLoC

crates.io-badge license-badge

Extended fs

An OS and architecture independent implementation of some Unix filesystems in Rust.

[!WARNING] This crate is provided as is and do not offer any guaranty. It is still in early development so bugs are excepted to occur. If you find one, please report it at https://codeberg.org/RatCornu/efs/issues. In all cases, please do NOT use this library for important data, and make sure to backup your data before using it.

Features

  • no_std support (enabled by default).

  • General interface for UNIX filesystems.

  • read/write operations on regular files, directories and symbolic links.

  • Compatible with any device implementing Read + Write + Seek.

  • Fully documented.

Supported filesystems

If you want more supported filesystems, do not hesitate to open an issue on https://codeberg.org/RatCornu/efs/issues.

Usage

Add this to your Cargo.toml:

[dependencies]
efs = "0.4"

See examples on https://docs.rs/efs in src/lib.rs.

Features

  • ext2: enable the ext2 filesystem support

  • std: enable the features depending on the standard library

By default, only the ext2 feature is set.

License

Licensed under the GNU General Public License v3.0 which can be found here.

Dependencies

~3–5MB
~88K SLoC