Re-exports
pub use config::DedupeConfig;
pub use config::GroupConfig;
pub use config::Priority;
Modules
- Main program configuration.
- Logging and progress reporting.
- Fast, concurrent, lockless progress bars.
- Output formatting.
Structs
- Provides information about the number of deduplicated files and reclaimed disk space
- Finds disk devices by file paths
- Error reported by top-level fclones functions
- A group of files that have something in common, e.g. same size or same hash
- Useful for identifying files in presence of hardlinks
- Represents length of data, in bytes. Provides more type safety and nicer formatting over using a raw u64.
- A subgroup of identical files, typically smaller than a
FileGroup
. A subgroup is formed by files sharing the same path prefix, e.g. files on the same volume. In terms of file deduplication activities, a subgroup is an atomic entity - all files in a subgroup must be either dropped or kept. - Memory-efficient file path representation.
- Convenience struct for holding a path to a file and its metadata together
Enums
- Defines what to do with redundant files
Functions
- Generates a list of commands that will remove the redundant files in the groups provided by the
groups
iterator. - Groups identical files together by 128-bit hash of their contents. Depending on filtering settings, can find unique, duplicate, over- or under-replicated files.
- Prints a script generated by
dedupe
to stdout. - Runs a deduplication script generated by
dedupe
. - Sort files so that files with highest priority (newest, most recently updated, recently accessed, etc) are sorted last. In cases when metadata of a file cannot be accessed, an error message is pushed in the result vector and such file is placed at the beginning of the list.
- Writes the list of groups to a file or the standard output.