CentOS8でストレージをフォーマットする

初めて使うストレージはUSBメモリであろうと外付けHDDであろうとフォーマットをする必要があります。

これは新品のストレージには基本的にどのようにデータを書き込むかのルールが決まっていないためです。(稀にフォーマット済みのストレージも存在します)

書き込むルールを決めてどのルールを使っているか分かるようにすることがフォーマットです。

また、1つのストレージを用途に応じて複数に分割することが出来ます。分割したものをパーティションと言います。

今回はパーティションを作成し、それをフォーマットして新品のストレージを使えるようにしていきます。

この記事で行うこと

  1. パーティションの作成
  2. フォーマットの実行

1. パーティションの作成

まず、パーティションを作成します。(パーティションを作らずにフォーマットして使用する事も可能ですが、ストレージ管理の際などに未使用と間違えてパーティションで上書いてしまう等の悲劇を起こしかねないのでパーティションは作る事をオススメします)

パーティションの管理は fdisk というコマンドで行います。多分FormatDISKの略です。

前回はマウント前のパーティション名を調べるために -l オプションで使いましたが、今回はパーティションの作成に使います。

fdisk でパーティション管理を行うときはオプションを使わずに、パーティションを管理したいストレージ名を入力します。

前回の例で言うと、 /dev/sdb の方です。 /dev/sdb1 ではありません。(そもそも新品のストレージに最初からパーティションが存在することはあまりないので、パーティション名が表示される場合はストレージが本当に合っているかを確認してください)

ディスク /dev/sdb: 14.4 GiB, 15500574720 バイト, 30274560 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0x67d6d025

デバイス   起動 開始位置 終了位置   セクタ サイズ Id タイプ
/dev/sdb1  *        2048 30273535 30271488  14.4G  c W95 FAT32 (LBA)

fdisk を実行すると対話形式でパーティションの管理を行えます。

[root@localhost ~]# fdisk /dev/sdb

fdisk (util-linux 2.32.1) へようこそ。
ここで設定した内容は、書き込みコマンドを実行するまでメモリのみに保持されます。
書き込みコマンドを使用する際は、注意して実行してください。


コマンド (m でヘルプ): 

m を入力することでコマンドの一覧が見れますが、基本的に使うコマンドは qpdn とと w の3つだけです。

q はfdiskを終了します。(十中八九Quitの略)fdiskは w を入力するまでは変更を反映しません。なので、 q で終了した場合は変更は全て無かった事になります。ミスったと思ったらとりあえず q で終了して落ち着きましょう。

p はそのデバイスに存在するパーティションの一覧を確認出来ます。(Partitionsの略?) fdisk -l を実行したときと同様の形式です。

コマンド (m でヘルプ): p
ディスク /dev/sdb: 14.4 GiB, 15500574720 バイト, 30274560 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0x67d6d025

デバイス   起動 開始位置 終了位置   セクタ サイズ Id タイプ
/dev/sdb1  *        2048 30273535 30271488  14.4G  c W95 FAT32 (LBA)

d はパーティションを削除します。(多分Deleteの略)削除するときの確認など何もなくいきなり削除されますが、前述の通り q で無かったことに出来るので、ミスった際には q です。

コマンド (m でヘルプ): d
パーティション 1 を選択
パーティション 1 を削除しました。

パーティションが複数ある場合は選べます。(この場合もキャンセルは出来ないので大人しく削除してから q で無かったことにしましょう)

コマンド (m でヘルプ): d
パーティション番号 (1,2, 既定値 2): 1

パーティション 1 を削除しました。

n はパーティションを作成します。色々と聞かれますがひたすらEnterキーを押すとそのストレージの容量一杯のパーティションが出来ます。

パーティションの大きさを決めたい場合は 最終セクタ, +セクタ番号 または +サイズ{K,M,G,T,P}+10G といった具合で希望するパーティションの大きさを入力します。( +10G の場合は10GiBのパーティションを作成します)

コマンド (m でヘルプ): n
パーティションタイプ
   p   基本パーティション (0 プライマリ, 0 拡張, 4 空き)
   e   拡張領域 (論理パーティションが入ります)
選択 (既定値 p):

既定の回答 p であるものとみなします。
パーティション番号 (1-4, 既定値 1):
最初のセクタ (2048-30274559, 既定値 2048):
最終セクタ, +セクタ番号 または +サイズ{K,M,G,T,P} (2048-30274559, 既定値 30274559):

新しいパーティション 1 をタイプ Linux、サイズ 14.4 GiB で作成しました。

w は加えた変更を反映します。これを入力すると変更が確定して帰って来れなくなりますので本当に大丈夫かしっかりと確認してください。

コマンド (m でヘルプ): w
パーティション情報が変更されました。
ioctl() を呼び出してパーティション情報を再読み込みします。
ディスクを同期しています。

2. フォーマットの実行

フォーマットを行う際にはファイルシステムを選ぶ必要があります。ここで言うファイルシステムはストレージの利用ルールのような物です。

有名な物で言うとWindowsで使われるNTFS、Linuxで広く使われるext4、CentOSなどのRedHat系列のLinuxで使われるxfs、性能がとても低くて不安定だけどどのOSでも使えるFAT32といった具合です。

