我有一个 zpool,我们称之为“testpool”。
testpool 中包含 3 个设备,以及一个名为“test”的 zfs。
我需要将“测试”移动到一个新的、较小的池中。我想将新池命名为“testpool”。
基本上做到了以下几点。
zfs send testpool@backup > /tmp/test-dump
zpool export -f testpool
zpool create -f testpool newdevice
zfs receive -F testpool < /tmp/test-dump
Run Code Online (Sandbox Code Playgroud)
不幸的是,我发现 testpool@backup 快照是错误的快照。太老。我还没有重新分配旧测试池中的三个设备。(这 3 台设备都不是“新设备”,它们是单独的 3 台。)
有什么办法可以恢复这些设备中的数据吗?我在想,自从我将新的、较小的池命名为与旧的 zpool 相同的名称以来,我几乎是 SOL。但如果没有,那会很高兴知道。
编辑:更多信息
我做了一个'zpool import'并得到了这个。
bash-3.00# zpool import
pool: testpool
id: 14781458723915654709
state: ONLINE
action: The pool can be imported using its name or numeric identifier.
config:
testpool ONLINE
c5t8d0 ONLINE
c5t9d0 ONLINE
c5t10d0 ONLINE
Run Code Online (Sandbox Code Playgroud)
所以我猜我只需要使用它的数字标识符导入这个 zpool 的语法,同时给它一个新名称。
S。
是的。您可以zpool import不带参数运行,它会为您识别可用的池。
假设旧测试池中的设备仍然存在,您将看到“旧”测试池,并在其旁边显示池的 GUID。
一旦您拥有该池 GUID,您就可以执行zpool import $id oldtestpool. 导入池后,您可以更改挂载点,这样它们就不会与新测试池的挂载点重叠。
| 归档时间: |
|
| 查看次数: |
1172 次 |
| 最近记录: |