 |
≫ |
|
|
 |
| 25-JUN-2007, revised 24-JUL-2012 |
 |
本ページに記載してある内容は限られた評価環境に於ける検証結果に基づいたものです。本ページの情報を利用する前に予め 技術情報、 保証について、ディストリビュータが提供する
WEBサイト等をご覧ください。 |
750GB SATA HDDをはじめとした大容量 HDDの登場により、SmartArrayでの 2TB超え環境が容易に、そして非常に安価に構築する事が可能になりました。
しかし、2TBを越える容量を扱うためには、OS側だけではなくファームウェア、ドライバ等への留意も必要となります。本ページではそれらを含めた注意点を説明させて頂きます。 |
PC/ATを祖としている昨今の PCでは、HDDのディスクラベルを扱う方式として MS-DOSディスクラベル(もしくはパーティション)形式を採用しています(Itaniumシステムを除く)。
この MS-DOSディスクラベルは、セクタの開始位置に 4byteの値を利用しています。またセクタ数にも 4byteの値を利用しています。4byteと云う値は 2の 32乗となり 4294967296となります。HDDのセクタあたりの容量は 512byteになりますので、2TB迄しか扱えません。
また、MBRは、セクタの開始位置に 4byteの値を利用しています。またセクタ数にも 4byteの値を利用しています。4byteと云う値は 2の 32乗となり 4294967296となります。HDDのセクタあたりの容量は 512byteになりますので、MBR形式の対応も 2TB迄となります。
2TBを越える LUNを利用する場合、この長年慣れ親しんできた MS-DOSディスクラベルは利用できないため、2TB越えをサポートした GPTディスクラベルを利用する必要があります。
この GPTディスクラベルは Itaniumシステムでは以前から利用されてきましたが、x86系環境ではあまり馴染みがないものです。そのため稼動する OSで利用する際には、インストーラ、パーティション操作ツール、ブートローダ等が対応している必要があります。 |
Linuxで一般に使われているブートローダーである Grubの殆どは GPTディスクラベル未対応です。このため /boot用パーティションを別途確保し、且つそのパーティション自体を 2TB `以下`である LUN内に確保する必要があります。但し、SLES11を初めとして、今後のディストリビューションでも grub-read-gptパッチが適用された Grubが採用されていけば 2TBの壁を意識する事なくシステムの起動を行う事が可能になります。
Grubは MBRパーティションの先頭 512byteを利用して起動作業を行いますが、この先頭 512byte領域は GPTディスクラベルに於いては、ディスクラベル情報が格納されているため Grubの仕組み上 GPTディスクラベルとの共存は行えません。/bootを配置する LUNのために 2TB超の LUNとは別に /boot用に別途 2TB以下の LUNの確保が必要となります。 |
下記は、SmartStart CDからシステムを起動し、オフライン状態で ACU(Array Configuration Utility)を利用しています。
ここでは 750GB HDDを 4本利用し、RAID-0を組んだ場合の LUNの切り方の例となり、5GBの `論理ドライブ 1`(LUN)は /bootと /を確保するためのものです。2.8TBの `論理ドライブ 2`(LUN)は、2TB超を扱うためのディスクラベルを確保するためのものを想定しています。 |
ProLiant 300/500シリーズでは SmartArray上の LUN(論理ドライブ)を細かく切り分けるための設定ツールである ACUがサポートされていますが、ProLiant 100シリーズでは ACUはサポートされておらず POST時に [F8]キーで起動する ORCAしかサポートされていません。
ORCAでは、前述の ACUでの例の様に一旦 `アレイ-A`として 3TBのディスク容量をまとめた後で、その 3TBを 5GBと 2.8TBの LUN(論理ドライブ)として切り分ける事はできません。ORCAではあくまで `アレイ` = `論理ドライブ(LUN)`としてのみの構成になり柔軟性に欠けます。ProLiant 100シリーズで 2TB超の LUNを扱う場合には、LUNの構成と HDDの物理サポート本数を十分考慮してください。
但し、ProLiant 100シリーズであっても Easy Set-up CDが利用可能な機種であれば、SmartStart CDと同様に CDからシステムを起動し、ACUをオフラインで実行する事が可能となります。これにより `アレイ`内部に複数の `論理ドライブ(LUN)`を作成する事が可能ですので、ProLiant 300シリーズ同様の柔軟なディスク構成を取る事が可能です。
|
| 2TB超 LUNを SmartArrayに扱わせるには、SmartArrayの firmwareバージョンに注意してください。 |
 |
