exFAT 文件系统用户空间实用程序,包含用于在 linux 系统中创建、修复和调试 exfat 文件系统的所有标准实用程序,支持fsck、mkfs等。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 3 个月前 | ||
| 4 年前 | ||
| 1 年前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 3 个月前 |
以下内容由 AI 翻译,如有问题请 点此提交 issue 反馈
exfatprogs 简介
随着新的 exfat 文件系统合并入 linux-5.7 内核,exfatprogs 应运而生,这是一套官方的用户空间工具,包含了在 Linux 系统中创建、修复和调试 exfat 文件系统的所有标准工具。exfatprogs 的目标是提供与 Windows 中 exfat 工具相媲美的高性能与品质。此软件遵循 GNU 通用公共许可证第二版。
编译 exfatprogs
安装必需的依赖包:
For Ubuntu:
sudo apt-get install autoconf libtool pkg-config
For Fedora, RHEL:
sudo yum install autoconf automake libtool
构建步骤:
cd into the exfatprogs directory:
./autogen.sh
./configure
make
make install
使用 exfatprogs 工具集
- mkfs.exfat:
Build a exfat filesystem on a device or partition(e.g. /dev/hda1, dev/sda1).
Usage example:
1. No option(default) : cluster size adjustment as per device size, quick format.
mkfs.exfat /dev/sda1
2. To change cluster size(KB or MB or Byte) user want
mkfs.exfat -c 1048576 /dev/sda1
mkfs.exfat -c 1024K /dev/sda1
mkfs.exfat -c 1M /dev/sda1
3. For full format(zero out)
mkfs.exfat -f /dev/sda1
4. For set volume label, use -l option with string user want.
mkfs.exfat -L "my usb" /dev/sda1
5. To change boundary alignment(KB or MB or Byte) user want
mkfs.exfat -b 16777216 /dev/sda1
mkfs.exfat -b 16384K /dev/sda1
mkfs.exfat -b 16M /dev/sda1
- fsck.exfat:
Check the consistency of your exfat filesystem and optionally repair a corrupted device formatted by exfat.
Usage example:
1. check the consistency.
fsck.exfat /dev/sda1
2. repair a corrupted device and create files in /LOST+FOUND, which have clusters allocated but not belonged to any files when reparing the device.
fsck.exfat -p -s /dev/sda1
3. repair a corrupted device in the same way above, but answering yes to all questions.
fsck.exfat -y -s /dev/sda1
- tune.exfat:
Adjust tunable filesystem parameters on an exFAT filesystem
Usage example:
1. print current volume label.
tune.exfat -l /dev/sda1
2. set new volume label.
tune.exfat -L "new label" /dev/sda1
3. print current volume serial.
tune.exfat -i /dev/sda1
4. set new volume serial.
tune.exfat -I 0x12345678 /dev/sda1
- exfatlabel:
Get or Set volume label or serial
Usage example:
1. get current volume label.
exfatlabel /dev/sda1
2. set new volume label.
exfatlabel /dev/sda1 "new label"
3. get current volume serial.
exfatlabel -i /dev/sda1
4. set new volume serial.
exfatlabel -i /dev/sda1 0x12345678
- dump.exfat:
Show on-disk information
Usage example:
dump.exfat /dev/sda1
- exfat2img:
Dump metadata of an exFAT filesystem
Usage example:
exfat2img -o sda1.dump /dev/sda1
性能基准测试
我们对 Samsung 64GB Pro 微型SDXC UHS-I Class 10 存储卡进行了一些 fsck 实现的测试和比较,该存储卡已填充至 35GB,包含 9948 个目录和 16506 个文件,由 fsstress 创建。
每次测试的执行时间差异非常小。
| 实现 | 版本 | 执行时间(秒) |
|---|---|---|
| exfatprogs fsck | 1.0.4 | 11.561 |
| Windows fsck | Windows 10 1809 | 11.449 |
| exfat-fuse fsck | 1.3.0 | 68.977 |
反馈提交
如果您遇到任何问题,请创建 问题 或联系 Namjae Jeon 和 Hyunchul Lee。我们也欢迎您的 贡献。
贡献者信息
- 请确保您的 pull request 基于分支
exfat-next。 - 请确保在您的提交中添加 'Signed-Off' 信息(例如使用
git commit --signoff)。 - 请使用内核开发工具脚本 checkpatch 检查您的代码贡献。