Azure Linux VMにデータディスクをマウントする

Azure Linux VMにデータディスクをマウントします。
今回はCentOS7.5ベースでの作業となります。

事前作業

あらかじめAzure Portalにでデータディスクを作成しておく。今回は64GBのディスクを用意しました。

作業前の状態

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        30G  1.8G   28G   6% /
devtmpfs        3.9G     0  3.9G   0% /dev
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           3.9G  9.0M  3.9G   1% /run
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda1       497M   81M  417M  17% /boot
/dev/sdb1        16G   45M   15G   1% /mnt/resource
tmpfs           797M     0  797M   0% /run/user/1000

データディスクの存在を確認する

dmesgコマンドにて用意したディスクの存在を確認します。

$ dmesg | grep SCSI

 

出力結果は以下となります。sdcとして認識されてます。

[    0.445196] SCSI subsystem initialized
[    1.144409] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248)
[    2.741627] sd 5:0:0:0: [sdc] Attached SCSI disk
[    2.842323] sd 3:0:1:0: [sdb] Attached SCSI disk
[    2.848923] sd 2:0:0:0: [sda] Attached SCSI disk

 

新しいディスクのパーテーションを作成する

fdiskコマンドを利用してパーテーションを作成します。

$ sudo fdisk /dev/sdc
[sudo] password for (ユーザ名):
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 0xa35221a9.

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.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-134217727, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-134217727, default 134217727):
Using default value 134217727
Partition 1 of type Linux and of size 64 GiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

ファイルシステムを作成する

mkfsコマンドを利用してext4のファイルシステムを作成します。

$ sudo mkfs -t ext4 /dev/sdc1
[sudo] password for (ユーザ名):
mke2fs 1.42.9 (28-Dec-2013)
Discarding device blocks: done
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
4194304 inodes, 16776960 blocks
838848 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2164260864
512 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
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

ディスクをマウントする

mkdirコマンドにてマウントするディレクトリを作成し、そこにマウントさせます。

$ sudo mkdir /data
$ sudo mount /dev/sdc1 /data

以下の様にマウントされました。

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        30G  1.6G   28G   6% /
devtmpfs        3.9G     0  3.9G   0% /dev
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           3.9G  9.0M  3.9G   1% /run
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda1       497M  106M  391M  22% /boot
/dev/sdb1        16G   45M   15G   1% /mnt/resource
tmpfs           797M     0  797M   0% /run/user/1000
/dev/sdc1        63G   53M   60G   1% /data

再起動後にディスクがマウントされるようにする

再起動後にディスクが自動マウントされるように/etc/fstabに追加する必要があります。/etc/fstabにはUUIDにて記述を行いますので、blkidユーティリティを利用してUUIDを確認します。

$ sudo -i blkid
/dev/sdb1: UUID="11111111-1a1a-1a1a-1a1a-1a1a1a1a1a1a" TYPE="ext4"
/dev/sda1: UUID="22222222-2a2a-2a2a-2a2a-2a2a2a2a2a2a" TYPE="xfs"
/dev/sda2: UUID="33333333-3a3a-3a3a-3a3a-3a3a3a3a3a3a" TYPE="xfs"
/dev/sdc1: UUID="44444444-4a4a-4a4a-4a4a-4a4a4a4a4a4a" TYPE="ext4"

/etc/fstabを編集する

こんな感じです。nofailとしているのはマウントが失敗しても起動するということです。

$ sudo vi /etc/fstab
UUID=44444444-4a4a-4a4a-4a4a-4a4a4a4a4a4a       /data   ext4    defaults,nofail 1 2

再起動後にマウントされているか確認

正常にマウントされてますね。

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        30G  1.4G   29G   5% /
devtmpfs        3.9G     0  3.9G   0% /dev
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           3.9G  9.0M  3.9G   1% /run
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sdc1        63G   53M   60G   1% /data
/dev/sda1       497M  106M  391M  22% /boot
/dev/sdb1        16G   45M   15G   1% /mnt/resource
tmpfs           797M     0  797M   0% /run/user/1000