- SmartArray E200/i - v1.62(但し v1.62は別問題があるため v1.66必須)以降
- SmartArray P400/i - v2.08以降
- SmartArray E500 - v2.52以降
- SmartArray P600 - v1.88A以降
- SmartArray P800 - v2.08以降
|
RHEL4のインストーラ Anacondaは GPTディスクラベルに対応していません。Update7迄確認しています。
利用するインストールメディアは最低でも U1を利用してください。U1に於いて、2TB超え関連の大幅な修正が施されています。
RHEL4/U6未満の場合 - ccissドライバは HP提供の DUD/cciss v2.6.16-6以降が必要となります。これらのディストリビューションに標準装備されている ccissドライバでは、2TB超 geometryの扱いが正常に行えません。インストール時に 2TB超の LUNが存在していると `reported invalid`エラーが表示されますが無視してください。2TB超の LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。
RHEL4/U6の場合 - ccissドライバは HP提供の DUD/cciss v2.6.18-10以降が必要となります。本ディストリビューションに標準装備されている ccissドライバでは、2TB超 geometryの扱いが正常に行えず、インストーラの DiskDruid画面へ遷移する際に `入力/出力エラーです during read on /dev/cciss/c0d1`等のエラーとなります。この際のエラーダイアログでは `無視`を選択してください。この選択により 2TB超の LUNは DiskDruidでは表示されなくなります。2TB超の LUNへの操作はインストール後に partedで別途操作します。
RHEL4/U7の場合 - ccissドライバは HP提供の DUD/v2.6.18-17以降が必要となります。本ディストリビューションに標準装備されている ccissドライバでは、インストール時にはエラーは発生しませんが、インストール後には `Buffer I/O error`がログに記録され、2TB超の LUNを正常に扱う事ができません。また、インストール時に 2TB超の LUNが存在している場合、インストーラの DiskDruidで正常表示が可能ですが、インストーラは 2TB超の LUNに対応していません。`最大許容量まで使用`オプションを利用しても 2TB迄(2097149MB - この容量はディスク構成により変わる可能性があります)しか確保できません。また `空き - 自由領域`として認識されている LUN自体を直接 `編集`して全容量をパーティションとして確保使用とす ると `Partition failed: シリンダベースパーティションを確保できませんでした`とエラーとなります。このため、2TB超の LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。
RHEL4/U8の場合 - ccissドライバは HP提供の DUD/v2.6.20-23以降が必要となります。それ以外は RHEL4/U7の場合と同じです。
インストール時に /boot, /は 2TB以下の LUNに配置してください。
インストール後に、2TB超 LUNに対するパーティション設定を行います。この際 fdiskは GPTディスクラベルを扱えませんので partedを利用します。
 |
