Linux xfsファイルシステム作成方法(CentOS 7)

EC2 LinuxでEBSボリュームを追加する

  • 今回はEC2のLinux環境でEBSボリュームにxfsファイルシステムを追加作成する方法を紹介します。xfs以外のファイルシステムでも参考になると思います。
  • 今回はEC2 上に起動したCentOS 7.6 を使用します。基本のEBSではなく、増設のEBSにファイルシステムを作成するシチュエーションとなります。

EBSボリュームの状態確認

  • lsblkコマンドを使用し、EBSの状態(Linuxで認識されているブロックデバイス)を確認します。
  • 以下出力例は、NVMeを標準搭載するNitroベースのインスタンスの例となります。ルートデバイスは /dev/nvme0n1 です。追加で作成するボリュームは /dev/nvme1n1 で、まだマウントされていません。
  • file -sコマンドを使用し、EBSにファイルシステムが存在するかを確認します。結果が「data」であった場合は、EBS上にファイルシステムは未作成です。ファイルシステムが存在する場合は、ファイルシステムの種類に関する情報が表示されます。

$ lsblk
NAME                MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
nvme0n1             259:1    0   32G  0 disk
tqnvme0n1p1         259:2    0  512M  0 part /boot
mqnvme0n1p2         259:3    0 31.5G  0 part
  mqvg_root-lv_root 253:0    0 31.5G  0 lvm  /
nvme1n1             259:0    0  100G  0 disk
$ sudo file -s /dev/nvme1n1
/dev/nvme1n1: data

xfsファイルシステムを作成

  • EBSボリューム(nvme1n1デバイス)にファイルシステムを作成します。今回は、xfsとします。
  • xfsは、CentOS7のデフォルトのファイルシステムとなります。

$ sudo mkfs -t xfs /dev/nvme1n1
meta-data=/dev/nvme1n1           isize=512    agcount=4, agsize=6553600 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=26214400, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=12800, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

自動マウントの設定

  • Linux起動時に自動でマウントが行われるように/etc/fstabファイルにマウントの設定を追記します。
  • 必要に応じて、fstabファイルをバックアップします(今回は省略)。

$ cat /etc/fstab

$ sudo vi /etc/fstab
** 下記エントリを追記 **
/dev/nvme1n1    /mnt/ebs/0      xfs     defaults        0 0

$ cat /etc/fstab

ボリュームのマウント

  • マウントポイントとなるディレクトリを作成します。
  • /etc/fstabファイルの記述が正しかったかのチェックを兼ねて、mountコマンドで手動マウントを行います。
  • df -Tコマンドで正しくマウントが行われたこと、マウント後の使用可能なサイズが正しいことを確認します。

$ sudo mkdir -p /mnt/ebs/0
$ sudo mount /mnt/ebs/0
$ df -T
Filesystem                  Type     1K-blocks    Used Available Use% Mounted on
/dev/mapper/vg_root-lv_root xfs       33015808 1929120  31086688   6% /
devtmpfs                    devtmpfs   3812524       0   3812524   0% /dev
tmpfs                       tmpfs      3824268       0   3824268   0% /dev/shm
tmpfs                       tmpfs      3824268    8656   3815612   1% /run
tmpfs                       tmpfs      3824268       0   3824268   0% /sys/fs/cgroup
/dev/nvme0n1p1              xfs         520868  203144    317724  40% /boot
tmpfs                       tmpfs       764856       0    764856   0% /run/user/500
tmpfs                       tmpfs       764856       0    764856   0% /run/user/0
/dev/nvme1n1                xfs      104806400   32992 104773408   1% /mnt/ebs/0