LinuxでディスクやUSBメモリ、ISOファイルなどを特定のディレクトリから使えるようにしたいときは、mountコマンドを使用します。
Linuxでは、Windowsのようにドライブ文字でディスクを扱うのではなく、ファイルシステムをディレクトリツリーのどこかへ接続して利用します。
この「ファイルシステムをディレクトリへ接続する操作」をマウントと呼びます。
この記事では、Linux初心者でも実際に操作できるように、mountコマンドの基本構文、マウントポイントの作成、デバイス名やUUIDを指定したマウント方法、読み取り専用マウント、ISOファイルのマウント、/etc/fstabとの関係、よくあるエラーまで実例付きで解説します。
- mountコマンドとは
- マウントとは
- mountコマンドの基本構文
- 現在マウントされている一覧を確認する方法
- マウント前にディスク構成を確認する
- マウントポイントを作成する方法
- デバイス名を指定してマウントする方法
- ファイルシステム種類を指定してマウントする方法
- UUIDを指定してマウントする方法
- 読み取り専用でマウントする方法
- よく使うマウントオプション
- ISOファイルをマウントする方法
- bindマウントを使う方法
- tmpfsを一時的にマウントする方法
- マウントを解除する方法
- /etc/fstabとは
- /etc/fstabを編集するときの注意点
- mount -aの使い方
- mountコマンドの主なオプション
- mount・lsblk・blkid・dfの違い
- 追加ディスクをマウントする基本手順
- mountコマンドでよくあるエラー
- よくある質問
- まとめ
mountコマンドとは
mountは、Linuxでファイルシステムをディレクトリに接続するためのコマンドです。
たとえば、追加ディスクのパーティション/dev/sdb1を/dataディレクトリで使えるようにする場合、次のようにマウントします。
sudo mount /dev/sdb1 /data
これにより、/dataへアクセスすると/dev/sdb1の中身を扱えるようになります。
主に次のような場面で使います。
- 追加ディスクを利用したいとき
- USBメモリや外部ストレージを接続したいとき
- ISOファイルの中身を確認したいとき
- 一時的に読み取り専用でマウントしたいとき
/etc/fstabの設定確認をしたいとき- VPSやLinuxサーバーでデータ用ディスクを追加したいとき
マウントとは
マウントとは、ディスクやパーティションなどのファイルシステムを、Linuxのディレクトリ階層へ接続することです。
Linuxでは、すべてのファイルやディレクトリは/を頂点とする1つのディレクトリツリーの中に配置されます。
追加ディスクを使う場合も、D:やE:のようなドライブ文字ではなく、/dataや/mnt/usbのようなディレクトリへ接続して使います。
| 用語 | 意味 |
|---|---|
| ファイルシステム | データを保存・管理する仕組み |
| マウント | ファイルシステムをディレクトリへ接続すること |
| マウントポイント | 接続先になるディレクトリ |
| アンマウント | 接続を解除すること |
mountコマンドの基本構文
mountコマンドの基本構文は次のとおりです。
mount [オプション] デバイス マウントポイント
実際には管理者権限が必要になることが多いため、sudoを付けて実行します。
sudo mount デバイス マウントポイント
たとえば、/dev/sdb1を/mnt/dataへマウントする場合は次のように実行します。
sudo mount /dev/sdb1 /mnt/data
現在マウントされている一覧を確認する方法
mountをオプションなしで実行すると、現在マウントされているファイルシステムの一覧を表示できます。
mount
ただし、出力が多くなりやすいため、現在のLinux環境ではfindmntやdf -h、lsblkもよく使われます。
findmnt
df -h
lsblk
mountはマウント操作そのもの、dfは空き容量確認、lsblkはディスク構成確認に向いています。
マウント前にディスク構成を確認する
マウントする前に、対象デバイスを確認します。
lsblk
実行結果の例です。
NAME SIZE TYPE MOUNTPOINTS
sda 50G disk
├─sda1 1G part /boot
└─sda2 49G part /
sdb 100G disk
└─sdb1 100G part
この例では、/dev/sdb1がまだマウントされていない追加パーティションです。
ファイルシステム種類やUUIDも確認したい場合は、次のように実行します。
lsblk -f
または、前回解説したblkidを使います。
sudo blkid /dev/sdb1
マウントポイントを作成する方法
マウントするには、接続先となるディレクトリが必要です。
この接続先ディレクトリをマウントポイントと呼びます。
sudo mkdir -p /mnt/data
/mntは、一時的なマウント先としてよく使われるディレクトリです。
サーバーでデータ用ディスクとして使う場合は、/dataのようなディレクトリを作ることもあります。
sudo mkdir -p /data
デバイス名を指定してマウントする方法
マウントポイントを作成したら、デバイスをマウントします。
sudo mount /dev/sdb1 /mnt/data
マウントできたか確認します。
df -h /mnt/data
または、lsblkで確認します。
lsblk
実行結果の例です。
sdb 100G disk
└─sdb1 100G part /mnt/data
MOUNTPOINTSに/mnt/dataが表示されていれば、マウントされています。
ファイルシステム種類を指定してマウントする方法
通常は自動判定されますが、ファイルシステムの種類を明示したい場合は-tを使用します。
sudo mount -t ext4 /dev/sdb1 /mnt/data
XFSの場合は次のように指定します。
sudo mount -t xfs /dev/sdb1 /mnt/data
USBメモリなどでvfatを指定する場合もあります。
sudo mount -t vfat /dev/sdb1 /mnt/usb
UUIDを指定してマウントする方法
デバイス名ではなくUUIDを指定してマウントすることもできます。
まずUUIDを確認します。
sudo blkid /dev/sdb1
実行結果の例です。
/dev/sdb1: UUID="5555-6666-7777-8888" TYPE="ext4"
UUIDを指定してマウントします。
sudo mount UUID=5555-6666-7777-8888 /mnt/data
デバイス名は接続順で変わる可能性がありますが、UUIDは同じファイルシステムを識別しやすいため、/etc/fstabでもよく使われます。
読み取り専用でマウントする方法
ファイルを書き換えたくない場合は、読み取り専用でマウントできます。
sudo mount -o ro /dev/sdb1 /mnt/data
roは読み取り専用を意味します。
調査目的でディスクを開く場合や、誤って内容を変更したくない場合に便利です。
読み書き可能でマウントする場合はrwを指定します。
sudo mount -o rw /dev/sdb1 /mnt/data
よく使うマウントオプション
| オプション | 意味 |
|---|---|
ro |
読み取り専用でマウントする |
rw |
読み書き可能でマウントする |
noexec |
実行ファイルの実行を禁止する |
nosuid |
SUID/SGIDビットの効果を無効にする |
nodev |
デバイスファイルを無効にする |
defaults |
標準的なオプションでマウントする |
複数のオプションを指定する場合は、カンマ区切りで指定します。
sudo mount -o ro,noexec,nosuid /dev/sdb1 /mnt/data
ISOファイルをマウントする方法
ISOファイルの中身を確認したい場合は、ループデバイスとしてマウントできます。
sudo mkdir -p /mnt/iso
sudo mount -o loop sample.iso /mnt/iso
マウント後、/mnt/isoからISOファイルの中身を確認できます。
ls -l /mnt/iso
ISOファイルは読み取り専用で扱われることが多いです。
bindマウントを使う方法
bindマウントを使うと、既存のディレクトリを別の場所にも表示できます。
sudo mkdir -p /mnt/logs
sudo mount --bind /var/log /mnt/logs
この例では、/var/logの内容を/mnt/logsからも見られるようになります。
コンテナ、chroot環境、検証環境などで使われることがあります。
tmpfsを一時的にマウントする方法
tmpfsは、メモリ上に一時的なファイルシステムを作る仕組みです。
sudo mkdir -p /mnt/tmp
sudo mount -t tmpfs -o size=512M tmpfs /mnt/tmp
この例では、最大512MBのtmpfsを/mnt/tmpへマウントしています。
一時ファイルの検証や高速な一時領域として使われることがありますが、メモリを使うためサイズ指定には注意が必要です。
マウントを解除する方法
マウントを解除するには、umountコマンドを使用します。
sudo umount /mnt/data
または、デバイス名で指定できます。
sudo umount /dev/sdb1
umountは「unmount」ではなく、コマンド名としてはumountです。
詳しい解除方法は、別記事でumountコマンドとして解説します。
/etc/fstabとは
/etc/fstabは、起動時に自動でマウントするファイルシステムを設定するファイルです。
mountコマンドで手動マウントしただけでは、再起動後に自動でマウントされるとは限りません。
再起動後も自動でマウントしたい場合は、/etc/fstabに設定を書きます。
例です。
UUID=5555-6666-7777-8888 /data ext4 defaults 0 2
| 項目 | 意味 |
|---|---|
UUID=... |
マウントするファイルシステム |
/data |
マウントポイント |
ext4 |
ファイルシステム種類 |
defaults |
マウントオプション |
0 |
dump設定 |
2 |
起動時チェック順序 |
/etc/fstabを編集するときの注意点
/etc/fstabの設定を間違えると、起動時にマウントエラーが発生する場合があります。
編集前にバックアップを作成しておきましょう。
sudo cp /etc/fstab /etc/fstab.bak
編集後は、すぐに再起動せず、次のコマンドで設定を確認します。
sudo mount -a
mount -aは、/etc/fstabに書かれた内容をもとに、未マウントのファイルシステムをマウントします。
ここでエラーが出る場合は、再起動前に設定を修正してください。
mount -aの使い方
/etc/fstabの設定確認では、mount -aをよく使います。
sudo mount -a
正常に終了すれば、設定されたファイルシステムがマウントされます。
確認にはdf -hやlsblkを使用します。
df -h
lsblk
/etc/fstabを編集したあとにいきなり再起動するのではなく、先にmount -aで確認するのが安全です。
mountコマンドの主なオプション
| オプション | 説明 |
|---|---|
-t 種類 |
ファイルシステム種類を指定する |
-o オプション |
マウントオプションを指定する |
-a |
/etc/fstabに基づいてまとめてマウントする |
--bind |
既存ディレクトリを別の場所にもマウントする |
-r |
読み取り専用でマウントする |
-w |
読み書き可能でマウントする |
-v |
詳細表示する |
--help |
ヘルプを表示する |
--version |
バージョン情報を表示する |
mount・lsblk・blkid・dfの違い
ディスク関連の確認では、mount、lsblk、blkid、dfをよく使います。
| コマンド | 主な用途 |
|---|---|
mount |
ファイルシステムをマウントする |
lsblk |
ディスク・パーティション構成を確認する |
blkid |
UUIDやファイルシステム種類を確認する |
df |
空き容量や使用率を確認する |
追加ディスクを使う場合は、次のような流れで確認すると分かりやすいです。
lsblk
sudo blkid /dev/sdb1
sudo mount /dev/sdb1 /mnt/data
df -h /mnt/data
追加ディスクをマウントする基本手順
追加ディスクを一時的にマウントする基本手順は次のとおりです。
1. ディスク構成を確認する
lsblk -f
2. マウントポイントを作成する
sudo mkdir -p /mnt/data
3. マウントする
sudo mount /dev/sdb1 /mnt/data
4. マウント状態を確認する
df -h /mnt/data
lsblk
5. 必要なら/etc/fstabへ登録する
sudo blkid /dev/sdb1
sudo cp /etc/fstab /etc/fstab.bak
sudo vi /etc/fstab
sudo mount -a
/etc/fstabの編集は慎重に行いましょう。
mountコマンドでよくあるエラー
mount point does not exist
mount: /mnt/data: mount point does not exist.
マウント先のディレクトリが存在していません。
先にマウントポイントを作成します。
sudo mkdir -p /mnt/data
wrong fs type, bad option, bad superblock
mount: wrong fs type, bad option, bad superblock on /dev/sdb1
ファイルシステム種類が違う、未フォーマット、破損、必要なドライバがないなどの可能性があります。
まず情報を確認します。
lsblk -f
sudo blkid /dev/sdb1
ファイルシステムが表示されない場合は、まだ作成されていない可能性があります。
permission denied
mount: permission denied
管理者権限が不足している可能性があります。
sudo mount /dev/sdb1 /mnt/data
また、マウントオプションやセキュリティ設定によって拒否される場合もあります。
already mounted
mount: /dev/sdb1 is already mounted
対象のデバイスがすでにマウントされています。
現在の状態を確認します。
lsblk
findmnt
target is busy
umount: /mnt/data: target is busy
これはアンマウント時によく出るエラーです。
対象ディレクトリを使用中のプロセスがあると解除できません。
lsof +f -- /mnt/data
または、現在そのディレクトリ内にいるターミナルがないか確認してください。
よくある質問
mountコマンドは何に使いますか?
ディスクやパーティション、ISOファイルなどのファイルシステムを、Linuxのディレクトリへ接続して使えるようにするために使います。
マウントポイントとは何ですか?
ファイルシステムの接続先になるディレクトリのことです。たとえば/mnt/dataや/dataなどがマウントポイントになります。
マウント前に何を確認すればよいですか?
lsblk -fやblkidで、対象デバイス名、ファイルシステム種類、UUIDを確認します。
lsblk -f
sudo blkid /dev/sdb1
デバイス名ではなくUUIDでマウントできますか?
はい。次のようにUUIDを指定してマウントできます。
sudo mount UUID=5555-6666-7777-8888 /mnt/data
再起動後も自動でマウントするには?
/etc/fstabへ設定を追加します。編集前にバックアップを取り、編集後はsudo mount -aで確認しましょう。
読み取り専用でマウントできますか?
-o roを指定します。
sudo mount -o ro /dev/sdb1 /mnt/data
ISOファイルをマウントできますか?
-o loopを使うとISOファイルをマウントできます。
sudo mount -o loop sample.iso /mnt/iso
mountとdfの違いは何ですか?
mountはファイルシステムを接続するコマンドです。dfはマウント済みファイルシステムの空き容量や使用率を確認するコマンドです。
UbuntuやCentOS Streamでも使えますか?
はい。Ubuntu、Debian、CentOS Stream、Rocky Linux、AlmaLinuxなど、多くのLinuxディストリビューションで利用できます。
まとめ
mountコマンドは、Linuxでファイルシステムをディレクトリへ接続するためのコマンドです。
基本的な使い方は次のとおりです。
sudo mount /dev/sdb1 /mnt/data
ファイルシステム種類を指定する場合は-tを使用します。
sudo mount -t ext4 /dev/sdb1 /mnt/data
読み取り専用でマウントする場合は-o roを使用します。
sudo mount -o ro /dev/sdb1 /mnt/data
ISOファイルをマウントする場合は-o loopを使います。
sudo mount -o loop sample.iso /mnt/iso
再起動後も自動でマウントしたい場合は、/etc/fstabに設定します。
ただし、/etc/fstabの設定ミスは起動時のトラブルにつながる可能性があります。編集前にバックアップを取り、編集後はsudo mount -aで確認しましょう。
sudo cp /etc/fstab /etc/fstab.bak
sudo mount -a
ディスクを扱うときは、まずlsblk -fやblkidで対象を確認し、正しいデバイスやUUIDを指定して安全にマウントしましょう。




コメント