#parted /dev/cciss/c0d1
(parted) mklable
New disk label tyep? [msdos]? ⇒ `gpt`
(parted) print
Disk geometry for /dev/cciss/c0d1: 0.000-2856490.242 megabytes
Disk label type: gpt
(parted) mkpart
Partition name? []?
File system type? [ext2]?
Start? ⇒ `0`
End? ⇒ `2856490`
(parted) print
Number Start End File system Name Flags
1 0.017 2856490.226
(parted) quit
#
#time mke2fs -j -T largefile4 /dev/cciss/c0d1p1
real 55.548s
#mkdir /test
#mount /dev/cciss/c0d1p1 /test
#df
/dev/cciss/c0d1p1 2924762680 107544 2778402840 1% /test |
注: largefile4は 4MB毎に inodeを確保します。都度、システムに適したものに変更してください。 |
SLES11のインストーラは GPTディスクラベルに対応しています。LUNに MS-DOSディスクラベルが既に付与されている場合、インストーラが GPTディスクラベルへの変換を行う事を確認しました。
標準装備される ccissドライバも 2TB超への対応が行われています。
インストーラは GPTディスクラベルに対応しています。/bootと /を 2TB以下の LUN上へ配置しなければならない事以外に制限はありません。これ以外には特別な作業は不要です。既に MS-DOSディスクラベルが存在していても GPTディスクラベルへ変換してくれます。
インストール後にディスク操作をする場合には、partedを利用してください。fdiskは GPTディスクラベルへ対応していません。
non-UEFI(BIOS)システムに於ける 2.2TB超 LUNからのシステム起動が SP2よりサポートされました。詳細は SP2のリリースノートをご覧ください。
| 注: |
以前本頁には GPTディスクラベルが付与されたシステムからの直接起動について記載していましたが、SP1のリリースノートに x86_64システムと UEFIを組み合わせたものを Novell社が正式サポートするとの記載が行われました。システムを起動する LUNは、別途 MS-DOSラベルが付与された 2TB以下の LUNを用意し、そちらから起動してください。 |
|
SLES10/SP0および SLES10/SP1のインストーラは共に GPTディスクラベルには完全に対応していませんが、付与されているディスクラベルと操作の手順によっては CHS geometryの警告等が表示されます。また、MS-DOSディスクラベルが既に付与されている場合には、そのまま 2TB超の操作ができてしまいます。 SLES10/SP2でインストーラは GPTディスクラベルに対応しました。但し、既存 LUNに MS-DOSディスクラベルが付与されてしまっている場合には、GPTディスクラベルへの変換までは行いませんので、[エキスパート設定]の `パーティションテーブルとディスクラベルを削除`を行ってから、一旦システムを再起動してください。
SLES10/SP0メディア標準装備の ccissドライバ v2.6.10では 2TB超 LUNは認識できませんので、ccissドライバは HP提供の DUD/cciss v3.6.16-4以降が必要となります。
ちなみに、これより古い HP提供の DUD/cciss v3.6.14-8では 2TB超 LUNの認識は可能ですが、パーティション操作が正常に行えません。
SLES10/SP1メディアに標準装備の ccissドライバは前述とバージョンが近い v3.6.14ですが、パーティション操作も可能です。
SLES10/SP0の場合 - インストール時に 2TB超の LUNが存在していても問題ありませんが、この LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。
SLES10/SP1の場合 - インストール時に tty2で partedの操作を行った後一旦リブートする等して GPTディスクラベルを予め付与していればインストール段階でも 2TB超 LUNの操作が可能です。
SLES10/SP2の場合 - インストーラが GPTディスクラベルに対応したため、/bootを 2TB以下の LUN上へ配置しなければならない事以外に制限はありません。これ以外には特別な作業は不要です。但し、既に MS-DOSディスクラベルが存在している場合にはラベルを削除する事に気をつけてください。/パーティションも 2TBを超えた LUN上に配置が可能な事を確認しました。
インストール時に /boot, /は 2TB以下の LUNに配置してください。但し、SP2の場合、/は 2TB超の LUNに配置しても構いません(SP2未満でも技術的には可能と思われますが、推奨しません)。
SP2未満の場合、インストール後に、2TB超 LUNに対するパーティション設定を行います。この際 fdiskは GPTディスクラベルを扱えませんので partedを利用します。 また、SP2であっても 2TB超 LUNに対するパーティション設定には partedを利用します。fdiskは 2TB超 LUN未対応ですので利用しないでください。
 |
