マウントとアンマウント
100%

ファイルシステム · レッスン 6

マウントとアンマウント

確認済みのソースとマウントポイントを使い、ファイルシステムを接続、確認、安全に切断する方法を学びます。

マウントとは、見えている名前空間内のディレクトリにファイルシステムを接続することです。ソースには、ブロックデバイス、ネットワークエクスポート、仮想ファイルシステム、バインド元、そのほか実装固有のオブジェクトを指定できます。接続先のディレクトリをマウントポイントと呼びます。

マウントポイントを準備して確認する

ローカルの運用方針で必要な場合は、用途が分かる名前のディレクトリを作成します。

$ sudo mkdir -p /mnt/mydrive

マウント前に確認します。

$ findmnt --target /mnt/mydrive
$ sudo ls -la /mnt/mydrive

空でないディレクトリへマウントすると、既存のエントリはアンマウントするまで新しいファイルシステムの背後に隠れます。削除されるわけではありません。アプリケーションを混乱させ、見えないままディスク容量を消費することがあるため、空の専用マウントポイントを使ってください。

別のファイルシステムをディレクトリへマウントすると、その中にあったファイルはどうなりますか?

確認済みのファイルシステムをマウントする

ソースの識別情報、検出された種類、想定する内容を確認した後、明示的にマウントします。

$ sudo mount -t ext4 /dev/VERIFIED-PARTITION /mnt/mydrive

-t オプションはファイルシステムの実装を指定します。mount は種類を自動検出できることも多いですが、種類と検討済みのオプションを明示すると意図が明確になります。信頼できない内容やリムーバブルメディアには、ワークロードに適合する場合、ronosuidnodevnoexec などの制限オプションを検討してください。ただし、それぞれに限界があり、完全なサンドボックスとして扱うことはできません。

実際にマウントされた内容を確認します。

$ findmnt --target /mnt/mydrive -o TARGET,SOURCE,FSTYPE,OPTIONS

マウントは名前空間単位です。コンテナやプライベートなサービス名前空間で作成したマウントは、別プロセスの表示には現れないことがあります。

この手順で mount コマンドが行うことは何ですか?

ファイルシステム UUID を使う

/dev/sdb2 のような列挙名は変わることがあります。次のコマンドでファイルシステムの識別子を調べます。

$ lsblk -f
$ sudo blkid

確認済みのファイルシステムを UUID でマウントします。

$ sudo mount UUID=130b882f-7d79-436d-a096-1e594c92bb76 /mnt/mydrive

UUID が識別するのはファイルシステムであり、必ずしも物理ディスクではありません。再フォーマットすると変わり、複製すると重複することがあります。元のファイルシステムと複製を同じシステムへ接続する前に、一意であることを確認してください。

永続的な設定で、/dev/sdX よりファイルシステム UUID が適していることが多いのはなぜですか?

安全にアンマウントする

正確なマウントポイントを指定して切断します。

$ sudo umount /mnt/mydrive

コマンド名は最初の n がない umount です。アンマウントに成功すると、カーネルが必要な書き戻しを完了し、参照状態が許せばファイルシステムが切断されます。ストレージを取り外す前に、findmnt でもう一度確認してください。

リムーバブルメディアでは、アンマウントに成功しても安全な取り外し操作が完了したとは限りません。デスクトップのストレージ機能には、デバイスキャッシュをフラッシュして USB デバイスの電源を切る、取り出しまたは電源オフ操作が用意されていることがあります。プラットフォームとハードウェアの手順に従ってください。

/mnt/mydrive を切断するコマンドはどれですか?

使用中のファイルシステムを診断する

開いているファイル、プロセスの作業ディレクトリ、入れ子のマウント、スワップ、そのほかのストレージ層など、名前空間にアクティブな参照が残っているとアンマウントは失敗します。すぐに強制せず、原因を調べます。

$ findmnt --submounts /mnt/mydrive
$ sudo fuser -vm /mnt/mydrive

シェルをツリーの外へ移動し、原因となるアプリケーションを正常に停止し、親より先に子マウントをアンマウントします。遅延アンマウントと強制オプションには特殊な意味があり、アクティブな参照が残ったりデータを失ったりするおそれがあります。文書に基づく復旧上の理由がある場合にだけ使ってください。

umount がファイルシステムを使用中だと報告する原因になり得るものはどれですか?

レッスン完了

マウントとアンマウント を完了しました

これで、確認可能な範囲でファイルシステムを接続、切断できるようになりました。

  • 空の専用マウントポイントを使う。

  • ソース、種類、オプション、実際のマウント結果を確認する。

  • 永続的な参照には、一意のファイルシステム識別子を優先する。

  • 対象を指定してアンマウントし、取り外す前に切断を確認する。

  • 使用中のマウントを強制切断せず、アクティブな参照を診断する。

学習進捗を保存

無料アカウントを作成してこのレッスンを保存し、どのデバイスからでも学習を続けられます。

無料アカウントを作成
次のレッスン
ファイルシステム に戻る