关于 veracrypt 和 ntfs 的疑问,预分配空间问题?

2022-07-10 23:31:16 +08:00
 7RTDKSAK

如题,使用 veracrypt 的虚拟加密卷,格式化为 ntfs

如果我想向卷内写入 100GiB 数据,显然在创建卷的时候不能只预分配 100GiB 的空间,因为 ntfs 本身的元数据还要占用一部分卷空间

那么我应该如何计算预分配空间的大小,保证下一步能够写入 100GiB 的数据呢?

更进一步,其它常用文件系统又该如何计算呢?

1054 次点击
所在节点    问与答
13 条回复
zhlxsh
2022-07-11 00:04:11 +08:00
以我 AIX 小型机的经验说一点建议:首先你实际测试一下得出一个损耗的比例如 2%,实际计算就要比这个比例大一点点,使划分好之后分区内预留一部分空间日后紧急情况扩容。
假如实际损耗为 2%,我们按 5%计算。现在想写 100G 空间的数据,起码需卷的大小是 106 ,然后格式化出来一个 100G 的分区,还剩约 3G 的空间可供日后扩容。
大概是这样,如有错误还请赐教
7RTDKSAK
2022-07-11 00:23:54 +08:00
@zhlxsh

我也是这样想,实际测试一下确实比较直观

但是还有一个问题,ntfs 本身的元数据所占用的空间,是在格式化之后就一次性分配完了,还是根据写入数据量的增减而变化呢?

如果是前者,测试就很简单
如果是后者,还要真地往虚拟卷写入 100GiB 数据才能测试,而且不同地计划写入量还要分别测试,很麻烦
ysc3839
2022-07-11 04:10:27 +08:00
不够了扩容即可
7zlid
2022-07-11 04:54:06 +08:00
如果是只有几个
那预留 20%甚至百分之百都可以接受啊
现在硬盘非常便宜
kokutou
2022-07-11 07:22:13 +08:00
元数据是变化的。
你下个 DiskGenius ,菜单里勾选显示 NTFS 元文件。
对比看看小文件多的 c 盘和存电影的盘就知道了。
7RTDKSAK
2022-07-11 08:44:05 +08:00
@ysc3839 想后期扩容,就必须使用稀疏卷,而稀疏卷一是降低读写性能,二是降低安全性
@x128akp539 原计划拿来加密数据然后备份到网盘的,这种虚拟容器的形式可以直接挂载就读写,但是存在预分配空间的难题和浪费---与之作为对比,像压缩包 /gnupg/openssl 这种加密数据流的形式,读写之前又要层层剥皮,中间文件也是巨大地浪费

@kokutou 了解,谢谢!我测试了不同容量,确实元数据占比波动太大了,我甚至找不到规律

已经放弃这方案了,再继续找,cppcryptfs 和 cryptomator 这俩货,功能满意,但是一个崩溃一个读写太太太慢,劝退
ysc3839
2022-07-11 10:11:37 +08:00
@7RTDKSAK 不是稀疏卷也能扩容吧?
ysc3839
2022-07-11 10:30:35 +08:00
@7RTDKSAK 自己试了下,用 vhdx 硬盘镜像在创建时选择预分配,后续也可以扩容。
7RTDKSAK
2022-07-11 12:14:13 +08:00
@ysc3839 我才找到哈哈
7zlid
2022-07-11 13:50:56 +08:00
试试 vhdx 和 7z 吧
也挺好用的
7RTDKSAK
2022-07-11 13:52:26 +08:00
@x128akp539 7zip 候选,vhdx 不是一样有预分配空间的问题吗
7zlid
2022-07-11 14:05:08 +08:00
@7RTDKSAK 开启 hyperv
有个命令可以压缩,但是效果做不到特别好,而且麻烦
适合一次性不修改的备份
7RTDKSAK
2022-07-11 14:37:55 +08:00
@x128akp539 我试试!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/865319

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX