2012/07/23

ハードディスクの購入とパーティションサイズを検討した時のメモ

2年ほど前にBTOのパソコンで250GBのハードディスクを選択したんですが、仮想環境など利用するうち手狭になりました。容量自体は不足ないのですが、パーティティションの区切り方に問題があったようです。

現在のパーティション構成:

今思うと、どうしてこんなことをしたのか不思議な感じさえする「区画分け」になっています。「見通しの甘さ」がありましたが、それは「知らないことが多かった」せいだと思います。Linuxを使い始めたばかりの私には「適切な区分け」は難しい作業でした。

例えば、次のような構成なら特に問題はなかったかもしれません。

+--------------------+-+---------+---------------------------------------+
|      /dev/sda1     | |/dev/sda3|               /dev/sda4               |
|        64GiB       | |  16GiB  |                148GiB+                |
|        ntfs        | |  ext4   |                ext4                   |
|      windows7      | |  /      |                /home                  |
+--------------------+|+---------+---------------------------------------+
                      +---/dev/sda2(4GiB)Linux swap
これ(↑)は、2年ほど使ううちに考えた「今よりもましな構成の案」です。

パーティションを再構成して使いやすくしたいのですが、スムースに切り替えようと思えば新しいハードディスクを購入して入れ替えると間違いが少ないと思いましたので、使い方を整理して、機種選定を行いたいと思います。
  • Linux(メイン)とWindowsをデュアルブートする。
  • 仮想環境を割とよく使う。
  • サスペンドやハイバーネイトといった機能は使わない。
  • Linuxの入れ替えをスムースに行いたい。
  • とにかく安定して長く使えることが大事。
  • 高い性能は求めない。
  • 大容量を必要としない。

調べてみると、故障率を下げる要因に次のようなものがあることが分かりました。
  • プラッタの枚数が少ない。 → 1枚プラッタ
  • 回転数が低い。 → 5400rpm
  • 消費電力が低い。 → 4w以下

選定条件が決まったので候補を探すことにしたんですが、買い換え候補のハードディスクに「知らない技術や機能」が追加されていました。呼び名はメーカ独自のものらしいです。


新しい技術や機能:

  • Advanced Format Technology: 4KBセクタハードディスク
  • intellipower: 回転数の自動調整機能
  • intellipark: ヘッドの自動退避機能(8秒周期)

新しい機能について、「大きなお世話」と感じている人もいるようです。省エネタイプでとても魅力的でしたが、面倒は避けたいので機能のシンプルな製品を探すことにしました。

OSを入れるハードディスクとしては、とにかく「安定していること」が重要なので、今回は見送ります。最終的に決めたのは、次の製品です。


現行品と購入(予定)品:

項目 現行品 購入品 Note
型番 WD5000AAJX-75M0A0 WD5000AAKX 3.5"
インターフェイス SATA 2 SATA 3 3Gbps(300MB/s)/6Gbps(600MB/s)
容量 250GB 500GB -
セクタサイズ 512B 512B 古くからの小さいセクタです。
回転数 7200rpm 7200rpm 低速ではないですが、定速です。
キャッシュ 8MB 16MB -
シークタイム 8.9ms -ms -
プラッタ 160GB*2 500GB*1 枝番で枚数が分かるようです。
転送速度 - 126MB/s 最大値(Buffer to Disk)
Sequential Read 50MB/s *ベンチマーク -MB/s *ベンチマーク 転送速度の実効値(最大値)
Sequential Write 50MB/s *ベンチマーク -MB/s *ベンチマーク 転送速度の実効値(最大値)
消費電力 7.2w 6.1w アイドル時
騒音 25dBA 28dBA アイドル時
補)インターフェイス仕様が違いますが「下位互換性」があるようなので、コネクタ形状が同じなら問題なく使えると思います。

補)型番だけではプラッタ枚数は分からないようです。提供する側の人は「枝番」で枚数を区別できるようですが、一般には公開されないようです。転送速度などを頼りに推測する場合は、周辺の情報を集める必要もあると思います。

3つ上げた条件のうち、1つだけしか満たせませんでした。少し残念ですが、探すことにも疲れたので、この辺りでお終いにしようと思います。


