web-dev-qa-db-ja.com

Linuxでマウントされたファイルシステムの完全で正確なリストを取得するにはどうすればよいですか?

通常、mountを使用して、マウントされているファイルシステムを確認します。 mount/etc/mtabの間に何らかの関連があることも知っていますが、詳細はわかりません。読んだ後 / proc /がマウントされているかどうかを確認する方法 もっと混乱します。

私の質問は、マウントされたファイルシステムの最も正確なリストを取得するにはどうすればよいですか? mountを使用するか、/etc/mtabの内容または/proc/mountsの内容を読み取るだけですか?最も信頼できる結果をもたらすものは何ですか?

168
xanpeng

v。2.18(2010年7月)以降util-linuxには、現在マウントされているファイルシステムのリストを表示できるツールが含まれています。

findmnt

-lを使用してデフォルトのツリービューからリストビューに切り替え、-oを使用して出力列を定義し(lsblkと同様)、-tを使用してファイルシステムタイプに基づいて結果をフィルタリングできます。等...

findmnt -loソース、ターゲット、fstype、ラベル、オプション、使用-t ext4
SOURCE    TARGET      FSTYPE LABEL OPTIONS                           USED
/dev/sda1 /           ext4   Arch  rw,noatime,discard,data=ordered  17.6G
/dev/sdb2 /media/DATA ext4   DATA  rw,noatime,discard,data=ordered    44M

詳細については、manページ(およびfindmnt --helpを使用して、使用可能な列のリストを取得してください)をお読みください。

81
don_crissti

たぶん、この質問への回答から5年が経過したためか、状況が変化しました。 cat /proc/mountsはあなたが気にしない多くの情報を作成します。今日、私は、これが究極の解決策であると思います。

df -h --output=source,target

マニュアルページを読むとき、あなたができるあらゆる種類のオプションがありますが、これはあなたが何をするかです。たとえば、結果をさらにクリーンアップするには、次のコマンドで「tmpfs」のファイルタイプを除外できます。

df -hx tmpfs --output=source,target

dfは、ファイルシステムレベルで機能し、ファイルレベルでは機能しません。

上記のコマンドには、ネットワークマウントも含まれます。

もう少し詳しい情報を見るにはこれを使ってください:

df -hT

[〜#〜] note [〜#〜]マウントが遅いネットワーク接続では、これには数分かかる場合があります!

マウントされたネットワーク接続がない(またはrootアクセス権がある)場合、これはさらに優れています。

Sudo lsblk -f
37
Rick

ほとんどの場合、mountが最も便利な方法です。現在マウントされているファイルシステムの完全で正確なリストについては、_/proc/mounts_の内容を読む必要があります(例:_cat /proc/mounts_を使用)。

たとえば、_/_ readwriteのマウントが失敗し、それがフォールバックとして読み取り専用でマウントされた場合、_/etc/mtab_(mountコマンドがそこから読み取り、マウントされているものを通知し、書き込みます-可能であれば(マウントされるものを変更するときに)、更新されず、_/_(_/etc/mtab_を含む)が現在読み取り専用でマウントされていることが反映されます。この状況では、mountを実行すると、通常、_/_が読み取り/書き込みでマウントされたことが(誤って)通知されます。

通常の状態(つまり、それを含むファイルシステムに書き込みできる場合)では、_/etc/mtab_には現在マウントされているファイルシステムのリストが含まれます。これは_/etc/fstab_と混同しないでください。これには、システムの起動時に自動的にマウントされるはずのファイルシステムのリストが含まれています。

もちろん、_/proc_仮想ファイルシステム自体がマウントされていない場合、_/proc/mounts_を含む仮想ファイルを読み取ることはできません。これは非常にまれなケースです。この状況では、mountがマウントされているものを確認するためのおそらく最良のオプションです。

23
Eliah Kagan