У меня есть рабочая коробка Solaris 10, загрузка / диск которой использует ZFS.
Я хочу добавить еще один жесткий диск и создать зеркальное отображение этого загрузочного диска.
Когда я запускаю команду, которую считаю правильной (ниже), я получаю сообщение об ошибке:
-bash-3.2# zpool add -f rpool mirror c1t0d0 c1t1d0
invalid vdev specification
the following errors must be manually repaired:
/dev/dsk/c1t0d0s0 is part of active ZFS pool rpool. Please see zpool(1M).
Есть предложения, как это исправить?
Большое спасибо, Дуг
Во-первых, вам нужно убедиться, что размер нового диска равен или больше исходного.
Дублируйте раздел диска (только x86):
fdisk -W /var/tmp/rpool-fdisk /dev/rdsk/c1t0d0p0
fdisk -F /var/tmp/rpool-fdisk /dev/rdsk/c1t1d0p0
Дублируйте метку (как x86, так и SPARC)
prtvtoc /dev/rdsk/c1t0d0s0 | fmthard -s - /dev/rdsk/c1t1d0s0
Зеркальное отражение корневого пула (как x86, так и SPARC):
zpool attach -f rpool c1t1d0s0
Установите загрузчик GRUB (только x86):
installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c1t1d0s0
Установите загрузчик (только SPARC):
installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c1t1d0s0
Настройте BIOS (x86) или окно OpenBOOT (SPARC) так, чтобы новый диск был загрузочным.
В последнем случае (SPARC) это должно быть примерно так:
eeprom "boot-device=disk1 disk2"
Перед перезагрузкой убедитесь, что перенастройка ZFS завершена. Использовать zpool status rpool
команда для отслеживания переноса актуальных данных.