У меня есть пул с именем test_pool, и я могу видеть его только при запуске "zfs import". Как я могу удалить этот пул и отсоединить от него связанное устройство?
# zpool import
pool: test_pool
id: 13538020891587345121
state: FAULTED
status: One or more devices contains corrupted data.
action: The pool cannot be imported due to damaged devices or data.
The pool may be active on another system, but can be imported using
the '-f' flag.
see: http://zfsonlinux.org/msg/ZFS-8000-5E
config:
data_pool FAULTED corrupted data
raidz1-1 ONLINE
sdf UNAVAIL corrupted data
sdg UNAVAIL corrupted data
sdh UNAVAIL corrupted data
Я пытался # zpool import test_pool -f
импортировать и уничтожить его, но получаю сообщение ниже
cannot import 'data_pool': one or more devices is currently unavailable
Если пул не импортирован, просто сотрите данные на реальных блочных устройствах. Это, по сути, сотрет бассейн.
Вам не нужно очищать все устройство — достаточно только метаданных.
sudo wipefs /dev/sd{f,g,h}
Вы должны увидеть что-то вроде следующего:
DEVICE OFFSET TYPE UUID LABEL
sdf 0x3f000 zfs_member 13538020891587345121 ...
sdf 0x3e000 zfs_member 13538020891587345121 ...
sdf 0x3d000 zfs_member 13538020891587345121 ...
...
sdh 0x3ffa2000 zfs_member 13538020891587345121 ...
Если вы видите вывод только с zfs_member
и UUID
для соответствия в каждой строке, то вы получили правильное устройство - продолжайте и сотрите их:
sudo wipefs --all --backup /dev/sd{f,g,h}
После этого zpool import
не должен найти пулы для импорта.
П.С. Вы можете использовать тот же метод для уничтожения любого устройства — программного рейда, DRBD, файловой системы и т. д.