システム管理者として、ディスクの管理を求められる場合があります Windows、Linux、MacOSなどの異なるオペレーティングシステム間。
結果として、それに応じてディスクパーティションをフォーマットする必要があるかもしれません。 複数の環境間で互換性を保つためです。
どのファイルシステムを使用する必要がありますか?
ext2を選択する必要があります 、 ext3 またはext4 ディスクのファイルシステム?または多分あなたは脂肪に固執する必要があります オペレーティングシステム間でより互換性のあるファイルシステム?
このチュートリアルでは、Linuxでディスクパーティションをフォーマットする方法を見ていきます。 また、パーティションに適切なファイルシステムを選択するための思考プロセスも含まれます。
前提条件
Linuxでディスクパーティションをフォーマットするには、ホストのsudoユーザーである必要があります。
sudoであることを確認するには、「-l」オプションを指定して「sudo」コマンドを実行し、権利リストを表示します。
$ sudo -l
User <user> may run the following commands on <host>:
(ALL : ALL) ALL
Debian/UbuntuまたはRHEL/CentOSでsudoを実行するためのリソースをお探しの場合は、専用ガイドをご覧ください。
準備ができたら、次のセクションにジャンプできます。
Linux上の既存のパーティションを一覧表示する
まず、パーティションをフォーマットするには、明らかにシステムで使用可能なさまざまなパーティションを特定する必要があります。
Linux上の既存のパーティションを識別するには、システム上のブロックデバイス(ハードドライブ、USBドライブ)を一覧表示する「lsblk」コマンドを使用します。
$ lsblk

ここでわかるように、 sdaという名前の2つのディスクを所有しています およびsdb 。
sdbドライブはすでにパーティション化されており、ルートマウントポイントにマウントされたsdb1パーティションが含まれています。
一方、sdaドライブには、まだマウントされていないパーティションが含まれています。このパーティションは、フォーマットに最適です。 。
注 :ディスクがあり、まだパーティションが含まれていない場合は、Linuxでディスクパーティションを作成する方法に関するガイドを必ずお読みください。
Linux上のフォーマットされていないパーティションのリスト
Linuxでフォーマットされていないパーティションを一覧表示するには、「-f」オプションを指定して「lsblk」コマンドを使用します。
「-f」コマンドは「filesystems」の略で、すでにディスクに書き込まれている可能性のあるファイルシステムに関する情報を表示します。
$ lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1
sdb
├─sdb1 ext4 b9df59e6-c806-4851-befa-12402bca5828 /
ご覧のとおり、sdb1はすでにext4ファイルシステムをホストしていますが、sda1はホストしていません。
結果として、ディスクパーティションをフォーマットするためにsda1パーティションを使用します。
ファイルシステムの種類を選択してください
ディスクまたはUSBドライブをフォーマットする前に、作成するファイルシステムの種類を決定する必要があります。
なぜそんなに重要なのですか?
すべてのファイルシステムが利用可能なすべてのオペレーティングシステム間で互換性があるわけではないため、ファイルシステムタイプの選択は非常に重要です。
EXT4ファイルシステムを備えたUSBドライブをWindowsオペレーティングシステムに挿入しようとしたことがありますか?
基本的に、USBドライブを読み取ることはできません。
ファイルシステムの種類を選択するには、次の表を使用して、さまざまなオペレーティングシステム間の互換性、および最大ファイルサイズと最大ボリュームサイズを示します。

ご覧のとおり、ほとんどすべてのファイルシステムはLinuxオペレーティングシステムと互換性があります。
表では、ファイルシステムに互換性がないと言われている場合、それらのファイルシステムを読み取るためにサードパーティのソフトウェアが存在する可能性があるという事実は考慮されていません。
たとえば、WindowsオペレーティングシステムでEXT2ファイルシステムを読み取るためにドライバが存在する場合があります。
次のセクションでは、 EXT4を作成する方法を説明します。 パーティションとFAT32 およびNTFS Windows用のパーティション。
EXT4ファイルシステムを使用してディスクをフォーマットする
一般に、Linuxオペレーティングシステム用にディスクをフォーマットしている場合は、EXT4ファイルシステムでフォーマットすることをお勧めします。
EXT4は、ジャーナリングを実装する最新のファイルシステムです。 。
つまり、このファイルシステムは、ファイルシステムで実行されたすべての操作を実行前に追跡します。
これは、システムでいくつかの書き込み操作を実行しているときにサーバーの電源を切るときに非常に便利です。
操作を即座にコミットしないことにより、カーネルはまだ行われていない変更を追跡し、通常の実行を再開することができます。
EXT4ファイルシステムでパーティションをフォーマットするには、「 mkfs」を使用する必要があります 」コマンドを実行し、「 ext4」を指定します 」ファイルシステム。
$ sudo mkfs -t ext4 /dev/sda1
mke2fs 1.44.1 (24-Mar-2018)
Creating filesystem with 4096 1k blocks and 1024 inodes
Allocating group tables: done
Writing inode tables: done
Creating journal (1024 blocks): done
Writing superblocks and filesystem accounting information: done
ファイルシステムが正しく作成されたことを確認するには、必ず「 lsblk」を実行してください。 」コマンドを「-f」でもう一度押します 」フラグ。
$ lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 ext4 26529dea-c28a-4330-b549-8c8158efc7c7
sdb
├─sdb1 ext4 b9df59e6-c806-4851-befa-12402bca5828 /
ファイルシステムが正しく作成されたので、ファイルシステムにアクセスできるようにマウントする必要があります。
EXT4ファイルシステムをマウントするには、mountコマンドを使用して、正しいパーティションとマウントポイントを指定します。
sudo mount <partition> <mountpoint>
たとえば、作成したパーティションを現在のユーザーのホームディレクトリにあるディレクトリにマウントするには、次のコマンドを実行します
$ sudo mount /dev/sda1 /home/<user>/partition
パーティションが正しくマウントされたことを確認するために、「-f」フラグを指定して「lsblk」コマンドを実行できます。
$ lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 ext4 26529dea-c28a-4330-b549-8c8158efc7c7 /home/<user>/partition
sdb
├─sdb1 ext4 b9df59e6-c806-4851-befa-12402bca5828 /
すごい!
EXT4ファイルシステムを使用してディスクパーティションをフォーマットする方法と、それをマウントしてファイルの作成を開始する方法を学びました。
FAT32を使用して同じ結果を達成する方法を見てみましょう ファイルシステム。
FAT32ファイルシステムを使用してディスクをフォーマットする
FAT32ファイルシステムはファイルアロケーションテーブルの略です また、FAT16やFAT12などの以前のファイルシステムに続いて開発されました。
最近のほとんどのコンピューターではFATがデフォルトのファイルシステムではない場合でも、フロッピーディスクやUSBドライブで広く使用されています。
実際、FATファイルシステムは小さなファイルや小さな総ボリュームサイズに非常に便利で、全体的なパフォーマンスが優れています。
FAT32ファイルシステムでパーティションをフォーマットするには、「 mkfs」を使用する必要があります 」コマンドを実行し、 FAT32を指定します ファイルシステム。
$ sudo mkfs -t vfat /dev/sda1
mkfs.fat 4.1 (2017-01-24)
繰り返しますが、「-f」オプションを指定して「lsblk」を実行し、変更がディスクに書き込まれたことを確認します。
$ lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 vfat 26529dea-c28a-4330-b549-8c8158efc7c7
sdb
├─sdb1 ext4 b9df59e6-c806-4851-befa-12402bca5828 /
「マウント」を使用して、新しく作成したパーティションをマウントできます 」コマンド。
$ sudo mount /dev/sda1 /home/<user>/partition
最後に、Windows用にディスク全体をフォーマットすることを計画している場合は、NTFSファイルシステムを使用したくなるかもしれません。
LinuxでNTFSを使用してディスクをフォーマットする方法を見てみましょう。
NTFSファイルシステムを使用してディスクをフォーマットする
Microsoftによって開発されたNTFSファイルシステムは、現在ほとんどのWindowsディストリビューションで一般的に使用されているファイルシステムです。
NTFSは、 FATからの非常に大きな改善点です。 ファイルシステムとHPFS パフォーマンスが向上し、信頼性とスケーラビリティが向上したファイルシステム。
NTFSファイルシステムでパーティションをフォーマットするには、「 mkfs」を使用する必要があります 」コマンドを実行し、 NTFSを指定します ファイルシステム。
$ sudo mkfs -t ntfs /dev/sda1
Cluster size has been automatically set to 4096 bytes.
Initializing device with zeroes: 100% - Done.
Creating NTFS volume structures.
mkntfs completed successfully. Have a nice day.
繰り返しになりますが、ファイルシステムが正しく設定されていることを確認するには、「-f」フラグを指定して「lsblk」コマンドを実行します。
$ lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 ntfs 26529dea-c28a-4330-b549-8c8158efc7c7
sdb
├─sdb1 ext4 b9df59e6-c806-4851-befa-12402bca5828 /
NTFSファイルシステムをマウントするには、「mount」コマンドを使用して、使用するマウントポイントを指定します。
$ sudo mount /dev/sda1 /home/<user>/partition
おめでとうございます!
NTFSファイルシステムを使用してLinuxでディスクを正常にフォーマットしました。
結論
このチュートリアルでは、mkfsコマンドを使用してLinuxでディスクをフォーマットする方法と、さまざまなファイルシステムを作成するためにディスクを使用する方法を学習しました: EXT4 、 FAT32 およびNTFS 。
また、ファイルシステムの互換性と、LinuxとWindowsの間、またはLinuxとMacOSオペレーティングシステムの間でディスクを切り替える場合に使用する必要があるファイルシステムについても学びました。
ちなみに、mountを使用してパーティションをマウントしても、マウントポイントが確定することはなく、次回の再起動時にリセットされます。
Linuxシステム管理に興味がある場合は、Webサイトの専用カテゴリを必ずお読みください。
この記事は、ディスク管理に関するシリーズの一部です:
- Linuxでディスクパーティションを作成する方法
- Linuxでディスク容量を確認する方法