を使用してzpool
空き容量を一覧表示すると、空き容量は270 GB以上と表示されますが、実際の空き容量(およびで示すdf
)zfs list
はわずか40 GBで、ほぼ10倍少なくなります。
$ zpool list
NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
ssdtank 7.25T 6.98T 273G - - 21% 96% 1.00x ONLINE -
$ zpool iostat -v
capacity operations bandwidth
pool alloc free read write read write
---------------------------------- ----- ----- ----- ----- ----- -----
ssdtank 6.98T 273G 1 15 365K 861K
ata-Samsung_SSD_860_QVO_4TB_S123 3.49T 136G 0 7 182K 428K
ata-Samsung_SSD_860_QVO_4TB_S456 3.49T 137G 0 8 183K 434K
$ zfs list
NAME USED AVAIL REFER MOUNTPOINT
ssdtank 6.98T 40.6G 32K /srv/tank
この違いはどういう意味ですか?これら2つのユーティリティが異なる空き領域を表示するのはなぜですか?もっと重要なのは、「追加」200GBが存在する場合はどのようにアクセスできますか?
プールはRAIDや他の設定なしで2つの同じディスクで構成され、上部にファイルシステムが作成された通常のvdevとしてプールに追加されます。 (表示されたルートには複数のファイルシステムがありますが、すべて同じルートを共有し、同じ40.6Gの空き容量を持つため、互いに関連性がないと思います。)
要求に応じて、出力は次のようになりますzfs get all
。 (今日の空きディスク容量は変更されているため、理解できるように上記の数字も更新しました。以前の数字は257 GB / 27 GBで、現在は273 GB / 40 GBです。)量だけ増えました。つまり、zpoolは他のすべてより約270GB多いと報告されているようですが、当時の実際の空き容量よりも常に270GB多いです。
NAME PROPERTY VALUE SOURCE
ssdtank aclinherit restricted default
ssdtank acltype off default
ssdtank atime off received
ssdtank available 40.6G -
ssdtank canmount on default
ssdtank casesensitivity sensitive -
ssdtank checksum on default
ssdtank compression off default
ssdtank compressratio 1.00x -
ssdtank context none default
ssdtank copies 1 default
ssdtank createtxg 1 -
ssdtank creation Sat Oct 26 21:53 2019 -
ssdtank dedup off default
ssdtank defcontext none default
ssdtank devices on default
ssdtank dnodesize legacy default
ssdtank encryption off default
ssdtank exec on default
ssdtank filesystem_count none default
ssdtank filesystem_limit none default
ssdtank fscontext none default
ssdtank guid 12757787786185470931 -
ssdtank keyformat none default
ssdtank keylocation none default
ssdtank logbias latency default
ssdtank logicalreferenced 16K -
ssdtank logicalused 6.98T -
ssdtank mlslabel none default
ssdtank mounted yes -
ssdtank mountpoint /srv/tank local
ssdtank nbmand off default
ssdtank normalization none -
ssdtank objsetid 54 -
ssdtank overlay off default
ssdtank pbkdf2iters 0 default
ssdtank primarycache all default
ssdtank quota none default
ssdtank readonly off default
ssdtank recordsize 128K default
ssdtank redundant_metadata all default
ssdtank refcompressratio 1.00x -
ssdtank referenced 32K -
ssdtank refquota none default
ssdtank refreservation none default
ssdtank relatime off default
ssdtank reservation none default
ssdtank rootcontext none default
ssdtank secondarycache all default
ssdtank setuid on default
ssdtank sharenfs [email protected]/24 received
ssdtank sharesmb off default
ssdtank snapdev hidden default
ssdtank snapdir hidden default
ssdtank snapshot_count none default
ssdtank snapshot_limit none default
ssdtank special_small_blocks 0 default
ssdtank sync standard default
ssdtank type filesystem -
ssdtank used 6.98T -
ssdtank usedbychildren 6.98T -
ssdtank usedbydataset 32K -
ssdtank usedbyrefreservation 0B -
ssdtank usedbysnapshots 0B -
ssdtank utf8only off -
ssdtank version 5 -
ssdtank volmode default default
ssdtank vscan off default
ssdtank written 0 -
ssdtank xattr on default
ssdtank zoned off default
ベストアンサー1
ZFSは、使用可能なスペースが非常に少なくても、いくつかの重要なZFS操作を完了するために内部的に小さなスペース(スキューされたスペース)を予約します。
金額は3.2%総プール容量。 zfs-0.6.5
7.25Tの3.2% = 235GB
実際、ファイルシステムには40.6GBの空き容量しかありません。
zpoolはrawディスク容量を報告し、利用可能なスペースは40 + 235 = 275Gです。