我的 proxmox 安装中有一个由 4 个 hdd(2 tb)组成的 zfs 池(raid10)。
今天我尝试用零数据覆盖根分区上的可用内存。实际上,我写入了超过 12TB 且没有任何错误
-rw-r--r-- 1 root root 5,2T 23. Nov 22:40 file1
-rw-r--r-- 1 root root 4,1T 23. Nov 23:01 file2
-rw-r--r-- 1 root root 2,9T 23. Nov 23:29 file3
空间根本没有改变,而且似乎我能够在我的磁盘上永久地写入。
df -h
Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf
udev 16G 0 16G 0% /dev
tmpfs 3,2G 1,2M 3,2G 1% /run
rpool/ROOT/pve-1 3,6T 14G 3,5T 1% /
tmpfs 16G 46M 16G 1% /dev/shm
tmpfs 5,0M 0 5,0M 0% /run/lock
rpool 3,5T 128K 3,5T 1% /rpool
rpool/ROOT 3,5T 128K 3,5T 1% /rpool/ROOT
rpool/data 3,5T 128K 3,5T 1% /rpool/data
/dev/fuse 128M 32K 128M 1% /etc/pve
tmpfs 3,2G 0 3,2G 0% /run/user/0
zpool list -v
NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
rpool 3.62T 14.0G 3.61T - - 7% 0% 1.00x ONLINE -
mirror 1.81T 7.05G 1.81T - - 7% 0.37% - ONLINE
ata-HGST_HUS724020ALA640_PN1134P6KR3SVW-part3 - - - - - - - - ONLINE
ata-HGST_HUS724020ALA640_PN1134P6HGRGXN-part3 - - - - - - - - ONLINE
mirror 1.81T 6.96G 1.81T - - 7% 0.37% - ONLINE
ata-HGST_HUS724020ALA640_PN1134P6HH2TUN-part3 - - - - - - - - ONLINE
ata-HGST_HUS724020ALA640_PN1134P6JJTK4S-part3 - - - - - - - - ONLINE
zpool list
NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
rpool 3.62T 14.0G 3.61T - - 7% 0% 1.00x ONLINE -
ZfS 对我来说很新,但无论如何这有点奇怪。我或系统如何知道源是否有可用空间?重新启动并没有改变任何事情。
抱歉,Linux 命令中使用了德语。
有人可以向我解释一下这个行为吗?或者这是一个错误?
问候
答案1
您可能启用了压缩功能,这会将您写入的任何数量的零转换为单个 512 字节大小的文件。一个简单的文件du -hs file1
应该会显示其实际分配的大小。