えーと、どうやるんだっけ ^^;
1TBディスクが壊れて、予備でとっておいた別の1TBディスクを入れたときの 初期状態。
gvinum l
3 drives:
D d0 State: up /dev/da3s1f A: 6143/10239 MB (59%)
D d4 State: up /dev/da2 A: 0/953869 MB (0%)
D d5 State: down /dev/??? A: 0/0 MB (0%)
4 volumes:
V local State: up Plexes: 1 Size: 4096 MB
V home State: up Plexes: 2 Size: 200 GB
V pub State: up Plexes: 2 Size: 200 GB
V pacific State: up Plexes: 2 Size: 531 GB
7 plexes:
P local.p0 C State: up Subdisks: 1 Size: 4096 MB
P home.p0 C State: up Subdisks: 1 Size: 200 GB
P home.p1 C State: down Subdisks: 1 Size: 200 GB
P pub.p0 C State: up Subdisks: 1 Size: 200 GB
P pub.p1 C State: down Subdisks: 1 Size: 200 GB
P pacific.p0 C State: up Subdisks: 1 Size: 531 GB
P pacific.p1 C State: down Subdisks: 1 Size: 531 GB
7 subdisks:
S local.p0.s0 State: up D: d0 Size: 4096 MB
S home.p0.s0 State: up D: d4 Size: 200 GB
S home.p1.s0 State: down D: d5 Size: 200 GB
S pub.p0.s0 State: up D: d4 Size: 200 GB
S pub.p1.s0 State: down D: d5 Size: 200 GB
S pacific.p0.s0 State: up D: d4 Size: 531 GB
S pacific.p1.s0 State: down D: d5 Size: 531 GB
おーのー、交換後に入れたHDD(da3)にFreeBSDなラベルが残っていて drive d0 にくっついてしまった。しかも local という名前のvolumeを 形成してる。記憶にない。そのパーティションのmountもできないから消してよし。 一度driveにくっついちゃったのを消すにはgvinumを停めてからでないとだめやね。
shutdown now gvinum stop dd if=/dev/zero of=/dev/da3 count=64 gvinum start gvinum ld 2 drives: D d4 State: up /dev/da2 A: 0/953869 MB (0%) D d5 State: down /dev/??? A: 0/0 MB (0%)
よし、消えた。あとはちまちまと追加。まずは d5 ドライブを 再構築してから、 pub ボリュームの再構築。
EDITOR=ed gvinum rm d5 create a drive d5 device /dev/da3 . wq rm -r pub.p1 lp 5 plexes: P home.p0 C State: up Subdisks: 1 Size: 200 GB P home.p1 C State: down Subdisks: 1 Size: 200 GB P pub.p0 C State: up Subdisks: 1 Size: 200 GB P pacific.p0 C State: up Subdisks: 1 Size: 531 GB P pacific.p1 C State: down Subdisks: 1 Size: 531 GB create $a plex name pub.p1 org concat vol pub sd drive d5 length 200g . wq lp 6 plexes: P pub.p1 C State: down Subdisks: 1 Size: 200 GB P home.p0 C State: up Subdisks: 1 Size: 200 GB P home.p1 C State: down Subdisks: 1 Size: 200 GB P pub.p0 C State: up Subdisks: 1 Size: 200 GB P pacific.p0 C State: up Subdisks: 1 Size: 531 GB P pacific.p1 C State: down Subdisks: 1 Size: 531 GB start pub.p1 # 少し待って lv -r pub V pub State: up Plexes: 2 Size: 200 GB P pub.p1 C State: S 0% Subdisks: 1 Size: 200 GB S pub.p1.s0 State: I 0% D: d5 Size: 200 GB P pub.p0 C State: up Subdisks: 1 Size: 200 GB S pub.p0.s0 State: up D: d4 Size: 200 GB
とここまでやって、いったんリブートしてみたら、 以前のdriveと同じジオメトリのdriveを同じ名前で突っこんでおけば plex/subdisk情報も引き継いでくれることが分かった。なので いちいち plex と subdisk を作り直さなくていいようだ。
てことであとは、
start home.p1 start pacific.p1
しておしまい。なのだが… マルチユーザモードで homeパーティションを使いながらやってたらハングアップした……。 ダメなん? gmirror とか落ちたことないのにな。 しゃーないシングルユーザモードでやろう。外付けおせー。