こんにちは、斉藤です。

>
>ataraidの場合 各カード毎に格納場所が異なります。これは、各カードの BIOS
>毎に構成情報の内容や格納する場所が異なるためです。atacontrolで書き込まれ
>る情報は、BIOSで構成した場合と同等になるよう配慮されています。
>で src/sys/dev/ata/ata-raid.[ch] を見ると、SiIは最終セクタから 512bytes
>がRAID構成用情報の領域として使用されていることが分かります。
>
>一方、geom label は(使用カードに関係なく)最後の1セクタ分をラベル用として
>使用しています。
>(src/sys/geom/label/g_label.c, src/sys/geom/mirror/g_mirror.c)
>
>というわけで、SiIの場合は ataraid と geom label の書かれる場所は同一の
>ようです。ただし書かれる内容は違うので、構成情報が壊れていると勘違いした
>カードBIOSが、当該領域を初期化してしまったという可能性はあります。
>#ふつーはそんな余計なことはしないと思うんですが…。
>
おー、すばらしい。
さっそく確認してみました。

RAIDのBIOSは、構成がない状態("Delete RAID Set"を実行)で:

deneb# atacontrol delete ar0
deneb# diskinfo -c /dev/ad4
/dev/ad4
        512             # sectorsize
        500107862016    # mediasize in bytes (466G)
        976773168       # mediasize in sectors
        969021          # Cylinders according to firmware.
        16              # Heads according to firmware.
        63              # Sectors according to firmware.
...

最終セクタを0クリア:
deneb# dd if=/dev/zero of=/dev/ad4 bs=512 count=1 seek=976773167
deneb# dd if=/dev/zero of=/dev/ad6 bs=512 count=1 seek=976773167

deneb# dd if=/dev/ad4 bs=512 count=1 skip=976773167 | hd
1+0 records in
1+0 records out
512 bytes transferred in 0.000300 secs (1705706 bytes/sec)
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000200

クリアされているようですので、gmirrorでRAID1構成:

deneb# gmirror label -v -b split -s 16384 ad46 /dev/ad4
Metadata value stored on /dev/ad4.
Done.
deneb# gmirror insert -v ad46 /dev/ad6
Done.

最終セクタは:

