@nanobot248/linux-dedupe
v0.1.0
Published
Provides wrapper methods for FIDEDUPERANGE ioctl on linux, allowing to deduplicate file ranges.
Maintainers
Readme
Linux file data deduplication for Node.js
Linux VFS provides the FIDEDUPERANGE ioctl to deduplicate byte ranges in multiple files.
This package provides facilities for calling this ioctl.
Usage
The package exports the class Deduplicator. For now, this class only provides a single method called
dedupe, which is able to deduplicate a single byte range in two files.
import * as fs from "fs";
import { Deduplicator, getStatusInfo } from "@nanobot248/linux-dedupe";
const fd1 = fs.openSync("/path/to/file1").fd;
const off1 = 0;
const len1 = 1024 * 1024;
const fd2 = fs.openSync("/path/to/file2").fd;
const off2 = 0;
const deduplicator = new Deduplicator();
deduplicator.dedupe(fd1, off1, len1, fd2, off2).then((result) => {
console.log("result:", result);
console.log("status: " + getStatusInfo(result.status));
}).catch((err) => {
console.error("error:", err);
});