1. ホーム
  2. コース一覧
  3. LinuC Level1 v10.0 対策コース(パート1)
  4. ファイルシステムの作成とマウント

中級

LinuC Level1 v10.0 対策コース(パート1)

LinuC Level1 v10.0 対策コース(パート1)38/39

ファイルシステムの作成とマウント

こちらの記事ではファイルシステムの作成方法とファイルシステムのマウント方法について解説します。

ファイルシステム

ファイルシステムとは、ディスクに保存されるデータをファイルとして管理する仕組みです。/ディレクトリを含むファイルシステムをルートファイルシステムといいます。ファイルにアクセスする時にファイルシステムがないと、153864セクタのように指定しなければなりません。

ファイルシステムがあることで、cat /data/text.txtというように分かりやすくなります。

ファイルシステムを作成

パーティション内にファイルシステムを作成する時はmkfsコマンドを使用します。ファイルシステムにも種類があり、-tオプションでタイプを指定します。

mkfs -t ext4 /dev/sdb3  # ファイルシステムext4を/dev/sdb3の下に作成
システムファイル説明
ext2Linuxの初期に使用されていた。最大ファイルサイズ2TiB、最大容量16TiB。
ext3ex2と互換性がある。新しくジャーナルが追加された。ジャーナルはファイルシステムへの変更を記録する機能。HDDなどに変更を書き込むときにジャーナルに書き込む。変更が完了した後はジャーナルの書き込みは削除される。
ext4ext3の後継のファイルシステムで、拡張機能を使っていない場合はext3としてマウントできる。サブディレクトリ数が無制限になった。
ReiserFSCentOS以前のバージョンで使われていたファイルシステム。メモリを多く消費する分、パフォーマンスが向上している。
XFSRHEL7およびCentOS7でデフォルトのファイルシステム。
VFATFATではファイル名が最大11文字(文字列8文字、拡張子3文字)の制約があったが、最大255文字まで扱えるようにしたファイルシステム。
BtrfsBtrfsは耐障害性、修復機能が得意なファイルシステム。
tmpfs一時的にデータを格納するためのファイルシステム。tmpfsをマウントするだけで、パーティションのようにファイルの読み書きなどすることが出来る。メモリ上に作成されるため、一度電源を落としたり再起動するとファイルは消える。
オプション説明
-t ファイルシステムタイプ作成するファイルシステムのタイプを指定する
-cファイルシステム作成前に不良ブロックを検査し見つかったら表示する

ファイルシステムをマウント

マウントとは、あるファイルシステムを別のファイルシステムに組み込んで、一つのファイルシステムとして扱うことです。マウントしたファイルシステムが結合されるディレクトリをマウントポイントといいます。

mount  # 現在のマウント状況を表示
mount -t ファイルシステム名 デバイス名 マウントポイント # ファイルシステムを指定してマウント
mount -t ext4 /dev/sdb4/ /data  # /dev/sdb4にあるext4パーテーションを/dataディレクトリにマウント 
オプション説明
-a/etc/fstabに記述されているファイルシステムをすべてマウントする
-t ファイルシステムファイルシステムの種類を指定する
-oマウントオプションを指定する

再起動してもマウント状態を維持する

再起動してもマウントを維持したい場合は、/etc/fstabを編集してからmountする必要があります。/etc/fstabを編集せずにmountのみを行った場合は、再起動すると解除されてしまいます。

viエディタを使って必要な項目を記入します。

vi /etc/fstab
1 LABEL=cloudimg-rootfs   /        ext4   defaults        0 1
/dev/sdb4/ /data ext4 default 1 2  # 新しく追加
フィールド説明
マウントするデバイスファイル名/dev/sdb4/(マウントするデバイスファイル名を指定)
マウントポイント/data(マウントポイントとなるディレクトリの絶対パスを指定)
ファイルシステムの種類ext4
マウントオプションdefault
dump1:する、2:しない(dumpコマンドによるバックアップ対象となるかどうかを指定)
fsck0:しない、1:/に指定する数値、2以上:その他のファイルシステムに指定する数値(システム起動時にfsckコマンドでチェックを行う時の順序を指定)

アンマウント

マウントを解除したいときはumountコマンドを使用します。

umount オプション 
umount オプション # デバイス名/マウントポイント
umount /data #/dataにマウントしたファイルシステムをアンマウント
umount /dev/sdb4  # /dev/sdb4のマウントを解除
umount -at xfs  # xfsのファイルシステムをすべてアンマウント
オプション説明
-a/etc/mtabに記述されているファイルシステムを全てアンマウント
-t ファイルシステム指定した種類のファイルシステだけをアンマウントする

スワップ領域を作成

スワップ領域とはメモリ容量が足りなくなったときに一時的にハードディスクにメモリ内のデータの一部を移動させておく場所のことです。ハードディスクに移動させるデータはメモリの中でもあまり使われていないデータが対象とされます。システムには最低一つのスワップ領域が必要です。

mkswap /dev/sda4  # /dev/sda4にスワップ領域を作成する
swapon /dev/sda4  # スワップ領域を有効にする
swapon -s         # スワップ領域の利用状況を表示する
オプション説明
-a/etc/fstabファイルでスワップとして指定されているデバイスをすべて有効にする(ただしnoautoオプション付きのものは除く)
-eデバイスが存在しなければスキップする
-V詳細な情報を表示する

まとめ

今回は、ファイルシステムの作成方法、種類、マウント方法、スワップ領域について解説しました。

ファイルシステムとは、ディスク上に保存されるデータをファイルとして管理する仕組みです。Linuxでよく使われるファイルシステムには、ext4、XFS、Btrfsなどがあります。

ファイルシステムを作成するには、mkfsコマンドを使用します。例えば、ext4 ファイルシステムを作成するには、mkfs.ext4 [デバイス名] を実行します。

マウントとは、あるファイルシステムを別のファイルシステムに組み込んで、一つのファイルシステムとして扱うことです。マウント操作は、mountコマンドを使用します。例えば、mount -t ext4 /dev/sdb1 /mnt/data というコマンドで、ext4 ファイルシステムを/mnt/dataというディレクトリにマウントします。

アンマウントとは、マウントされているファイルシステムを取り外すことです。アンマウント操作は、umountコマンドを使用します。例えば、umount /dev/sdb1というコマンドで、/dev/sdb1のマウントを解除します。

スワップ領域とは、メモリ容量が足りなくなったときに一時的にハードディスクにメモリ内のデータの一部を移動させておく場所のことです。スワップ領域を作成するには、mkswapコマンドを使用し、swaponコマンドでスワップ領域を有効化します。

これらの知識を持っておくことで、Linuxでのファイルシステムの操作が容易になります。

記事の内容は理解できましたか?