#parted /dev/cciss/c0d1
(parted) mklable
New disk label tyep? [msdos]? ⇒ `gpt`
(parted) print
Disk /dev/cciss/c0d1: 2995GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
(parted) mkpart
Partition type? [primary]?
File system type? [ext2]? ⇒ `reiser`
Start? ⇒ `0`
End? ⇒ `2995G`
(parted) print
Number Start End Size File system Name Flags
1 17KB 2995GB 2995GB reiserfs
(parted) quit
#
#time mkreiserfs /dev/cciss/c0d1p1
real 45.031s
#mkdir /test
#mount /dev/cciss/c0d1p1 /test
#df
/dev/cciss/c0d1p1 2924956680 32840 2924923840 1% /test |
|
SLES9/SP3, SLES9/SP4のインストーラは GPTディスクラベルに対応していません。
SLES9/SP3の場合 - ccissドライバは HP提供の DUD/cciss v2.6.16-5以降が必要となります。本ディストリビューションに標準搭載されている ccissドライバでは 2TB超 LUNを正常に扱う事ができません。
SLES9/SP4の場合 - ccissドライバは HP提供の DUD/cciss v2.6.18-10以降が必要となります。本ディストリビューションに標準搭載されている ccissドライバでは 2TB超 LUNを正常に扱う事ができません。
インストール時に 2TB超の LUNが存在していても問題ありませんが、この LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください(MS-DOSディスクラベルのままで設定される場合があります)。
インストール時に /boot, /は 2TB以下の LUNに配置してください。
インストール後に、2TB超 LUNに対するパーティション設定を行います。この際 fdiskは GPTディスクラベルを扱えませんので partedを利用します。
 |
#parted /dev/cciss/c0d1
(parted) mklable
New disk label tyep? [msdos]? ⇒ `gpt`
(parted) print
Disk geometry for /dev/cciss/c0d1: 0.000-2856490.242 megabytes
Disk label type: gpt
(parted) mkpart
Partition type? [primary]?
File system type? [ext2]? ⇒ `reiser`
Start? ⇒ `0`
End? ⇒ `2856490`
(parted) print
Number Start End File system Name Flags
1 0.017 2856490.226 reiserfs
(parted) quit
#
#time mkreiserfs /dev/cciss/c0d1p1
real 29.115s
#mkdir /test
#mount /dev/cciss/c0d1p1 /test
#df
/dev/cciss/c0d1p1 2924956680 32840 2924923840 1% /test |
|
Asianux 3.0のインストーラ Anacondaは SP1で GPTディスクラベルに対応しました。
Asia3/BASE(SP0)の場合 - メディアに同梱されている cciss v3.6.14-RH1は 2TB超 LUNに対応していないため、利用できません。
Asia3/SP1の場合 - メディアに同梱されている cciss v3.6.16-RH1で 2TB超 LUNに対応しました。但し、GPTディスクラベルからシステムを直接起動する事はできませんので /bootと /を 2TB以下の LUNに配置してください(技術的には /も 2TB超 LUNに配置できる事を確認しています)。インストーラは 2TB超の LUNを扱えます。この際、インストーラは 2TB超 LUNに対して自動的に GPTディスクラベルを付与しますので、インストールの段階で 2TB超の LUN上にパーティションの作成作業を行う事が可能です。
|
Turbo11SEのインストーラは 2TB超 LUNであっても 2TB迄の容量しか認識しません。
Turbo11SEに標準搭載されている cciss v3.6.14は 2TB超 LUNを扱うための patchが適用さており、そのまま利用が可能です。
インストール時に 2TB超の LUNが存在していても問題ありませんが、この LUNへの操作はインストール後に partedで別途操作しますので、インストール時にはパーティションを割り当てないでください。
インストール時に /boot, /は 2TB以下の LUNに配置してください。
インストール後に、2TB超 LUNに対するパーティション設定を行います。この際 fdiskは GPTディスクラベルを扱えませんので partedを利用します。
 |
 |
#parted /dev/cciss/c0d1
(parted) mklable
New disk label tyep? [msdos]? ⇒ `gpt`
(parted) print
Disk /dev/cciss/c0d1: 2995GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
(parted) mkpart
Partition type? [primary]?
File system type? [ext2]? ⇒ `reiser`
Start? ⇒ `0`
End? ⇒ `2995G`
(parted) print
Number Start End Size File system Name Flags
1 17KB 2995GB 2995GB reiserfs
(parted) quit
#
#time mkreiserfs /dev/cciss/c0d1p1
real 45.031s
#mkdir /test
#mount /dev/cciss/c0d1p1 /test
#df
/dev/cciss/c0d1p1 2924762680 205944 2778304440 1% /test |
|
- SmartArray P800,P600
- 750GB HDD x4基
|
|