В Solaris, если я отключу пару дисков во время работы машины, выполнение некоторых функций, проверяющих каждый диск, займет некоторое время, потому что придется ждать тайм-аута.
Например format
или zpool import
оба читают все диски в первую очередь.
Иногда я противодействую этому следующим образом: (я, конечно, заменяю ноль правильными числами)
cd /dev/dsk
, mkdir offline
, mv c0t0d0* offline
,
cd ../rdsk
, mkdir offline
, mv c0t0d0* offline
.
На данный момент я могу делать все, что захочу, с format
и zpool import
и это будет намного быстрее.
Когда диски будут повторно вставлены, я могу снова подключить их к сети с помощью
cd /dev/dsk
, mv offline/* .
, rmdir offline
,
cd ../rdsk
, mv offline/* .
, rmdir offline
.
Есть ли для этого команда? Тот, который временно удаляет символические ссылки для указанного диска, а также способ их вернуть?
Я очень доволен найденным решением. Я могу рискнуть манипуляциями такого уровня, особенно потому, что эта машина является автономной. (например, если бы я на самом деле набрал ноль, были бы проблемы)
Однако я хотел бы узнать о лучшем способе, если он есть.
Правильный метод - использовать cfgadm
команда для отмены конфигурации устройства перед его отключением. В Руководство администратора ZFS есть пример этой процедуры (конечно, вы можете игнорировать шаги ZFS, если вы не используете ZFS).
Пример из руководства, вставленного ниже:
# zpool offline tank c1t3d0
# cfgadm | grep c1t3d0
sata1/3::dsk/c1t3d0 disk connected configured ok
# cfgadm -c unconfigure sata1/3
Unconfigure the device at: /devices/pci@0,0/pci1022,7458@2/pci11ab,11ab@1:3
This operation will suspend activity on the SATA device
Continue (yes/no)? yes
# cfgadm | grep sata1/3
sata1/3 disk connected unconfigured ok
<Physically replace the failed disk c1t3d0>
# cfgadm -c configure sata1/3
# cfgadm | grep sata1/3
sata1/3::dsk/c1t3d0 disk connected configured ok
# zpool online tank c1t3d0