You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Proxmox中ZFS顶层数据集df命令显示已用空间为128K而非实际值的问题排查求助

Proxmox中ZFS顶层数据集df命令显示已用空间为128K而非实际值的问题排查求助

我在Proxmox实例里搭了一个ZFS镜像池,现在想把它以只读权限挂载到LXC容器里(尽量不要给完整文件系统权限),这样Homepage就能正常监测它的已用和剩余空间。

之前看其他ServerFault的问答说df -hT应该能正确报告ZFS文件系统的已用空间(可能会排除奇偶校验、压缩或去重的数据,但我不需要100%精准)。但实际运行下来,df -hT显示的总空间是可用空间,已用空间却只有128K:

root@pve:~# df -hT /nvme

Filesystem     Type  Size  Used Avail Use% Mounted on

nvme           zfs   590G  128K  590G   1% /nvme

/nvme应该是顶层ZFS数据集吧?为什么这些数据集的空间计算会这么奇怪?

我用zfs list查看了数据集情况:

root@pve:~# zfs list

NAME                     USED  AVAIL  REFER  MOUNTPOINT

nvme                     309G   590G   128K  /nvme

nvme/base-103-disk-0    43.4G   631G  2.19G  -

nvme/nvmecheck            96K   590G    96K  /mnt/nvmecheck

nvme/subvol-102-disk-0   554M  1.46G   554M  /nvme/subvol-102-disk-0

nvme/subvol-105-disk-0  1.71G  2.29G  1.71G  /nvme/subvol-105-disk-0

nvme/subvol-106-disk-0   625M  1.39G   625M  /nvme/subvol-106-disk-0

nvme/subvol-107-disk-0  3.37G  11.6G  3.37G  /nvme/subvol-107-disk-0

nvme/subvol-108-disk-0  1.18G  1.82G  1.18G  /nvme/subvol-108-disk-0

nvme/subvol-109-disk-0   533M  1.48G   533M  /nvme/subvol-109-disk-0

nvme/vm-100-disk-0      43.3G   624G  8.96G  -

nvme/vm-101-disk-0       132G   607G   115G  -

nvme/vm-104-disk-0      82.5G   661G  11.6G  -

对了,nvme/nvmecheck是我专门创建的测试数据集,用来观察子数据集的空间计算方式,它的REFER值看起来更反常。

有没有大佬能帮我分析下这是怎么回事?会不会是Debian的ZFS实现有问题?还是df命令本身的逻辑导致的?

另外zpool status提醒我当前zpool有缺失的特性,可以运行zpool upgrade升级,但我不确定这么做是否安全。我的Proxmox用的是新引导工具,不是legacy模式,理论上应该没问题?

我感觉ZFS的USEDDS属性可能和这个问题有关,但不确定具体关联:

root@pve:~# zfs list -o space nvme

NAME  AVAIL   USED  USEDSNAP  USEDDS  USEDREFRESERV  USEDCHILD

nvme   590G   309G        0B    128K             0B       309G

从下面的ZFS属性输出也能看到,有几个属性里的128K可能就是df显示值的来源:

root@pve:~# zfs get all nvme

NAME  PROPERTY              VALUE                  SOURCE

nvme  type                  filesystem             -

nvme  creation              Sat Jul 22 20:53 2023  -

nvme  used                  309G                   -

nvme  available             590G                   -

nvme  referenced            128K                   -

nvme  compressratio         1.13x                  -

nvme  mounted               yes                    -

nvme  quota                 none                   default

nvme  reservation           none                   default

nvme  recordsize            128K                   default

nvme  mountpoint            /nvme                  default

nvme  sharenfs              off                    default

nvme  checksum              on                     default

nvme  compression           on                     local

nvme  atime                 off                    local

nvme  devices               on                     default

nvme  exec                  on                     default

nvme  setuid                on                     default

nvme  readonly              off                    default

nvme  zoned                 off                    default

nvme  snapdir               hidden                 default

nvme  aclmode               discard                default

nvme  aclinherit            restricted             default

nvme  createtxg             1                      -

nvme  canmount              on                     default

nvme  xattr                 on                     default

nvme  copies                1                      default

nvme  version               5                      -

nvme  utf8only              off                    -

nvme  normalization         none                   -

nvme  casesensitivity       sensitive              -

nvme  vscan                 off                    default

nvme  nbmand                off                    default

nvme  sharesmb              off                    default

nvme  refquota              none                   default

nvme  refreservation        none                   default

nvme  guid                  [redacted]             -

nvme  primarycache          all                    local

nvme  secondarycache        all                    default

nvme  usedbysnapshots       0B                     -

