如何查找 ZFS 快照占用的空间

创建快照时,其空间最初在快照和文件系统之间共享,并且可能与以前的快照共享。
随着文件系统的变化,之前共享的空间成为快照独有的空间,因此计入快照的 used 属性。

此外,删除快照可以增加可供其他快照使用的唯一空间量。

之路 on it Road.com

空间快照

我们可以使用 zfs list -o space 命令显示快照和后代文件系统消耗的空间量(如下例所示)。

我们可以使用listsnapshots 池属性在zfs list 输出中启用或者禁用快照列表的显示。
默认情况下禁用此属性。
要启用此属性,请使用 zpool set listsnapshots=on,后跟池名称。
例如 :

# zpool set listsnapshots=on rpool
# zfs list -o space -r rpool
NAME                             AVAIL   USED  USEDSNAP  USEDDS  USEDREFRESERV  USEDCHILD
rpool                            10.2G  5.16G         0   4.52M              0      5.15G
rpool/ROOT                       10.2G  3.06G         0     31K              0      3.06G
rpool/ROOT/solaris               10.2G  3.06G     55.0M   2.78G              0       224M
rpool/ROOT/solaris@install           -  55.0M         -       -              -          
rpool/ROOT/solaris/var           10.2G   224M     2.51M    221M              0          0
rpool/ROOT/solaris/var@install       -  2.51M         -       -              -          
rpool/VARSHARE                   10.2G  2.52M         0   2.43M              0        94K
rpool/VARSHARE/pkg               10.2G    63K         0     32K              0        31K
rpool/VARSHARE/pkg/repositories  10.2G    31K         0     31K              0          0
rpool/VARSHARE/zones             10.2G    31K         0     31K              0          0
rpool/dump                       10.3G  1.03G         0   1.00G          32.5M          0
rpool/export                     10.2G  30.1M         0     32K              0      30.1M
rpool/export/home                10.2G  30.1M         0     32K              0      30.1M
rpool/export/home@friday             -      0         -       -              -          
rpool/export/home/geek           10.2G  30.1M       20K   30.0M              0          0
rpool/export/home/geek@2days         -    20K         -       -              -          
rpool/swap                       10.3G  1.03G         0   1.00G          32.5M          0

从此输出中,我们可以看到空间量:

  • 在每个文件系统上可用
  • 正在使用
  • 被每个数据集的快照消耗 (USEDSNAP)
  • 被数据集本身使用 (USEDDS)
  • 被数据集上的 refreservation 使用 (USED REFRESERV )
  • 被这个数据集的孩子使用 (USEDCHILD)
日期:2020-09-17 00:15:10 来源:oir作者:oir