Ubuntu 16.04¶
注意
本マニュアルに記載のOSは2021年4月27日をもって提供終了しました。
[更新:2020年4月23日]
本手順書の対象は標準OSの Ubuntu 16.04 です。カスタムOSにてインストールされた Ubuntu 16.04 は対象外となります。
初期提供時の仮想ディスクパーティション構成を変更している場合、本手順書は対応しませんのでご注意ください。
本手順書で想定している仮想サーバのスペックは以下の通りです。実際のスペックは、お客様の実環境に合わせてお読み替えください。
– |
プラン |
仮想CPU |
仮想メモリ容量 |
仮想ディスク容量 |
---|---|---|---|---|
スケールアップ前 |
SSD 1G |
2CPU |
1024MB |
30GiB |
スケールアップ後 |
SSD 4G |
4CPU |
4096MB |
100GiB |
スケールアップを実施する¶
スケールアップは「コントロールパネル」からおこないます。
手順の詳細については、 スケールアップ をご覧ください。
ヒント
スケールアップ実施の前に、重要なデータのバックアップ取得をお勧めいたします。
ディスク拡張の準備作業¶
サーバを起動、ログイン¶
スケールアップ完了後、コントロールパネルの「起動」を押してサーバを起動します。
コントロールパネル上にある「コンソール」→「VNCコンソール」を使い、サーバが正常に起動できたことを確認します。
VNCコンソールまたはSSH経由で、サーバへ ubuntu ユーザーでログインします。
必要なパッケージをインストール¶
ディスクの状態の確認および拡張には、gdisk という名前のパッケージが必要です。もしインストールされていなければ、あらかじめインストールしておきます。
$ dpkg -l gdisk
dpkg-query: no packages found matching gdisk
$ sudo apt-get install -y gdisk
ディスクを拡張する¶
ディスクの状態を確認¶
現在のディスクの状況を確認します。
$ sudo gdisk -l /dev/vda
GPT fdisk (gdisk) version 1.0.1
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/vda: 62914560 sectors, 100.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): CC98BD66-8C2B-4F2F-A699-4BCDA3177FFC
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 62914526
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number Start (sector) End (sector) Size Code Name
1 2048 4095 1024.0 KiB EF02
2 4096 8392703 4.0 GiB 8200
3 8392704 62914526 26.0 GiB 8300 Linux filesystem
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
vda 253:0 0 30G 0 disk
tqvda1 253:1 0 1M 0 part
tqvda2 253:2 0 4G 0 part [SWAP]
mqvda3 253:3 0 26G 0 part /
gdisk コマンドの結果から /dev/vda のサイズは 100GB に拡張されたのが分かります。
しかし、OS 側からの認識状況を確認しますと、3つのパーティションとして認識している容量の合計は 30GB です。
また、lsblk コマンドの結果から、標準OSでインストールしたパーティション「tqvda1」「tqvda2」「mqvda3」の3つが確認できます。
パーティションをソートする¶
先ほどの gdisk コマンドの実行結果を見ますと、Total free space (合計空き容量)が正しく認識されていないことが分かります。
「2014 sectors (1007.0 KiB)」の表示、つまり空き容量が 1MB 程度ですが、本来は70GB あります。
これを整理(ソート)して正しい情報にするには、以下のコマンドを実行します。
$ sudo sgdisk -s /dev/vda
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot or after you
run partprobe(8) or kpartx(8)
The operation has completed successfully.
実行後、もう一度 gdisk コマンドでディスクの状況を確認します。
$ sudo gdisk -l /dev/vda
GPT fdisk (gdisk) version 1.0.1
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/vda: 209715200 sectors, 100.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): CC98BD66-8C2B-4F2F-A699-4BCDA3177FFC
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 209715166
Partitions will be aligned on 2048-sector boundaries
Total free space is 146802654 sectors (70.0 GiB)
Number Start (sector) End (sector) Size Code Name
1 2048 4095 1024.0 KiB EF02
2 4096 8392703 4.0 GiB 8200
3 8392704 62914526 26.0 GiB 8300 Linux filesystem
今度は Total free space が増えたのが分かります。
「146802654 sectors (70.0 GiB)」と表示されており、正常に空き容量を認識しました。
新しいパーティションを作成する¶
スケールアップにより増えたディスク容量を OS 認識ができましたので、gdisk コマンドで新しいディスクパーティションを作ります。
$ sudo gdisk /dev/vda
GPT fdisk (gdisk) version 1.0.1
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
*[ n ] コマンドを入力します。新しいパーティションを作るという意味です。*
Command (? for help): n
*Partition number はデフォルトの [ 4 ] にしますので、そのまま [ Enter ] キーを押します。*
Partition number (4-128, default 4):
*Fisrt sector/Last sector もデフォルトの数値にするので、そのまま [ Enter ] キーを押します。*
First sector (34-209715166, default = 62914560) or {+-}size{KMGTP}:
Last sector (62914560-209715166, default = 209715166) or {+-}size{KMGTP}:
*Partition Type もデフォルトの [ Linux filesystem ] で問題がなければ、そのまま [ Enter ] キーを押します。*
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):
Changed type of partition to 'Linux filesystem'
*作成完了したので、 [ p ] コマンドでパーティションテーブルの確認をします。*
Command (? for help): p
Disk /dev/vda: 209715200 sectors, 100.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): CC98BD66-8C2B-4F2F-A699-4BCDA3177FFC
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 209715166
Partitions will be aligned on 2048-sector boundaries
Total free space is 2047 sectors (1023.5 KiB)
*表示されている新しいパーティションテーブルにサイズなどの問題がないことを確認します。*
Number Start (sector) End (sector) Size Code Name
1 2048 4095 1024.0 KiB EF02
2 4096 8392703 4.0 GiB 8200
3 8392704 62914526 26.0 GiB 8300 Linux filesystem
4 62914560 209715166 70.0 GiB 8300 Linux filesystem
*問題がなければ [ w ] コマンドを入力します。*
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
*もう一度確認をして問題がなければ [ y ]を入力して、 [ Enter ] キーを押します。*
*このコマンドを実行すると、ディスクの書き換えが発生するので、必ず確認した上で実行しましょう。*
Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/vda.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot or after you
run partprobe(8) or kpartx(8)
The operation has completed successfully.
ファイルシステムを作る¶
新規作成したパーティションを利用するには、フォーマットして、マウントする必要があります。
以降の例ではファイルシステムを ext4 形式でフォーマットし、 /data にマウントする手順を説明します。
まず、新しいディスクパーティションがOS上にデバイスとして認識されているか確認します。
$ ls /dev/vda4
ls: cannot access /dev/vda4: No such file or directory
新しく作成した vda4 がデバイスとして認識されていない場合は、一度OSを再起動しましょう。
$ sudo reboot
再起動が困難な場合は、以下のコマンドで強制的に認識させることも可能です。
$ sudo partx -a /dev/vda
vda4 がOSに認識されたら、 mkfs.ext4 コマンドでフォーマットを実行します。
$ sudo mkfs.ext4 /dev/vda4
mke2fs 1.42.13 (17-May-2015)
/dev/vda4 contains a ext4 file system
last mounted on Wed Mar 1 18:19:02 2017
Proceed anyway? (y,n) y
Creating filesystem with 18350075 4k blocks and 4587520 inodes
Filesystem UUID: b2f0fbc8-ac2d-4d4f-9978-5e38a3ea91f4
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
なお、この状態では作成したファイルシステムでは23カ月または180日たつと、自動的にファイルシステムのチェックが実行されます。
この間隔は tune2fs コマンドで調整できます。次の例はチェックを行わない指定です。
$ sudo tune2fs -c -1 -i 0 /dev/vda4
新しいディスクをマウントする¶
初期化した領域をディスクとして使うには、まずマウントポイントを作成します。
マウントポイントを作成したら、 /dev/vda4 を /data にマウントします。
$ sudo mkdir /data
$ sudo mount /dev/vda4 /data
それから、マウントが完了したかどうかを確認します。
$ mount | grep vda4
/dev/vda4 on /data type ext4 (rw,relatime,data=ordered)
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
vda 253:0 0 100G 0 disk
tqvda1 253:1 0 1M 0 part
tqvda2 253:2 0 4G 0 part [SWAP]
tqvda3 253:3 0 26G 0 part /
mqvda4 253:4 0 70G 0 part /data
70Gのサイズで /data にマウントされていることが確認できます。
最後にOSを再起動してもマウントできるように、 /etc/fstab に設定を追加します。
$ id=$(sudo blkid -o value -s UUID /dev/vda4)
$ echo "UUID=${id} /data ext4 defaults 0 2" | sudo tee -a /etc/fstab