列出最新的ZFS快照

问题描述 投票:1回答:2

我经常为30个虚拟机(VM)拍摄20个版本的ZFS快照。

我的快照列表仅适用于两个VM:

rpool/data/vm-100-disk-1@rep_100_2018-08-14_20:08:20   218M      -  80.6G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-15_00:13:27  46.4M      -  80.6G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-15_04:23:47  20.6M      -  80.6G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-15_08:11:11  53.3M      -  80.6G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-15_11:12:03   181M      -  80.6G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-15_14:12:32   176M      -  80.6G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-15_17:12:09   126M      -  80.5G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-15_20:11:06   120M      -  80.5G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-16_05:29:05   157M      -  80.6G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-16_11:27:24  6.72M      -  80.6G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-16_11:28:08  6.75M      -  80.6G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-16_14:07:33   208M      -  80.5G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-16_17:08:18   142M      -  80.4G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-16_20:05:09  55.3M      -  80.4G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-17_00:08:29  53.7M      -  80.4G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-17_04:07:15  46.3M      -  80.4G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-17_08:06:04  53.9M      -  80.4G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-17_11:05:05   209M      -  80.3G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-17_14:15:43   202M      -  80.3G  -
rpool/data/vm-100-disk-1@rep_100_2018-08-17_17:20:43     0B      -  80.2G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-14_20:06:09   588M      -  75.5G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-15_00:06:33   106M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-15_04:11:10  65.2M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-15_08:06:22  60.6M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-15_11:07:57  56.8M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-15_14:08:06  58.4M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-15_17:08:28  61.0M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-15_20:07:40  68.4M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-16_05:22:16  68.4M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-16_11:19:01  1.46M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-16_11:19:21  1.39M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-16_14:04:35  44.4M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-16_17:03:48  43.5M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-16_20:02:45  52.8M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-17_00:03:51  63.9M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-17_04:04:03  61.9M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-17_08:03:45  48.1M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-17_11:02:28  51.9M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-17_14:11:25  72.1M      -  75.6G  -
rpool/data/vm-102-disk-1@rep_102_2018-08-17_17:16:03     0B      -  75.6G  -

如何仅列出所有VM的最新拍摄快照以检查拍摄的最新快照?

linux list search snapshot zfs
2个回答
0
投票

最新拍摄的快照可以通过以下方式获得:

zfs list -t snapshot -o name,creation -s creation | tail -n1

如果使用资本-S按属性降序排序,则在这种情况下返回第一个拍摄的快照:

zfs list -t snapshot -o name,creation -S creation | tail -n1

0
投票

这取决于您的具体情况,因为快照可以存在于所有级别的嵌套文件系统中。

如果您确定每个VM的所有后代文件系统都在同一时间快照(使用zfs snapshot -r <root_filesystem>而不是单独),那么您只需要查看根级别(您可以使用所有根文件系统或放置你自己的名单中的名字):

#!/bin/bash
for i in $(zfs list -H -o name -d 0); do
  zfs list -H -r -d 1 -t snap -o name -S creation "${i}" | head -n1
done

如果您有与根不同的后代的快照,则不能使用-d 1来限制深度,但需要显示所有快照。其余类似:

#!/bin/bash
for i in $(zfs list -H -o name -d 0); do
  zfs list -H -r -t snap -o name -S creation "${i}" | head -n1
done

您可能还想检查所有后代快照是否符合与根快照相同的格式,或者所有后代都有快照。但两种情况都有点复杂。我建议看看zfs list选项/手册页,并使用awkgrep来实现这一目标。

© www.soinside.com 2019 - 2024. All rights reserved.