deneb# dd if=/dev/ad4 bs=512 count=1 skip=976773167 | hd
1+0 records in
1+0 records out
512 bytes transferred in 0.000895 secs (572205 bytes/sec)
00000000  47 45 4f 4d 3a 3a 4d 49  52 52 4f 52 00 02 00 00  |GEOM::MIRROR....|
00000010  03 00 00 00 61 64 34 36  00 c2 66 c0 80 fd 2a c3  |....ad46.ツfタ..*テ|
00000020  34 2a 3f d4 af d3 88 a6  5c 6d e5 e6 02 00 00 00  |4*?ヤッモ.ヲ\m......|
00000030  00 01 00 00 00 00 00 40  00 00 03 00 5e c0 70 74  |[EMAIL PROTECTED]|
00000040  00 00 00 00 02 00 00 00  00 00 00 00 00 00 00 00  |................|
00000050  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000070  60 c0 70 74 00 00 00 84  4e f8 cc e7 1a 26 2b e3  |`タpt....N.フ..&+.|
00000080  fa cc 60 64 c0 dc b4 00  00 00 00 00 00 00 00 00  |.フ`dタワエ.........|
00000090  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000200
deneb# dd if=/dev/ad6 bs=512 count=1 skip=976773167 | hd
00000000  47 45 4f 4d 3a 3a 4d 49  52 52 4f 52 00 00 00 00  |GEOM::MIRROR....|
00000010  03 00 00 00 61 64 34 36  00 3c 96 da 8b 45 65 c0  |....ad46.<.レ.Eeタ|
00000020  80 0a 2b c3 af d3 88 a6  81 bd 90 27 02 00 00 00  |..+テッモ.ヲ.ス.'....|
00000030  00 01 00 00 00 00 00 40  00 00 03 00 5e c0 70 74  |[EMAIL PROTECTED]|
00000040  00 00 00 00 02 00 00 00  00 26 77 00 00 00 00 00  |.........&w.....|
00000050  00 00 00 00 00 00 00 03  00 00 00 00 00 00 00 00  |................|
00000060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000070  60 c0 70 74 00 00 00 a6  7e c1 0a c4 59 a5 39 fc  |`タpt...ヲ~チ.トY・9.|
00000080  1a 4c 87 17 47 4b f9 00  00 00 00 00 00 00 00 00  |.L..GK..........|
00000090  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
1+0 records in
1+0 records out
512 bytes transferred in 0.084255 secs (6077 bytes/sec)
00000200

それっぽい感じで、構成情報と思われるデータが書かれています。

ここで再起動し、最終セクタを見てみると・・・

deneb# dd if=/dev/ad4 bs=512 count=1 skip=976773167 | hd
1+0 records in
1+0 records out
512 bytes transferred in 0.000264 secs (1938162 bytes/sec)
00000000  5a 04 ff 3f 37 c8 10 00  00 00 00 00 3f 00 00 00  |Z..?7ネ......?...|
00000010  00 00 00 00 20 20 20 20  20 20 46 56 34 44 30 30  |....      FV4D00|
00000020  34 52 4e 43 57 4e 43 34  03 00 a7 77 34 00 32 2e  |4RNCWNC4..ァw4.2.|
00000030  31 30 20 20 20 20 48 69  74 61 63 68 69 20 48 44  |10    Hitachi HD|
00000040  54 37 32 35 30 35 30 56  4c 41 33 36 30 20 20 20  |T725050VLA360   |
00000050  20 20 20 20 20 20 20 20  20 20 20 20 20 20 10 80  |              ..|
00000060  00 00 00 2f 00 40 00 02  00 02 07 00 30 58 38 3a  |.../[EMAIL 
PROTECTED]:|
00000070  00 00 00 00 00 00 00 01  ff ff ff 0f 00 00 07 04  |................|
00000080  03 00 78 00 78 00 78 00  78 00 00 00 00 00 00 00  |..x.x.x.x.......|
00000090  00 00 00 00 00 00 1f 00  06 07 00 00 5e 00 40 00  |[EMAIL PROTECTED]|
000000a0  fc 00 1a 00 6b 34 e9 7f  73 47 68 34 01 bc 63 47  |....k4..sGh4.シcG|
000000b0  7f 00 60 00 00 00 00 00  fe ff 00 00 fe 80 08 00  |..`.............|
000000c0  ca 00 f9 00 10 27 00 00  30 60 38 3a 00 00 00 00  |ハ....'..0`8:....|
000000d0  ca 00 00 00 00 00 87 5a  00 50 a2 cc c9 13 c9 65  |ハ......Z.P「フノ.ノe|
000000e0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 10 40  |...............@|
000000f0  10 40 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |[EMAIL PROTECTED]|
00000100  01 00 0b 00 14 31 95 10  04 00 02 00 43 49 08 05  |.....1......CI..|
00000110  04 07 00 00 64 00 00 fd  ff ff 02 00 00 00 00 00  |....d...........|
00000120  00 00 00 00 08 00 00 00  01 02 00 00 00 00 53 69  |..............Si|
00000130  49 20 52 61 69 64 31 20  53 65 74 20 20 20 98 35  |I Raid1 Set   .5|
00000140  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000190  00 00 00 00 00 00 00 00  00 00 00 00 3f 00 00 00  |............?...|
000001a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 a5 39  |..............・9|
00000200

あー、書き換わってる!

文字列で見えている"SiI Raid1 Set"というのはカードのBIOSにも表示されていました。
前回にも指摘されましたが、BIOSがここを書き換えているようです。
("Delete RAID Set"しているにもかかわらず、削除する前の情報を書いている)

ためしにRAID0をカードBIOSで設定し、その後"Delete RAID Set"で削除して再起動、
見てみると、"SiI Raid0 Set"とか書かれています。

BIOSが書き換えていることは、ほぼ間違いないようです。

>
>gmirror構成後、カードBIOSでRAID構成いぢっていませんよね?
>ataraidを使用しない場合、カードBIOS側でのRAID構成は御法度です。単なる
>ATAデバイスとして見えるよう、事前に設定しておきましょう。
>
了解しました。

じつはJBODと指定するメニューがカードのBIOSにありませんでした。
(マニュアルには書いてありますが)
ので、構成がない状態がJBODだと思っていましたが、ちがうのかな?

Silicon ImageのホームページにBIOSがおいてありましたので、ひょっとしたら、
RAIDではないBIOSに書き換えれば、最終セクタに悪さすることもないかもしれません。
(少々怖いので今はできませんが)

いろいろと情報ありがとうございました。
おかげさまで原因がわかり、幾分すっきりした感じです。

メールによる返信