物は試し、CentOS に新しくディスクを追加してみた!
今回の記事は、実際に手を動かして体と頭に理屈を染み込ませようと思い、過去に掲載した以下の記事の内容の一部を一連の流れで具現化してみました。
あと、後々の手順書メモにもしてしまおう、という狙いもあります。皆様もよろしければご活用ください。もちろん、全てのパターンではないので状況と要件によって応用してもらう必要はあります。
対象となる CentOS 情報
CentOS 7 ( ESXi ゲストOS )
手順概要
✅新規ハードディスクを追加する
⇓
✅追加したハードディスクにパーティションを切る
※MBRパーティションを作成
⇓
✅作成したパーティションをフォーマットする
※XFSファイルシステムを作成
⇓
✅作成したファイルシステムをマウントする
※新たにマウントポイント用のディレクトリを作成し、そこにマウント
⇓
✅OS起動時に自動的に追加したハードディスクをマウントする設定を行う
※追加したパーティションのUUIDを使って、fstabファイルに記述
手順詳細
1. 新規ハードディスク ( 今回は 8 GB ) を対象となるゲストOSに追加
2. 現在のディスクのデバイスファイルを確認
$ ls -l /dev | grep sd
brw-rw----. 1 root disk 8, 0 8月 28 09:34 sda
brw-rw----. 1 root disk 8, 1 8月 28 09:34 sda1
brw-rw----. 1 root disk 8, 2 8月 28 09:34 sda2
brw-rw----. 1 root disk 8, 16 8月 28 09:34 sdb 👈追加したハードディスクのデバイスファイルがudevにより自動的に作成された
## sdb の情報を深堀
✅新規追加した8GBのハードディスクであることを確認
✅パーティション番号がない 👉当たり前だがまだパーティションが作成されていない
## ブロックデバイス (sdb) を確認
$ lsblk | grep sdb
sdb 8:16 0 8G 0 disk
↑ ↑ ↑ ↑ ↑ ↑
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
3. 2 つのハードディスク ( sda, sdb ) のパーティション構成を確認
## sda のパーティション構成を確認
$ sudo fdisk -l /dev/sda
Disk /dev/sda: 17.2 GB, 17179869184 bytes, 33554432 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0x000b492b
デバイス ブート 始点 終点 ブロック Id システム
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 33554431 15727616 8e Linux LVM
## sdb のパーティション構成を確認
$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 8589 MB, 8589934592 bytes, 16777216 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
👉sdb はやはりパーティション未構成で未フォーマットの状態を確認
4. sdb に MBR パーティションを 1 つ追加
$ sudo fdisk /dev/sdb
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.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xda34ea34.
コマンド (m でヘルプ): n 👈パーティションを作成
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
パーティション番号 (1-4, default 1): 1
最初 sector (2048-16777215, 初期値 2048): 2048
Last sector, +sectors or +size{K,M,G} (2048-16777215, 初期値 16777215): 16777215
Partition 1 of type Linux and of size 8 GiB is set
コマンド (m でヘルプ): p 👈パーティションテーブルを表示
Disk /dev/sdb: 8589 MB, 8589934592 bytes, 16777216 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0xda34ea34
デバイス ブート 始点 終点 ブロック Id システム
/dev/sdb1 2048 16777215 8387584 83 Linux
コマンド (m でヘルプ): w 👈パーティションテーブルを変更して保存
パーティションテーブルは変更されました!
ioctl() を呼び出してパーティションテーブルを再読込みします。
ディスクを同期しています。
5. lsblk コマンドでディスクのデバイスファイルを再び確認
TYPE = part の sdb1 が作成された
6. sdb1 パーティションに xfs ファイルシステムを作成
$ sudo mkfs.xfs /dev/sdb1
7. sdb1 用のマウントポイントディレクトリを作成
## ルートディレクトリ直下に親ディレクトリを持つ notedemo ディレクトリを作成
$ sudo mkdir -p /data/notedemo
$ ls -l / | grep data
drwxr-xr-x. 3 root root 22 9月 1 12:16 data
$ ls -R /data
/data:
notedemo
/data/notedemo:
8. 作成したマウントポイント用ディレクトリを sdb1 にマウント
$ sudo mount /dev/sdb1 /data/notedemo
## ディスク使用率を確認しつつ、マウントポイントを確認
$ df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
devtmpfs 903M 0 903M 0% /dev
tmpfs 920M 0 920M 0% /dev/shm
tmpfs 920M 18M 902M 2% /run
tmpfs 920M 0 920M 0% /sys/fs/cgroup
/dev/mapper/centos-root 14G 6.8G 6.7G 51% /
/dev/sda1 1014M 338M 677M 34% /boot
tmpfs 184M 32K 184M 1% /run/user/1001
/dev/sdb1 8.0G 33M 8.0G 1% /data/notedemo 👈 指定通りマウントされた
9. sdb1 のUUID を確認
$ lsblk -f 👈ファイルシステムの情報も表示するオプション
10. OS起動時に自動マウントされるよう fstab に確認した UUID を追記
$ sudo vi /etc/fstab
## 以下を追記
UUID=16885ca6-38fa-4cf0-8a2e-227727e96536 /data/notedemo xfs defaults 0 0
11. OSを再起動し、lsblk コマンドでディスクのデバイスファイルを再び確認
想定通りに自動マウントされているのを確認!
もしこの記事が何かの参考になったもしくは面白かったという方は、応援していただけると大変嬉しいです😊 これからもよろしくお願いします。