EC2でCentOS5.9を使う際にVolumeが拡張されなかった時の対処メモ

EC2でCentOS5.9のイメージを使って500GBのストレージと共にインスタンスを作ったら、10GBくらいしか認識されていなかった・・・。どうやらCentOSをEC2で使う時にはパーティションとかいろいろやらなきゃいけない様子。ググッて出てくる情報はCentOS6以降に関するものだけで、使えないコマンドやインストールするのが面倒なコマンドが前提になっていたので改めてメモを残します。システム移管などで古い環境を使わざるを得ない時の参考にしてください。

複数環境を触りつつ手順書を作りつつだったので、手順書からコピペした歳にrootユーザーなのにsudoしたりしてますが気にしないで下さい。あとボリュームだったりパーティションだったり領域だったりと、いろんな単語の意味を勘違いして使ってるかもしれません。ツッコミお待ちしております・・・orz

# 参考にさせて頂いたサイト

http://www.masatom.in/pukiwiki/VMware/ESXi/LVM%A4%CE%A5%C7%A5%A3%A5%B9%A5%AF%B3%C8%C4%A5/

# 事象

```shell-session
df -h
```

<img width="576" alt="スクリーンショット 2016-08-15 16.38.26.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/4e846320-4054-a7ef-a45c-0815c4fab9fd.png">

こんな感じで10GBくらいしか認識されていない。500GBで作ったのになぜ・・・

# おおまかな手順

1. 認識されていない領域を使って新しくパーティションを作る。
2. 作ったパーティションをLVMのグループに追加する。
3. リサイズする。

LVMというのは複数の物理領域を1つの論理領域として扱える仕組みです。

# やってみよう

## 1. 認識されていない領域を使ってパーティションを作る。

### 今のパーティションを確認する。

```shell-session
fdisk -l
```

<img width="502" alt="スクリーンショット 2016-08-15 16.43.48.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/d4c627eb-14f4-ba6c-5863-0a91921a710b.png">

536.8GBあるということはここでは表示されていますね。
しかし `/dev/hda1` と `/dev/hda2` というデバイスのサイズを合わせても全然足りません。余されている領域を使って、新しいパーティションを作りましょう。
パーティションを作るには `fdisk` コマンドを使います。

```shell-session
fdisk /dev/hda
```

<img width="471" alt="スクリーンショット 2016-08-15 16.48.20.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/ba44ec45-5740-f136-fb35-d279d152f80d.png">

コマンドを実行するとfdiskのコンソールが立ち上がります。ここでfdiskのコマンドを打っていくことでパーティションの作成・削除などができます。ここでも一応パーティションを確認。

```shell-session
p
```

ちなみに `/dev/hda` というのは僕の環境下での話なので、上の確認コマンドで `/dev/sda1` とか出ていた人は `fdisk /dev/sda` とかにしましょう。

### 新しくパーティションを作る。

新しいパーティションを使うには `n` コマンドです。次に拡張するか作成するかを選びます。 `p` を入力しましょう。作成時には何個目のパーティションを作るのかも入力します。確認時に2つ表示されていたので今回は `3` です。

```shell-session
n
```
```shell-session
p
```
```shell-session
3
```
<img width="647" alt="スクリーンショット 2016-08-15 16.57.22.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/07441707-8fea-4e08-39e6-1d0afdeb588f.png">

ここまでいくと作りたいパーティションの開始地点と終了地点のシリンダを入力します。どちらもデフォルト値が最小値と最大値になっているので、何も入力せずに `Enter` を押せば、余っている領域を全て割り当てられます。

終わったらもう一度 `p` で結果を確認してみましょう。

<img width="479" alt="スクリーンショット 2016-08-15 17.12.39.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/53d04f94-934e-4ba7-4785-d0aebb6e22b1.png">

新しいパーティションが表示されていますね。今回は後でLVMとして1つの領域として扱うことになりますので、作ったパーティションをLVM用の設定に変更します。
設定のためには `t` です。さらに、LVMを意味する `8e` を入力します。

```shell-session
t
```
```shell-session
8e
```

<img width="475" alt="スクリーンショット 2016-08-15 17.15.24.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/56934df7-abd8-43fd-47e0-08a1527ece29.png">

### パーティションの設定を反映する。

ここまで入力したものはすぐに反映されません。 `p` で確認すると実際に値が変更されて表示されますが、これは予定としての表示です。

設定を反映するには `w` です。

```shell-session
w
```

<img width="736" alt="スクリーンショット 2016-08-15 17.20.34.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/44739e05-6317-63ea-8735-8c93df82ca30.png">

これでパーティションは完成です。なにか失敗とか出ていますが大丈夫です。再起動しましょう。

```shell-session
reboot
```

## 2. 作ったパーティションをLVMのグループに追加する。

作ったパーティションをLVMのグループ（これらを1つのデバイスとして扱うぞというまとまり）に加えてあげましょう。

作ったLVMパーティションを物理領域として登録する。

```shell-session
pvcreate /dev/hda3
```

<img width="370" alt="スクリーンショット 2016-08-15 17.31.26.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/4ce579d0-355f-ee8c-be0f-1d87d04354ae.png">

物理領域をグループに追加する。

```shell-session
vgextend VolGroup00 /dev/hda3
```

<img width="376" alt="スクリーンショット 2016-08-15 17.31.36.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/df9f886b-139f-0dbf-3809-436ae48055df.png">


領域を拡張する。

```shell-session
lvextend -L +450Gb /dev/mapper/VolGroup00-LogVol00
```

<img width="562" alt="スクリーンショット 2016-08-15 17.32.12.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/268ddafd-4fc0-e746-577b-a39c5396ed75.png">

これ正しくは `+489GB` ですね。余りが出て勿体無い。どこ見ればズバッと割り当てるサイズがわかるんだ・・・。

## 3. リサイズする。

ここまでくればリサイズして終わりです。

```shell-session
resize2fs /dev/mapper/VolGroup00-LogVol00
```

<img width="639" alt="スクリーンショット 2016-08-15 17.33.05.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/d30cdc57-1c5f-a714-2be9-cdf54a91fce9.png">

ちょっと時間がかかります。終わったら結果を確認してみましょう！

<img width="440" alt="スクリーンショット 2016-08-15 17.33.23.png" src="https://qiita-image-store.s3.amazonaws.com/0/31401/81248f02-53fe-3329-5092-4a207e22ced1.png">

やったぜ！