Назад | Перейти на главную страницу

как добавить новый диск в ZFS и сделать его доступным для существующих точек монтирования, если текущий пул является корневым?

Мой сервер S11 имеет следующую конфигурацию:

диск № 1 используется для rpool, который является корневым пулом. Я хочу добавить диск № 2, чтобы увеличить размер, доступный для уже смонтированных папок, но я не могу добавить диск в существующий rpool, потому что это корневой пул.

Есть ли способ сделать новый диск доступным для папки «/»? Единственный ли у меня вариант - создать новый zpool и смонтировать его в новой папке?

Спасибо.

RaamEE


 root@raamee:~# zpool status
  pool: rpool
 state: ONLINE
 status: The pool is formatted using an older on-disk format. The pool can
         still be used, but some features are unavailable.
 action: Upgrade the pool using 'zpool upgrade'. Once this is done, the
         pool will no longer be accessible on older software versions.
  scan: none requested
 config:

         NAME        STATE     READ WRITE CKSUM
         rpool       ONLINE       0     0     0
           c4t0d0s0  ONLINE       0     0     0

root@raamee:~# zfs list
NAME                       USED  AVAIL  REFER  MOUNTPOINT
rpool                      130G  4.18G  4.59M  /rpool
rpool/ROOT                 101G  4.18G    31K  legacy
rpool/ROOT/S11-GA          152M  4.18G  7.33G  /
rpool/ROOT/S11-GA/var     17.4M  4.18G  5.20G  /var
rpool/VARSHARE             180K  4.18G   180K  /var/share
rpool/dump                8.25G  4.43G  8.00G  -
rpool/guests                31K  4.18G    31K  /guests
rpool/scratch             2.52M  4.18G  2.52M  /scratch
rpool/swap                20.6G  4.81G  20.0G  -

root@raamee:~# format
Searching for disks...done


AVAILABLE DISK SELECTIONS:
       0. c4t0d0 <FUJITSU-MBB2147RCSUN146G-0505 cyl 17845 alt 2 hd 255 sec 63>
          /pci@7b,0/pci1022,7458@11/pci1000,3060@2/sd@0,0
          /dev/chassis/SYS/HD0/disk
       1. c4t1d0 <FUJITSU-MBB2147RCSUN146G-0505-136.73GB>
          /pci@7b,0/pci1022,7458@11/pci1000,3060@2/sd@1,0
          /dev/chassis/SYS/HD1/disk

Подключите второй диск как зеркало первого, дождитесь восстановления, удалите первый диск, установите для свойств автоматическое расширение. Не забудьте установить загрузочный код или что-нибудь в этом роде. Пример:

zpool attach rpool olddisk newdisk
...wait, check using zpool status rpool
zpool detach rpool olddisk
zpool set autoexpand=on rpool

Вы не можете «расширить» размер rpool, добавив один диск к другому (raid 0), как упоминалось ранее, однако, как упомянул ниже Крис S, вы можете подключить диск большего размера в качестве зеркала, тогда, когда данные будут синхронизированы ( переустановка завершена), отсоедините меньший диск. (ой, теперь я тоже вижу ответ Криса)

Вот процесс зеркального копирования корневого диска ... http://constantin.glez.de/blog/2011/03/how-set-zfs-root-pool-mirror-oracle-solaris-11-express

Следуйте за тем, кроме того, где они:

prtvtoc /dev/rdsk/c7t0d0s0 | fmthard -s - /dev/rdsk/c7t1d0s0

... вы захотите запустить форматирование и увеличить размер среза 0, возможно, всего диска

# format /dev/rdsk/c4t1d0s0

(Я не буду вдаваться в подробности команды интерактивного формата)

# zpool attach rpool c4t0d0s0 c4t1d0s0

# zpool status rpool

ПОДОЖДИТЕ ПОКА НЕ СКАЗЫВАЕТСЯ "пересылка завершена" (проверяйте zpool status rpool)

УБЕДИТЕСЬ, ЧТО ВЫ МОЖЕТЕ ЗАГРУЗИТЬСЯ НА ВТОРОЙ ДИСК

Затем отсоедините меньшее зеркало rpool и перезагрузитесь, чтобы снова загрузиться.

# zpool detach rpool c4t0d0s0

ПРИБЫЛЬ !?

ССЫЛКА: http://docs.oracle.com/cd/E19963-01/html/821-1448/gjtuk.html#gjtui


Предыдущий ответ:

После создания пула с помощью указанной им команды:

zpool create mypool c4t1d0

Создайте файловую систему, например:

zfs create mypool/home

... скопируйте данные на новый диск ... (повторно) переместите данные с диска rpool, затем установите точку монтирования в нужное место, например:

zfs set mountpoint=/export/home mypool/home

Это, конечно, при условии, что / export / home используется все пространство. Возможно, вам придется сделать это в «однопользовательском» режиме или создать пользователя с домашним каталогом, который не находится в /export/home чтобы завершить это.

Кстати, вывод вашего списка zfs выглядит странно, будто в нем чего-то не хватает. rpool/ROOT показывает использование 101 ГБ, но файловые системы под ним показывают только около 12,5 ГБ REF и гораздо меньше ИСПОЛЬЗУЕМЫХ. У вас случайно есть другие загрузочные среды под rpool / ROOT, которые вы "вырезали" из вывода вашего списка zfs? не могли бы вы уничтожить эти файловые системы bootenv или хотя бы zfs, чтобы восстановить пространство, используемое в rpool / ROOT?

~ Томми

Да, я считаю, что ваш единственный вариант - создать новый пул с использованием второго диска. Единственное, что вы можете сделать с помощью rpool, - это зеркально отразить диск, что не позволит освободить больше места. Rpool не поддерживает чередование из-за трудностей, возникающих при загрузке.

zpool create mypool c4t1d0