Azure

Azure VM 上の CentOS7 のディスク容量を拡張する

More than 1 year has passed since last update.

CentOS7 の VM の作成

Azure のポータルで適切なサイズの VM を通常の手順で作成してください。

ディスク拡張

  • 作成した VM を Azure のポータルから一度停止してください。
  • Azure ポータルの VM のページのメニューから ディスク を選択してください。
  • OS ディスク に表示されているディスクを選択してください。
  • サイズ を変更して Save ボタンをクリックしてください。
  • 停止していた VM を Azure のポータルから起動してください。

パーティション設定

VM に SSH でログインして以下を実行してください。
まず、ディスク容量が増えていることを確認してください。

$ lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0      2:0    1    4K  0 disk
sda      8:0    0 1023G  0 disk  ← sda が 1023G になっている
├─sda1   8:1    0  500M  0 part /boot
└─sda2   8:2    0 29.5G  0 part /
sdb      8:16   0   56G  0 disk
└─sdb1   8:17   0   56G  0 part /mnt/resource

fdisk コマンドで /dev/sda のプライマリーパーティションを一度削除して、最大容量で再作成します。

$ sudo fdisk /dev/sda

The device presents a logical sector size that is smaller than
the physical sector size. Aligning to a physical sector (or optimal
I/O) size boundary is recommended, or performance may be impacted.
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): d ← `d` を入力してパーティションを削除
Partition number (1,2, default 2): 2 ← `2` を入力して削除対象のパーティション番号を指定
Partition 2 is deleted

Command (m for help): n ← `n` を入力してパーティションを作成
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): p ← `p` を入力してプライマリーパーティションを指定
Partition number (2-4, default 2): 2 ← `2` を入力してパーティション番号を指定
First sector (1026048-2145386495, default 1026048): ← 空のままエンターでデフォルト値を使用
Using default value 1026048
Last sector, +sectors or +size{K,M,G} (1026048-2145386495, default 2145386495): ← 空のままエンターでデフォルト値を使用
Using default value 2145386495
Partition 2 of type Linux and of size 1022.5 GiB is set

Command (m for help): w ← `w` を入力して変更したパーティションテーブルをディスクに書き込んで終了
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.

VM を再起動しないと変更が適用されないので Azure のポータルから VM を再起動してください。

VM に再度ログインし、ルートパーティションを拡張します。

$ sudo xfs_growfs /dev/sda2
meta-data=/dev/sda2              isize=512    agcount=4, agsize=1934016 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=7736064, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=3777, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 7736064 to 268045056
  • 拡張前
$ lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0      2:0    1    4K  0 disk
sda      8:0    0 1023G  0 disk
├─sda1   8:1    0  500M  0 part /boot
└─sda2   8:2    0 29.5G  0 part /
sdb      8:16   0   56G  0 disk
└─sdb1   8:17   0   56G  0 part /mnt/resource

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        30G  1.9G   28G   7% /
devtmpfs         14G     0   14G   0% /dev
tmpfs            14G     0   14G   0% /dev/shm
tmpfs            14G  8.3M   14G   1% /run
tmpfs            14G     0   14G   0% /sys/fs/cgroup
/dev/sda1       497M   87M  410M  18% /boot
/dev/sdb1        55G   53M   53G   1% /mnt/resource
tmpfs           2.8G     0  2.8G   0% /run/user/1000
  • 拡張後
$ lsblk
NAME   MAJ:MIN RM    SIZE RO TYPE MOUNTPOINT
fd0      2:0    1      4K  0 disk
sda      8:0    0   1023G  0 disk
├─sda1   8:1    0    500M  0 part /boot
└─sda2   8:2    0 1022.5G  0 part /
sdb      8:16   0     56G  0 disk
└─sdb1   8:17   0     56G  0 part /mnt/resource

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2      1023G  1.9G 1021G   1% /
devtmpfs         14G     0   14G   0% /dev
tmpfs            14G     0   14G   0% /dev/shm
tmpfs            14G  8.3M   14G   1% /run
tmpfs            14G     0   14G   0% /sys/fs/cgroup
/dev/sda1       497M   87M  410M  18% /boot
/dev/sdb1        55G   53M   53G   1% /mnt/resource
tmpfs           2.8G     0  2.8G   0% /run/user/1000

作業は以上となります。

参考資料