3TBのHDD
今回データ用のディスクとして、「Western Digital WD30EZRX-1TBP」を用意しました。実際にフォーマットを行い、何か問題が発生しないか確認してみました。
結果
長くなるので結果から書きます。容量に限らず「Advanced Format 512e」を採用したHDDの場合、以下の手順でフォーマットを行います。
- GPartedでGPTパーティションテーブルを作成(2TB以下の時はMBRでも良い)
- GPartedで位置合わせ「MiB」を選択し、パーティションを作成
- 作成したパーティションをext4でフォーマット
これで問題なく3TBのHDDを利用できました。
「Advanced Format 512e」を採用したHDDの場合、「ディスク」でフォーマットを行うとパーティションの開始位置が物理セクターの境界からずれます。
Ubuntu 12.04の「ディスクユーティリティ」も同様です。
GPT
基本的な話として3TBのHDDを利用するには、パーティションテーブルをGPTにする必要があります。MBRでは3TBの容量が利用できません。
ハードウェアやドライバーの対応
3TBのHDDを利用するには、ハードウェアやドライバーの対応が必要になります。ハードウェアの対応状況は、販売元や製造元・開発元のWebページを確認するとよいでしょう。
中にはファームウェアの更新をすることで、3TBのHDDに対応できる製品もあります。
外付けHDDケース
外付けHDDケースに3TBのHDDを入れて利用する場合は、外付けHDDケースが3TBのHDDに対応していることを確認しておきましょう。フェイクRAID(Firmware/driver-based RAID)
チップセットが提供するRAID機能を利用したRAIDです。ファームウェア及びドライバー(dmraid等含め)の対応状況を確認しておきましょう。
ちなみにUbuntu 12.04以降の「dmraid」はGPTに対応しています。
GPTに対応したバージョンは「1.0.0.rc16-4.1ubuntu5」です。
dmraid (1.0.0.rc16-4.1ubuntu5) precise; urgency=low
* Switch to using kpartx to activate partitions.
This allows dmraid to work on gpt formatted disks.
* Switch to using kpartx to activate partitions.
This allows dmraid to work on gpt formatted disks.
Advanced Format 512e
3TBのHDDに限った話ではありませんが、「Advanced Format 512e」を採用したHDDが販売されています。「Western Digital WD30EZRX-1TBP」も「Advanced Format 512e」を採用しています。
「Advanced Format 512e」は「AFT」と表現されることもあります。
セクターのサイズ
「Advanced Format 512e」では、物理セクターが従来の512バイトから4096バイトに拡張されていますが、論理セクターは512バイトのままです。そのため、各パーティションの開始位置(論理セクター)が物理セクターの境界と一致するように調整する必要があります。
4096/512=8なので、各パーティションの開始位置(論理セクター)が8で割り切れるようにします。
最初のパーティションの開始位置
最初のパーティションの開始位置は、2048セクターがお勧めです。ちなみにWindowsでは、2048セクターに最初のパーティションを配置します。
また、GPartedはMiB単位でパーティションの開始位置を調整することができますが、MiB単位で最初のパーティションの開始位置を調整すると、2048になります。
1MiB(1024*1024バイト) / 512バイト(論理セクターのサイズ)= 2048セクター
パーティションの開始位置がずれると・・・
HDDのパフォーマンスが落ちます。HDDにアクセスできなくなるようなことはありません。
HDDがAdvanced Format 512eを採用しているか調べる方法
HDDが「Advanced Format 512e」を採用しているかどうか調べる方法です。「端末」を起動し、以下のコマンドを実行します。
sudo parted -l
HDDが「Advanced Format 512e」を採用している場合、以下のように表示されます。
モデル: ATA WDC WD30EZRX-00D (scsi)
ディスク /dev/sdc: 3001GB
セクタサイズ (論理/物理): 512B/4096B
・・・
ディスク /dev/sdc: 3001GB
セクタサイズ (論理/物理): 512B/4096B
・・・
環境について
今回は内蔵用HDDとして、SATA3で接続します。OSはUbuntu 13.04 64bitです。
HDDは「Western Digital WD30EZRX-1TBP」です。
また上記で書いた通り、HDDは「Advanced Format 512e」を採用しています。
システムログでは、HDDは以下のように認識されています。
ata2: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
ata2.00: ATA-9: WDC WD30EZRX-00DC0B0, 80.00A80, max UDMA/133
ata2.00: 5860533168 sectors, multi 16: LBA48 NCQ (depth 31/32), AA
ata2.00: configured for UDMA/133
scsi 1:0:0:0: Direct-Access ATA WDC WD30EZRX-00D 80.0 PQ: 0 ANSI: 5
sd 1:0:0:0: Attached scsi generic sg1 type 0
sd 1:0:0:0: [sdc] 5860533168 512-byte logical blocks: (3.00 TB/2.72 TiB)
sd 1:0:0:0: [sdc] 4096-byte physical blocks
sd 1:0:0:0: [sdc] Write Protect is off
sd 1:0:0:0: [sdc] Mode Sense: 00 3a 00 00
sd 1:0:0:0: [sdc] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
ata2.00: ATA-9: WDC WD30EZRX-00DC0B0, 80.00A80, max UDMA/133
ata2.00: 5860533168 sectors, multi 16: LBA48 NCQ (depth 31/32), AA
ata2.00: configured for UDMA/133
scsi 1:0:0:0: Direct-Access ATA WDC WD30EZRX-00D 80.0 PQ: 0 ANSI: 5
sd 1:0:0:0: Attached scsi generic sg1 type 0
sd 1:0:0:0: [sdc] 5860533168 512-byte logical blocks: (3.00 TB/2.72 TiB)
sd 1:0:0:0: [sdc] 4096-byte physical blocks
sd 1:0:0:0: [sdc] Write Protect is off
sd 1:0:0:0: [sdc] Mode Sense: 00 3a 00 00
sd 1:0:0:0: [sdc] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
ディスクでフォーマットするとどうなるか
Ubuntu 13.04にインストールされている「ディスク」でフォーマットしてみます。結果
結果から書きます。パーティションの開始位置が34になりました。
HDDが「Advanced Format 512e」を採用している場合、この方法でフォーマットしないでください。
この方法でフォーマットすると、パーティションの開始位置が物理セクターの境界からずれます。
1.HDDの選択
3TBのHDDを選択します。2.パーティションテーブルの作成
以下のようにGPT形式のパーティションテーブルを作成します。購入してきた未フォーマットのHDDは、パーティションを作成する前に必ずパーティションテーブルを作成してください。
パーティションテーブルを作成せずにパーティションを作成してしまうと、loopback(raw disk)デバイスになってしまいます。
loopbackはGPartedでの操作に制限がありますし、パーティションは1つしか作成できません。
また一般的にHDDに使用する形式ではありません。
パーティションテーブルを作成せずにパーティションを作成すると、GPartedでは以下のように作成したパーティションに感嘆符が表示されます。
パーティションのプロパティーを表示すると、以下のように注意が表示され操作が制限されます。
3.初期化の確認
以下の画面が表示されるので、「初期化」ボタンをクリックします。4.パーティションテーブル作成完了
以下のように「空き容量」が表示されます。5.パーティションの作成
次にパーティションを作成します。6.パーティション作成完了
ここでは「空き容量」を全て使い、1つのパーティションを作成しました。7.GPartedで確認
作成したパーティションの情報をGPartedで確認します。デバイスの情報を見ると、パーティションテーブルはGPTになっています。
パーティションの情報を表示すると、以下のように開始セクターが34になっています。
パーティションの開始位置を再調整する
すでに「ディスク」等でフォーマットを行い、パーティションの開始位置が物理セクターの境界からずれてしまっている場合、GPartedでパーティションを作り直すのが良いでしょう。しかしすでにそのパーティションを利用しており、 パーティションの作り直しを避けたい場合は、GPartedでパーティションの開始位置を再調整する方法を検討してみるのも良いです。
ただし時間がかかりますし、ファイルの損失に備えバックアップは必要です。