【初心者向け】Linuxにおけるストレージとマウントの基礎概論

Linux

内臓ストレージ(SSDやHDD)、外付けストレージ(外付けのHDDやUSBメモリなど)といった記憶装置をLinuxのファイルシステムに割り当てて、ファイルやフォルダとしてアクセスできる状態にすることを「マウント」といいます。
本書はLinuxのマウントについて前提知識とマウントの基礎を説明します。
なお、本書は基礎や概要の説明だけなので実際の設定手順やコマンドの説明はありません。

ブロックデバイスとデバイスファイル

Linuxで記憶装置を利用可能な状態にするには、用語を理解しておく必要があります。
この章では、Linuxで記憶装置を扱うための基本となるブロックデバイスとデバイスファイルについて説明します。

ブロックデバイス

LinuxではHDD、SSD、USBメモリ、CD-ROMドライブといった記憶装置のことをブロックデバイスと言います。
これらはブロックという単位でデータをバッファという領域を経由して読み書きすることからそう呼ばれています。
なお、ここでは詳しく解説はしませんが、lsblkコマンドを使用すると、利用可能なブロックデバイスのリストを表示できます。

デバイスファイル

Linuxは、ブロックデバイスが接続されると、「/dev」ディレクトリに対応するデバイスファイルが自動的に追加されます。
デバイスファイルは、SATA, SCSIの場合、/dev/sda, /dev/sdb, /dev/sdc,・・・ という名前になります。
最後の文字(a,b,c)は台数の数分連番になっています。

Linuxのデバイスファイル

NVMe SSDは /dev/nvme0n1, /dev/nvme1n1 のような名前になります。
USBメモリはLinux上では「SCSIストレージデバイス」として認識されるため、HDDやSSDと同じく /dev/sd* の名前が付与されます。

パーティション

パーティションは、ブロックデバイス(HDDやSSDなどの記憶装置)を論理的に分割した各領域です。

Linuxのパーティション

パーティションの目的

パーティションを区切る目的は、以下の通りです。

  • システム領域とデータ領域用のパーティションを作成することで、例えばシステム領域を初期化したい場合にデータ領域を残してシステム領域を初期化できる。
  • パーティションを分けることで1つのパーティションのデータが増加して空き容量がなくなった場合でもほかのパーティションには影響しない。

LVMを利用したパーティション構成

UEFIの場合、パーティションは①EFIシステムパーティション、②bootパーティション、③ LVMの3構成になることが多いです。

  • EFIシステムパーティション
    パソコンやサーバーの「起動(ブート)」に使われる領域で、電源を入れたとき、まずUEFIファームウエアがこの領域から読み込みをスタートします。
  • bootパーティション
    OSを立ち上げるための重要なファイルが入っています。
  • LVM
    ユーザが使うファイルやシステムで使用するファイルが格納されています。
    このパーティションはは、複数のディスクやパーティションから構成も可能で、「root(/)」や「swap」(メモリが不足した場合、補完に使用する)などの論理ボリュームを作成し、柔軟にサイズ変更や追加ができます。

パーティション用のデバイスファイル

パーティションを作成すると、/devディレクトリ内に対応するデバイスファイルが自動的に作成されます。
例えばディスク /dev/sdb にパーティションを作成すると
1つ目のパーティション → /dev/sdb1、
2つ目のパーティション → /dev/sdb2

という形式で作成されます。

パーミッションの例

フォーマット

作成したパーティションはフォーマットをしなければ利用できません。

フォーマットとは

記憶装置(通常はパーティション)にファイルを保存・管理するための仕組み(ファイルシステム)を作成することです。
ファイルシステムというのは、「どこにファイルを書くか」、「ファイル名やサイズをどう管理するか」などの形式やルールのようなものです。

フォーマットの種類

  • ext4(Extended File System 4)
    最も一般的で、標準的なファイルシステムでサーバや個人用でもよく利用されています。
  • XFS
    大容量ファイルや大規模ストレージに強いので、データベースや大規模ストレージに利用されます。

マウント

Linuxは記憶装置を接続すると自動的に認識し、デバイスファイルを作成します。ファイルシステムとして利用するには、記憶装置(またはパーティション)をマウントする必要があります。

マウントとは、認識された記憶装置(パーティション)をディレクトリに割り当てて使えるようにすることです。
マウントはmountコマンドを使って行います。
例えば、sda1を/mediaディレクトリに割り当てるには、次の通りです。
例:mount /dev/sda1 /media

コメント

タイトルとURLをコピーしました