#coreutils #sparse #sparse-file #file-copy #operation

libfs

libfs is a library of file and filesystem operations that is supplementary to std::fs

18 releases

new 0.9.1 Apr 11, 2025
0.8.1 Dec 18, 2024
0.8.0 Oct 28, 2024
0.7.2 Jun 22, 2024
0.5.0 Dec 20, 2023

#1223 in Filesystem

Download history 88/week @ 2024-12-21 66/week @ 2024-12-28 85/week @ 2025-01-04 46/week @ 2025-01-11 63/week @ 2025-01-18 78/week @ 2025-01-25 59/week @ 2025-02-01 76/week @ 2025-02-08 104/week @ 2025-02-15 87/week @ 2025-02-22 79/week @ 2025-03-01 69/week @ 2025-03-08 61/week @ 2025-03-15 43/week @ 2025-03-22 302/week @ 2025-03-29 255/week @ 2025-04-05

673 downloads per month
Used in 2 crates

GPL-3.0-only

48KB
1K SLoC

libfs: Advanced file and fs operations

libfs is a library of file and filesystem operations that is supplementary to std::fs. Current features:

  • High and mid-level functions for creating and copying sparse files.
  • Copying will use Linux copy_file_range where possible, with fall-back to userspace.
  • Scanning and merging extent information on filesystems that support it.
  • File permission copying, including xattrs.

Some of the features are Linux specific, but most have fall-back alternative implementations for other Unix-like OSs. Further support is todo.

libfs is part of the xcp project.

Crates.io doc.rs Github Actions CircleCI

Dependencies

~12–21MB
~413K SLoC