ZFS:抑制接收方的保留?

ZFS:抑制接收方的保留?

我正在尝试将 zvol 的更改从我的工作池 ( zdata) 逐步发送到备份池 ( zbackup),但是我正在努力抑制该refreservation属性。

虽然我意识到此属性的目的是确保 zvol 有足够的空间,但我并不打算从备份池中安装它,所以我宁愿释放空间,特别是因为 zvol 大部分是空的并且可能还会保持一段时间。

然而,尽管我可以暂时地抑制设置,它似乎不断被重新创建,但我不完全确定为什么。

我用来发送增量更改的命令如下所示:

zfs send -pw -i @snapshot1 zdata/zvol@snapshot2 | zfs receive -dus -x reservation -x refreservation zbackup

基本上,在发送端,我必须-p发送属性(因为我确实希望其他属性同步),-w用于发送加密块,并-i指定要从中增量发送的快照。

在接收端,我已经获得了-d命名约定(删除池名称),-u以防止安装任何东西,并-s允许恢复中断的传输(使用恢复令牌),以及-x删除我不想传输的属性(reservationrefreservation,虽然我认为实际上只需要后者)。

我的问题是删除属性似乎不起作用;第一次运行命令时,预留消失了(我有我期望的可用空间),然后下次运行命令时,预留又回来了。每次运行命令时,它似乎都会交替出现,而不是保持抑制状态。*

如果我zfs get refreservation zbackup/zvol在预订返回时运行,我会收到如下响应:

zbackup/zvol    refreservation  257G    received

即使该物业应该不是根据-x接收方的选项进行接收(或者如果接收了,则应将其忽略)。

none我意识到我可以尝试将接收方的预留设置为本地属性,或者使用-o选项设置refreservation=none为选项zfs receive,但我认为如果-x表现正常,我不需要执行任何一项操作?那么在这种情况下我做错了什么,还是这可能是一个错误?

更新: *实际上,我看到的交替行为可能与另一个属性的更改有关(可能导致属性在每次第二次运行时重新发送给接收方)。但这并不是导致整体问题的原因(即使应该排除预订,但预订仍以某种方式被接收)。

相关内容