VirtualBox上のOracleLinuxのディスク拡張してみた


メモメモ程度に。。。。

-

# 1. 検証環境について

[SW]

- VirtualBox バージョン 5.0.10 r104061

[Guest OS]

- OEL6.4

[Host OS]

- OS X El Capitan ver10.11.2


-

# 2. 検証結果

拡張前のGuest OSのディスクサイズは `12GB` 。
これを `25GB` まで拡張してみる。

![kobito.1451705358.529264.png](https://qiita-image-store.s3.amazonaws.com/0/33479/45148434-7cd8-9c3c-40f3-64ef4647200e.png "kobito.1451705358.529264.png")
![kobito.1451705370.594674.png](https://qiita-image-store.s3.amazonaws.com/0/33479/7541c4f2-bda2-45a2-e235-5d78aa7d7b69.png "kobito.1451705370.594674.png")

````ログ
MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ VBoxManage list hdds
UUID:           ad0c94e5-c5d0-4179-9afd-ecc026079da5
Parent UUID:    base
State:          created
Type:           normal (base)
Location:       /Users/users/VirtualBox VMs/OEL64/OEL64.vmdk
Storage format: VMDK
Capacity:       12288 MBytes
Encryption:     disabled

MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ VBoxManage showhdinfo ad0c94e5-c5d0-4179-9afd-ecc026079da5
UUID:           ad0c94e5-c5d0-4179-9afd-ecc026079da5
Parent UUID:    base
State:          created
Type:           normal (base)
Location:       /Users/users/VirtualBox VMs/OEL64/OEL64.vmdk
Storage format: VMDK
Format variant: dynamic default
Capacity:       12288 MBytes
Size on disk:   3012 MBytes
Encryption:     disabled
In use by VMs:  OEL64 (UUID: a97f31f2-933a-410f-aef5-12e5ab2f91b4)
MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ VBoxManage clonehd "/Users/users/VirtualBox VMs/OEL64/OEL64.vmdk" "/Users/users/VirtualBox VMs/OEL64/clone.vdi" --format vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone medium created in format 'vdi'. UUID: 56d424cf-7f33-46e0-9251-0a96e0688fe3
MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ VBoxManage list hdds
UUID:           ad0c94e5-c5d0-4179-9afd-ecc026079da5
Parent UUID:    base
State:          created
Type:           normal (base)
Location:       /Users/users/VirtualBox VMs/OEL64/OEL64.vmdk
Storage format: VMDK
Capacity:       12288 MBytes
Encryption:     disabled

UUID:           56d424cf-7f33-46e0-9251-0a96e0688fe3
Parent UUID:    base
State:          created
Type:           normal (base)
Location:       /Users/users/VirtualBox VMs/OEL64/clone.vdi
Storage format: vdi
Capacity:       12288 MBytes
Encryption:     disabled

MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ VBoxManage modifyhd "/Users/users/VirtualBox VMs/OEL64/clone.vdi" --resize 25600
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ VBoxManage clonehd "/Users/users/VirtualBox VMs/OEL64/clone.vdi" "/Users/users/VirtualBox VMs/OEL64/OEL64_2.vmdk" --format vmdk
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone medium created in format 'vmdk'. UUID: 9b9a2a11-8322-454d-a8aa-dc55f04f861f
MacBookAir:VirtualBox VMs users$ 
MacBookAir:VirtualBox VMs users$ 
````


拡張後。

![kobito.1451706173.787778.png](https://qiita-image-store.s3.amazonaws.com/0/33479/a01109f5-3bf8-eba9-0e03-779e45347f06.png "kobito.1451706173.787778.png")
![kobito.1451706183.586528.png](https://qiita-image-store.s3.amazonaws.com/0/33479/5aee1388-b028-9641-3d9d-b462b84c3db1.png "kobito.1451706183.586528.png")


これだけではまだOS側では拡張後のサイズで認識されていないので、事後作業していきます。

現在のサイズを確認する。

````
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# df -Ph
Filesystem            Size  Used Avail Use% マウント位置
/dev/mapper/VolGroup-lv_root  7.5G  2.8G  4.4G  40% /
tmpfs                1004M  112K 1004M   1% /dev/shm
/dev/sda1             485M   55M  405M  12% /boot
[root@localhost ~]# 
````

パーティションを作成する。

````
[root@localhost ~]# 
[root@localhost ~]# fdisk /dev/sda

警告: DOS互換モードは廃止予定です。このモード (コマンド 'c') を止めることを
      強く推奨します。 and change display units to
         sectors (command 'u').

コマンド (m でヘルプ): 
コマンド (m でヘルプ): p

ディスク /dev/sda: 26.8 GB, 26843545600 バイト
ヘッド 255, セクタ 63, シリンダ 3263
Units = シリンダ数 of 16065 * 512 = 8225280 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x0004edf0

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sda1   *           1          64      512000   83  Linux
パーティション 1 は、シリンダ境界で終わっていません。
/dev/sda2              64        1567    12069888   8e  Linux LVM

コマンド (m でヘルプ): 
コマンド (m でヘルプ): 
コマンド (m でヘルプ): m       
コマンドの動作
   a   ブート可能フラグをつける
   b   bsd ディスクラベルを編集する
   c   dos 互換フラグをつける
   d   領域を削除する
   l   既知の領域タイプをリスト表示する
   m   このメニューを表示する
   n   新たに領域を作成する
   o   新たに空の DOS 領域テーブルを作成する
   p   領域テーブルを表示する
   q   変更を保存せずに終了する
   s   空の Sun ディスクラベルを作成する
   t   領域のシステム ID を変更する
   u   表示/項目ユニットを変更する
   v   領域テーブルを照合する
   w   テーブルをディスクに書き込み、終了する
   x   特別な機能 (エキスパート専用)

コマンド (m でヘルプ): 
コマンド (m でヘルプ): 
コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本パーティション (1-4)
p
パーティション番号 (1-4): 3
最初 シリンダ (1567-3263, 初期値 1567): 
初期値 1567 を使います
Last シリンダ, +シリンダ数 or +size{K,M,G} (1567-3263, 初期値 3263): 
初期値 3263 を使います

コマンド (m でヘルプ): 
コマンド (m でヘルプ): p

ディスク /dev/sda: 26.8 GB, 26843545600 バイト
ヘッド 255, セクタ 63, シリンダ 3263
Units = シリンダ数 of 16065 * 512 = 8225280 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x0004edf0

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sda1   *           1          64      512000   83  Linux
パーティション 1 は、シリンダ境界で終わっていません。
/dev/sda2              64        1567    12069888   8e  Linux LVM
/dev/sda3            1567        3263    13627135+  83  Linux

コマンド (m でヘルプ): 
コマンド (m でヘルプ): 
コマンド (m でヘルプ): t
パーティション番号 (1-4): 3
16進数コード (L コマンドでコードリスト表示): 8e
領域のシステムタイプを 3 から 8e (Linux LVM) に変更しました

コマンド (m でヘルプ): p

ディスク /dev/sda: 26.8 GB, 26843545600 バイト
ヘッド 255, セクタ 63, シリンダ 3263
Units = シリンダ数 of 16065 * 512 = 8225280 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x0004edf0

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sda1   *           1          64      512000   83  Linux
パーティション 1 は、シリンダ境界で終わっていません。
/dev/sda2              64        1567    12069888   8e  Linux LVM
/dev/sda3            1567        3263    13627135+  8e  Linux LVM

コマンド (m でヘルプ): 
コマンド (m でヘルプ): 
コマンド (m でヘルプ): w
パーティションテーブルは変更されました！

ioctl() を呼び出してパーティションテーブルを再読込みします。

警告: パーティションテーブルの再読込みがエラー 16 で失敗しました: デバイスもしくはリソースがビジー状態です。
カーネルはまだ古いテーブルを使っています。新しいテーブルは
次回リブート時か、partprobe(8)またはkpartx(8)を実行した後に
使えるようになるでしょう
ディスクを同期しています。
````

変更内等を反映するために再起動する。

````
[root@localhost ~]# 
[root@localhost ~]# reboot

Broadcast message from user@localhost.localdomain
	(/dev/pts/1) at 17:22 ...

The system is going down for reboot NOW!
[root@localhost ~]# 
[root@localhost ~]# Connection to 192.168.2.115 closed by remote host.
Connection to 192.168.2.115 closed.
````

PVを作成する。

````
[root@localhost ~]# 
[root@localhost ~]# pvcreate /dev/sda3
  Physical volume "/dev/sda3" successfully created
[root@localhost ~]# 
````

VGへPVを追加する。

````
[root@localhost ~]# 
[root@localhost ~]# vgextend VolGroup /dev/sda3
  Volume group "VolGroup" successfully extended
[root@localhost ~]# 
````

LVを追加する。

````
[root@localhost ~]# 
[root@localhost ~]# lvextend -l +100%FREE /dev/mapper/VolGroup-lv_root
  Extending logical volume lv_root to 20.56 GiB
  Logical volume lv_root successfully resized
[root@localhost ~]# 
````

ファイルサイズを拡張する。

````
[root@localhost ~]# 
[root@localhost ~]# resize2fs /dev/mapper/VolGroup-lv_root
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mapper/VolGroup-lv_root is mounted on /; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 2
Performing an on-line resize of /dev/mapper/VolGroup-lv_root to 5390336 (4k) blocks.
The filesystem on /dev/mapper/VolGroup-lv_root is now 5390336 blocks long.

[root@localhost ~]# 
````

拡張されたことを確認する。

````
[root@localhost ~]# 
[root@localhost ~]# df -Ph
Filesystem            Size  Used Avail Use% マウント位置
/dev/mapper/VolGroup-lv_root   21G  2.9G   17G  15% /
tmpfs                1004M   88K 1004M   1% /dev/shm
/dev/sda1             485M   55M  405M  12% /boot
[root@localhost ~]# 
[root@localhost ~]# 
````

終わり。