AFT(Advanced Format Technology):

AFTは、ハードディスクの新しい規格に使われている技術の(メーカ独自の)呼称ということです。これまでハードディスクのセクタサイズは512バイトでしたが、新しい規格では4Kバイトになっているそうです。WindowsではVISTA以降で利用できるそうですが、Linuxの場合はどうなっているのかよくわかりません。


大容量ハードディスクでは4Kバイトセクタが当たり前となるようなので、仮想マシンで「fdisk」というツールの使い方を試してみることにしました。コマンドラインは次の通りです。
$ sudo fdisk /dev/sda
fdiskのバージョンは次の通りです。(ubuntu 10.04)
$ fdisk -v
fdisk (util-linux-ng 2.17.2)
最初に「DOS互換モードは廃止予定です。…」 というメッセージに従い、LBA方式でセクタを操作するモードに切り替えます。 その後はパーティションの始点を「8の倍数」で指定すればよいのですが、ツールの使い方を飲み込めるまでは結構難しかったです。

最終的には、ハードディスクの全セクタ数を把握して、各パーティションの開始セクタと終了セクタを「直接指示」する方法が確実だとわかりました。

直接指示した「始点」は次のように「8の倍数」です。1GiB分のセクタの倍数でもあります。終点に制限はないですが、パーティションのサイズがGiB単位になるよう調整しています。

パーティション 始点 終点 ブロック(KiByte) Note
/dev/sda1 2048 16777215 8387574(8GB-1MB) 512Byte*2048=1MiB
/dev/sda2 16777216 25165823 4194304(4GB) 1GB=4,194,304セクタで計算
/dev/sda3 25165824 41943039 8386608(8GB) -
/dev/sda4 41943040 - - 全部使う場合は終点指示は不要
補)仮想マシンでは、32GBの領域を確保し、8GB/4GB/8GB/12GBの区分けにしています。


最初のパーティションの始点は、「Windows7のパーティショニングツールとの兼ね合い」から「2048」が無難と推奨されていたので、その提案に従った結果です。

今度購入するハードディスクは「512バイト」セクタの製品ですが、将来4Kバイトセクタの製品を購入しても作業に困ることはないと思います。


新しいハードディスクのパーティションサイズ:

2年間での「/」領域の増加分を調べてみました。仮想マシンに新規インストールしたubuntuと実マシンにインストールしているubuntuのそれぞれで「ディスク使用量の解析」を実行すると、最初は2.6GBで、2年後には5.2GBになっていることがわかりました。

私の使い方ではシステム領域はそれほど増えなかったようなので、新しいハードディスクでは16GiBにしようと思います。5.2GBに対して十分な余裕がありますし、これ以上大きくてもメリットはないと思います。

+-------------------------------------+-------------------------------------+
| |/dev/sda2|        /dev/sda3        |             /dev/sda4               |
| |  16GiB  |         212GiB+         |              232GiB+                |
| |  ext4   |         ext4            |              ntfs                   |
| |  /      |         /home           |              Windows7               |
+|------------------------------------+-------------------------------------+
 +---/dev/sda1(4GiB)Linux swap
ubuntu(Linux)をメインに使います。Linuxからはntfs領域も操作できるので、普段は全ての領域を使えます。

スワップファイルは、主記憶と同じサイズにしておこうと思います。2割増くらいが「無難」かもしれませんが、スワップファイルに吐き出す頻度は少ないので、特に困ることはないと思います。

まとめ:

記録容量だけで選定するのは簡単ですが、「自分の使い方にあったものを探すのは大変」ということが分かりました。「壊れにくさ」と「扱いやすさ」を求めたわけですが、途中で挫折しています。売れ筋商品の中から選択するしかなかったからですが、私自身の調査能力の低さを悔やむしかありません。

Linuxのパーティションサイズを決めるのは最初は難しいと思います。使ってみないと「適切なサイズ」が分からないからです。パーティションを細分化することもあるようですが、その理由は私にはよくわかりません。今回、「/」と「/home」に分割することにしましたけど、この場合は「OS」の入れ替え作業が楽になるようです。その時が来れば分かると思いますが、もしかすると面倒なことが待っているのかもしれません。

0 件のコメント:

コメントを投稿