ext4のストレージをWindowsで読み込もうとしたり、NTFSのストレージをLinuxで読見込もうとしたりするにはそのためのソフトをインストールする必要があるので、基本的には使うOSに合わせたファイルシステムを選びます。

CentOS8では以下の基準で選ぶと良いと思います。

  • 他のLinux(Ubuntuなど)で使う予定がない ⇒ xfs
  • 他のLinux(Ubuntuなど)に換装するかも ⇒ ext4
  • 容量の小さなUSBメモリで他のOS(Windowsなど)でも使う ⇒ FAT32

もし、容量の大きい(数TBの)外付けHDDをWindowsなどの他のOSでも使いたいという事であれば、どっちかにファイルシステムを読み込むためのソフトウェアをインストールする前提でext4かNTFSにすることとなります。(NTFSにする場合はWindowsでフォーマットしてください)

ファイルシステムを決めたらフォーマットします。

フォーマットする前に再度 fdisk -l でフォーマットしたいパーティション名を確認します。

ちなみに、引数にストレージの名前を入れれば、特定のストレージだけを表示出来ます。

[root@localhost ~]# fdisk -l /dev/sdb
ディスク /dev/sdb: 14.4 GiB, 15500574720 バイト, 30274560 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0xf41f6f50

デバイス   起動 開始位置 終了位置   セクタ サイズ Id タイプ
/dev/sdb1           2048 30274559 30272512  14.4G 83 Linux

では、 /dev/sdb1 をフォーマットしてみます。

フォーマットする際のコマンドは mkfs.[ファイルシステム名] です。ファイルシステム毎にコマンドが存在します。( mkfs は多分MaKe File Systemの略です)

ファイルシステムがext4の場合は mkfs.ext4 、ファイルシステムがxfsの場合は mkfs.xfs 、ファイルシステムがFAT32の場合は mkfs.vfat となります。

今回はext4で実施しタイと思います。

コマンドによって実行後の表示が違いますが、基本的には待っていれば終わります。しかし、既にファイルシステムが設定されていた場合などは確認が入ることもあります。

[root@localhost ~]# mkfs.ext4 /dev/sdb1
mke2fs 1.45.6 (20-Mar-2020)
Creating filesystem with 3784064 4k blocks and 946560 inodes
Filesystem UUID: 79f07a31-f025-443d-a9d2-83e8e9a3966c
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

ちなみに、 fdisk -l で表示されるタイプはファイルシステムとは関係ありません。自動起動など一部の場合にのみ参照されますので、基本的には気にする必要はありません。

もし気になる場合は fdisk のコマンドで t と入力することで変更することも出来ます。変更候補は fdiskl を入力することで確認出来ます。

コマンド (m でヘルプ): l

 0  空              24  NEC DOS         81  Minix / 古い Li bf  Solaris
 1  FAT12           27  隠し NTFS WinRE 82  Linux スワップ  c1  DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  84  隠し OS/2 また  c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux 拡張領域  c7  Syrinx
 5  拡張領域        41  PPC PReP Boot   86  NTFS ボリューム da  非 FS データ
 6  FAT16           42  SFS             87  NTFS ボリューム db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux プレーン  de  Dell ユーティリ
 8  AIX             4e  QNX4.x 第2パー  8e  Linux LVM       df  BootIt
 9  AIX 起動可能    4f  QNX4.x 第3パー  93  Amoeba          e1  DOS access
 a  OS/2 ブートマネ 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad ハ ea  Rufus alignment
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         eb  BeOS fs
 f  W95 拡張領域 (L 54  OnTrackDM6      a6  OpenBSD         ee  GPT
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        ef  EFI (FAT-12/16/
11  隠し FAT12      56  Golden Bow      a8  Darwin UFS      f0  Linux/PA-RISC
12  Compaq 診断     5c  Priam Edisk     a9  NetBSD          f1  SpeedStor
14  隠し FAT16 <32M 61  SpeedStor       ab  Darwin ブート   f4  SpeedStor
16  隠し FAT16      63  GNU HURD または af  HFS / HFS+      f2  DOS セカンダリ
17  隠し HPFS/NTFS  64  Novell Netware  b7  BSDI fs         fb  VMware VMFS
18  AST SmartSleep  65  Novell Netware  b8  BSDI スワップ   fc  VMware VMKCORE
1b  隠し W95 FAT32  70  DiskSecure Mult bb  隠し Boot Wizar fd  Linux raid 自動
1c  隠し W95 FAT32  75  PC/IX           bc  Acronis FAT32 L fe  LANstep
1e  隠し W95 FAT16  80  古い Minix      be  Solaris ブート  ff  BBT

コマンド (m でヘルプ): t
パーティション 1 を選択
16 進数コード (L で利用可能なコードを一覧表示します): 83
パーティションのタイプを 'Linux' から 'Linux' に変更しました。

まとめ

今回はストレージのフォーマットの方法について説明しました。

新しくストレージを増設する際などにはこのように、フォーマットしてから使う必要がありますので、注意してください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です