---
title: DwarFS - 跨平台、快速、高压缩比文件镜像系统：非常适合压缩打包海量小文件
date: 2024-04-17T04:41:21Z
modified: 2024-04-17T04:41:26Z
permalink: "https://www.appinn.com/dwarfs/"
type: post
status: publish
excerpt: ""
categories:
  - Windows
  - linux
  - macOS
tags:
  - Windows
  - linux
  - macOS
  - 打包
  - 文件系统
featured_image: "https://www.appinn.com/wp-content/uploads/2024/04/Appinn-feature-images-2024-04-17T111404.286.jpg"
author: 青小蛙
timestamp: 2024-04-17T04:41:26Z
---

**DwarFS** 是一个适用于 Linux、Windows 和 macOS 系统的快速、高压缩比**只读文件系统**，它可以打包任何文件与数据，最终得到一个可以跨平台读取的压缩镜像文件，并且访问速度很快，占用的 CPU 资源也很少。非常适合压缩打包海量小文件。@[Appinn](https://www.appinn.com/dwarfs.md)

![DwarFS - 跨平台、快速、高压缩比文件镜像系统：非常适合压缩打包海量小文件](https://www.appinn.com/wp-content/uploads/2024/04/Appinn-feature-images-2024-04-17T111404.286.jpg)

## DwarFS 是什么

DwarFS 是一款专注于去除重复数据，实现高压缩比的只读文件系统。你可以用它保存那些不再需要修改的只读数据，比如：

- 原始记录数据
- 影片、照片等原始素材
- 天文延时摄影
- 备份数据
- 软件分发（系统镜像等）
- 任何不再需要修改的文件

它也非常适合保存海量的小文件。

关于压缩率，青小蛙测试了一下：



| 原始大小 | DwarFS 大小 |  |
| --- | --- | --- |
| .mkv 视频文件 | 24.9GB | 24.1GB |
| 软件安装包 | 110MB | 102MB |
| 系统镜像 | 4.59GB | 4.46GB |
| 29603个文件，3679个文件夹 | 5.09GB | 1.74GB |

![](https://www.appinn.com/wp-content/uploads/2024/04/Appinn-2024-04-17-11.41.36@2x.avif)

最后一个数据出来还是很震惊的，这是发现频道的一款软件（[【开发者自荐】VIVY – Stable Diffusion 桌面应用](https://meta.appinn.net/t/topic/54270)），使用 DwarFS 压缩：

![](https://www.appinn.com/wp-content/uploads/2024/04/Appinn-2024-04-17-11.35.53@2x.avif)

然而并没有完，当你通过 DwarFS 把这个压缩后的镜像挂载到系统之后，它是可以正常运行里面的程序的。

![](https://www.appinn.com/wp-content/uploads/2024/04/Appinn-2024-04-17-11.45.46@2x.avif)

当然并未继续测试只读盘对于程序使用的影响。不过 DwarFS 提供了办法使用 overlayfs 设置 DwarFS 的示例，以便在只读 DwarFS 映像之上创建可写文件系统挂载。这些就留给开发者折腾吧。

## DwarFS 具体用法

DwarFS 原生支持 macOS、Linux，并在 [WinFsp](https://github.com/winfsp/winfsp) 的支持下，可以在 Windows 下使用。

### 创建镜像


mkdwarfs.exe -i c:\tv -o c:\tv.dwarfs


其中，-i 后面是源文件，-o 后面是创建的镜像文件。macOS 与 Linux 相同。

之后，你就会得到一个 tv.dwarfs 镜像文件，这个文件可以随意带走，也可以挂载到系统上。

### 挂载镜像

不同系统方式不同：

#### Windows 系统挂载 dwarfs 镜像


dwarfs.exe c:\tv.dwarfs Z:


将 tv.dwarfs 挂载到系统 Z 盘。

#### macOS & Linux 挂载 dwarfs 镜像


dwarfs ./tv.dwarfs /mnt


将当前目录下的 tv.dwarfs 挂载到 /mnt

挂载速度很快，用起来就与普通文件一样了。

### 卸载镜像

Windows 下，终止命令行就可以了。

macOS 与 Linux 使用常规方式：


umount /mnt


即可卸载镜像。

## 访问速度

根据开发者测试，通过 1 Gb/s 网络连接访问相同的一组数据，dwarfs 镜像比原始文件快了大约 2.5 倍。

---

## 获取

- [GitHub](https://github.com/mhx/dwarfs/)
- [Windows 搬运](https://pan.quark.cn/s/c04598e3b777)（已包含 winfsp-x64.dll）

---

原文：https://www.appinn.com/dwarfs/

## Topics

**分类目录:** [Windows](https://www.appinn.com/category/windows/?output_format=md), [linux](https://www.appinn.com/category/linux/?output_format=md), [macOS](https://www.appinn.com/category/mac/?output_format=md)

**标签:** [打包](https://www.appinn.com/tag/%e6%89%93%e5%8c%85/?output_format=md), [文件系统](https://www.appinn.com/tag/%e6%96%87%e4%bb%b6%e7%b3%bb%e7%bb%9f/?output_format=md)