nvme  usedbydataset         128K                   -

nvme  usedbychildren        309G                   -

nvme  usedbyrefreservation  0B                     -

nvme  logbias               latency                default

nvme  objsetid              54                     -

nvme  dedup                 off                    default

nvme  mlslabel              none                   default

nvme  sync                  standard               default

nvme  dnodesize             legacy                 default

nvme  refcompressratio      1.00x                  -

nvme  written               128K                   -

nvme  logicalused           164G                   -

nvme  logicalreferenced     54.5K                  -

nvme  volmode               default                default

nvme  filesystem_limit      none                   default

nvme  snapshot_limit        none                   default

nvme  filesystem_count      none                   default

nvme  snapshot_count        none                   default

nvme  snapdev               hidden                 default

nvme  acltype               off                    default

nvme  context               none                   default

nvme  fscontext             none                   default

nvme  defcontext            none                   default

nvme  rootcontext           none                   default

nvme  relatime              on                     default

nvme  redundant_metadata    all                    default

nvme  overlay               on                     default

nvme  encryption            off                    default

nvme  keylocation           none                   default

nvme  keyformat             none                   default

nvme  pbkdf2iters           0                      default

nvme  special_small_blocks  0                      default

我的zpool属性如下:

root@pve:~# zpool get all nvme

NAME  PROPERTY                       VALUE                          SOURCE

nvme  size                           928G                           -

nvme  capacity                       15%                            -

nvme  altroot                        -                              default

nvme  health                         ONLINE                         -

nvme  guid                           [redacted]                     -

nvme  version                        -                              default

nvme  bootfs                         -                              default

nvme  delegation                     on                             default

nvme  autoreplace                    off                            default

nvme  cachefile                      -                              default

nvme  failmode                       wait                           default

nvme  listsnapshots                  off                            default

nvme  autoexpand                     off                            default

nvme  dedupratio                     1.00x                          -

nvme  free                           782G                           -

nvme  allocated                      146G                           -

nvme  readonly                       off                            -

nvme  ashift                         12                             local

nvme  comment                        -                              default

nvme  expandsize                     -                              -

nvme  freeing                        0                              -

nvme  fragmentation                  12%                            -

nvme  leaked                         0                              -

nvme  multihost                      off                            default

nvme  checkpoint                     -                              -

nvme  load_guid                      [redacted]                     -

nvme  autotrim                       off                            default

nvme  compatibility                  off                            default

nvme  bcloneused                     0                              -

nvme  bclonesaved                    0                              -

nvme  bcloneratio                    1.00x                          -

nvme  feature@async_destroy          enabled                        local

nvme  feature@empty_bpobj            active                         local

nvme  feature@lz4_compress           active                         local

nvme  feature@multi_vdev_crash_dump  enabled                        local

nvme  feature@spacemap_histogram     active                         local

nvme  feature@enabled_txg            active                         local

nvme  feature@hole_birth             active                         local

nvme  feature@extensible_dataset     active                         local

nvme  feature@embedded_data          active                         local

nvme  feature@bookmarks              enabled                        local

nvme  feature@filesystem_limits      enabled                        local

nvme  feature@large_blocks           enabled                        local

nvme  feature@large_dnode            enabled                        local

nvme  feature@sha512                 enabled                        local

nvme  feature@skein                  enabled                        local

nvme  feature@edonr                  enabled                        local

nvme  feature@userobj_accounting     active                         local

nvme  feature@encryption             enabled                        local

nvme  feature@project_quota          active                         local

nvme  feature@device_removal         enabled                        local

nvme  feature@obsolete_counts        enabled                        local

nvme  feature@zpool_checkpoint       enabled                        local

nvme  feature@spacemap_v2            active                         local

nvme  feature@allocation_classes     enabled                        local

nvme  feature@resilver_defer         enabled                        local

nvme  feature@bookmark_v2            enabled                        local

nvme  feature@redaction_bookmarks    enabled                        local

nvme  feature@redacted_datasets      enabled                        local

nvme  feature@bookmark_written       enabled                        local

nvme  feature@log_spacemap           active                         local

nvme  feature@livelist               enabled                        local

nvme  feature@device_rebuild         enabled                        local

nvme  feature@zstd_compress          enabled                        local

nvme  feature@draid                  enabled                        local

nvme  feature@zilsaxattr             disabled                       local

nvme  feature@head_errlog            disabled                       local

nvme  feature@blake3                 disabled                       local

nvme  feature@block_cloning          disabled                       local

nvme  feature@vdev_zaps_v2           disabled                       local

备注:内容来源于stack exchange,提问作者Drakonas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 13:37:57