我有一个zpool,我们将称之为“testpool”。
testpool包含3个设备,一个zfs被称为'test'。
我需要将“testing”移动到一个新的小型游泳池。 我想命名新的池相同的名称“testpool”。
基本上做了以下。
zfs send testpool@backup > /tmp/test-dump zpool export -f testpool zpool create -f testpool newdevice zfs receive -F testpool < /tmp/test-dump
不幸的是我发现testpool @ backup快照是错误的快照。 太老。 我还没有重新分配旧testing池中的三个设备。 (这三种设备都不是“新设备”,它们是单独的3.)
有什么方法可以恢复这些设备中的数据? 我在想,因为我命名新的,更小的池像旧的zpool一样,我几乎是SOL。 但是,如果没有,那将是很好的知道。
编辑:更多信息
我做了一个“zpool导入”,并得到了这个。
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
所以我猜我只需要使用其数字标识符导入此zpool的语法,同时给它一个新的名称。
S.
是。 您可以运行没有参数的zpool import ,它将为您标识可用的池。
假设旧testing池中的设备仍然存在,您将看到“旧”testing池,并在其旁边显示池的GUID。
一旦你有这个池GUID,你可以做zpool import $id oldtestpool 。 在导入池之后,您可以更改安装点,使其与新的testing池的安装点不重叠。