日記/2008-01-20/Linux RAID の管理領域
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
] [
リンク元
]
開始行:
* Linux RAID の管理領域 [#o5a7ec80]
Linux のソフトウェア RAID では,各々の子ボリュームに RAID...
この管理領域は RAID の''スーパーブロック''と呼ばれる.
また,スーパーブロックに書かれたデータは RAID の''メタデ...
** RAID メタデータの表示 [#z5d1a9c3]
RAID ボリューム自身の状態を表示させるのには
# mdadm -D /dev/md0
と実行する.
これは使ったことがある人も多いだろう.
実は,RAID の状態(メタデータ)は各々の子ボリューム上にも...
# mdadm --examine /dev/sda1
で表示させることができる.
これは,RAID を停止させた後も保持されている.
リビルド中に(RAID を正常に停止させて)シャットダウンして...
このオプションは RAID の障害解析で非常に役立つので,是非...
** メタデータの消去 [#s92568e4]
実験に使っていたディスクを使いまわす時など,メタデータを...
この場合,例えば
# mdadm --zero-superblock /dev/sda1
と実行すると,スーパーブロックを 0 で書き潰すことができる.
** 子ボリューム上でのスーパーブロックの位置 [#g12fb22a]
子ボリューム上でメタデータが保持されている場所,すなわち...
「[[Linux RAID の実験環境>日記/2008-01-15/Linux RAID の実...
ここでは 64MB 子ボリュームを作成する.
# dd if=/dev/zero of=d0 bs=1M seek=64 count=0
# dd if=/dev/zero of=d1 bs=1M seek=64 count=0
# dd if=/dev/zero of=d2 bs=1M seek=64 count=0
# dd if=/dev/zero of=d3 bs=1M seek=64 count=0
# losetup /dev/loop0 d0
# losetup /dev/loop1 d1
# losetup /dev/loop2 d2
# losetup /dev/loop3 d3
RAID を組む前の子ボリュームの中身を見てみよう.
# hexdump /dev/loop0
0000000 0000 0000 0000 0000 0000 0000 0000 0000
*
4000000
実体は完全な sparse file なので,頭から尻尾まで all 0 で...
新たに RAID を構成する.
# mdadm -C --level=raid5 --raid-devices=4 --assume-clean...
/dev/loop0 /dev/loop1 /dev/loop2 /dev/loop3
mdadm: array /dev/md0 started.
この状態で再び子ボリュームの中身を覗いてみよう.
# hexdump /dev/loop0
0000000 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0000 4efc a92b 0000 0000 005a 0000 0000 0000
3ff0010 0000 0000 f2b7 7174 9f20 4792 0005 0000
3ff0020 ffc0 0000 0004 0000 0004 0000 0000 0000
3ff0030 0000 0000 6e72 99c4 8653 f4d1 0cee c545
3ff0040 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0080 9f20 4792 0001 0000 0004 0000 0004 0000
3ff0090 0000 0000 0000 0000 822f fda2 0001 0000
3ff00a0 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0100 0002 0000 0000 0001 0000 0000 0000 0000
3ff0110 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0200 0000 0000 0007 0000 0000 0000 0000 0000
3ff0210 0006 0000 0000 0000 0000 0000 0000 0000
3ff0220 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0280 0001 0000 0007 0000 0001 0000 0001 0000
3ff0290 0006 0000 0000 0000 0000 0000 0000 0000
3ff02a0 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0300 0002 0000 0007 0000 0002 0000 0002 0000
3ff0310 0006 0000 0000 0000 0000 0000 0000 0000
3ff0320 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0380 0003 0000 0007 0000 0003 0000 0003 0000
3ff0390 0006 0000 0000 0000 0000 0000 0000 0000
3ff03a0 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0f80 0000 0000 0007 0000 0000 0000 0000 0000
3ff0f90 0006 0000 0000 0000 0000 0000 0000 0000
3ff0fa0 0000 0000 0000 0000 0000 0000 0000 0000
*
4000000
何やらボリュームの末尾にデータが書き込まれている.
これが RAID スーパーブロックである.
> Linux のソフトウェア RAID のスーパーブロックは,子ボリ...
のである.
図で書くと
子ボリューム
先頭 末尾
+--------------------------------+--------+
| データ領域 |スーパー|
| |ブロック|
+--------------------------------+--------+
となる.
終了行:
* Linux RAID の管理領域 [#o5a7ec80]
Linux のソフトウェア RAID では,各々の子ボリュームに RAID...
この管理領域は RAID の''スーパーブロック''と呼ばれる.
また,スーパーブロックに書かれたデータは RAID の''メタデ...
** RAID メタデータの表示 [#z5d1a9c3]
RAID ボリューム自身の状態を表示させるのには
# mdadm -D /dev/md0
と実行する.
これは使ったことがある人も多いだろう.
実は,RAID の状態(メタデータ)は各々の子ボリューム上にも...
# mdadm --examine /dev/sda1
で表示させることができる.
これは,RAID を停止させた後も保持されている.
リビルド中に(RAID を正常に停止させて)シャットダウンして...
このオプションは RAID の障害解析で非常に役立つので,是非...
** メタデータの消去 [#s92568e4]
実験に使っていたディスクを使いまわす時など,メタデータを...
この場合,例えば
# mdadm --zero-superblock /dev/sda1
と実行すると,スーパーブロックを 0 で書き潰すことができる.
** 子ボリューム上でのスーパーブロックの位置 [#g12fb22a]
子ボリューム上でメタデータが保持されている場所,すなわち...
「[[Linux RAID の実験環境>日記/2008-01-15/Linux RAID の実...
ここでは 64MB 子ボリュームを作成する.
# dd if=/dev/zero of=d0 bs=1M seek=64 count=0
# dd if=/dev/zero of=d1 bs=1M seek=64 count=0
# dd if=/dev/zero of=d2 bs=1M seek=64 count=0
# dd if=/dev/zero of=d3 bs=1M seek=64 count=0
# losetup /dev/loop0 d0
# losetup /dev/loop1 d1
# losetup /dev/loop2 d2
# losetup /dev/loop3 d3
RAID を組む前の子ボリュームの中身を見てみよう.
# hexdump /dev/loop0
0000000 0000 0000 0000 0000 0000 0000 0000 0000
*
4000000
実体は完全な sparse file なので,頭から尻尾まで all 0 で...
新たに RAID を構成する.
# mdadm -C --level=raid5 --raid-devices=4 --assume-clean...
/dev/loop0 /dev/loop1 /dev/loop2 /dev/loop3
mdadm: array /dev/md0 started.
この状態で再び子ボリュームの中身を覗いてみよう.
# hexdump /dev/loop0
0000000 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0000 4efc a92b 0000 0000 005a 0000 0000 0000
3ff0010 0000 0000 f2b7 7174 9f20 4792 0005 0000
3ff0020 ffc0 0000 0004 0000 0004 0000 0000 0000
3ff0030 0000 0000 6e72 99c4 8653 f4d1 0cee c545
3ff0040 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0080 9f20 4792 0001 0000 0004 0000 0004 0000
3ff0090 0000 0000 0000 0000 822f fda2 0001 0000
3ff00a0 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0100 0002 0000 0000 0001 0000 0000 0000 0000
3ff0110 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0200 0000 0000 0007 0000 0000 0000 0000 0000
3ff0210 0006 0000 0000 0000 0000 0000 0000 0000
3ff0220 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0280 0001 0000 0007 0000 0001 0000 0001 0000
3ff0290 0006 0000 0000 0000 0000 0000 0000 0000
3ff02a0 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0300 0002 0000 0007 0000 0002 0000 0002 0000
3ff0310 0006 0000 0000 0000 0000 0000 0000 0000
3ff0320 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0380 0003 0000 0007 0000 0003 0000 0003 0000
3ff0390 0006 0000 0000 0000 0000 0000 0000 0000
3ff03a0 0000 0000 0000 0000 0000 0000 0000 0000
*
3ff0f80 0000 0000 0007 0000 0000 0000 0000 0000
3ff0f90 0006 0000 0000 0000 0000 0000 0000 0000
3ff0fa0 0000 0000 0000 0000 0000 0000 0000 0000
*
4000000
何やらボリュームの末尾にデータが書き込まれている.
これが RAID スーパーブロックである.
> Linux のソフトウェア RAID のスーパーブロックは,子ボリ...
のである.
図で書くと
子ボリューム
先頭 末尾
+--------------------------------+--------+
| データ領域 |スーパー|
| |ブロック|
+--------------------------------+--------+
となる.
ページ名:
-->