「興味深い」マウントポイントのみを表示/面白いタイプのフィルタリング

「興味深い」マウントポイントのみを表示/面白いタイプのフィルタリング

私はマウントされたドライブを表示しようとしましたが、あまりmount興味深いドライブ(例:非物理ドライブ)を見たくありませんでした。だから私はかつて次のスクリプトを持っていましたmnt

mount | grep -Ev 'type (proc|sysfs|tmpfs|devpts) '

Ubuntu 8.04では、出てきてマウントポイントのみがext3表示reiserfsされます。その行は実際にコメントされており、今は次のものを使用しています(Ubuntu 12.04の場合)。

mount | grep -Ev 'type (proc|sysfs|tmpfs|devpts|debugfs|rpc_pipefs|nfsd|securityfs|fusectl|devtmpfs) '

ext4私のパーティションとパーティションのみを表示しますzfs(使用を放棄するreiserfs)。

Ubuntu 14.04を準備しており、スクリプトを再拡張する必要があります(cgroup、pstore)。スクリプトを拡張せずにこれを行うより良い方法はありますか?私はマウントされた物理ディスクとマウントされたネットワークドライブ(nfs、)にのみ興味がありますcifs

ベストアンサー1

使用しないでくださいmount

からman mount

  • リストされています。
    • リストモードは、以前のバージョンとの互換性のためにのみ維持されます。
    • より強力でカスタマイズ可能な出力を使用するためfindmnt(8)、特にスクリプトで。
    • マウントポイント名の制御文字は次に置き換えられます。

マニュアルで推奨されているとおりに使用してくださいfindmnt。以下に説明するいくつかの興味深いオプションがありますfindmnt --help

  • -iまたは--invert
    • マッチング感反転
  • -Rまたは--submounts
    • ファイルシステムに一致するすべてのサブマウントを印刷します。
  • -tまたは--typeslist
    • FSタイプ別に設定されたファイルシステムの制限

これらはそのうちのほんの一部です。たくさんコマンドラインからフィルタを適用できます。

man findmnt
  • はい
    • findmnt --fstab -t nfs
    • 定義されているすべてのNFSファイルシステムを印刷します/etc/fstab
    • findmnt --fstab /mnt/foo
    • /etc/fstabマウントポイントディレクトリを含むすべてのファイルシステムを印刷します/mnt/foo。また、--bindソースのあるインストールも印刷します/mnt/foo

以下を使用できます。

findmnt -it sysfs,cgroup,proc,devtmpfs,devpts,pstore,debugfs,hugetlbfs,mqueue,configfs

それしなければならない私はそれがすべての偽のファイルシステムをろ過すると信じています。

ただし、以下を使用して同じことを実行できますmount

mount -t nosysfs,nodevtmpfs...

おそらくより良いアプローチは、以下に説明する次のいずれかのコマンドを使用することですfindmnt --help

  • findmnt -Dまたはfindmnt --df
    • 出力を模倣するdf(1)。このオプションは、-o SOURCE,FSTYPE,SIZE,USED,AVAIL,USE%,TARGETすべての擬似ファイルシステムと同じですが、除外されます。--allすべてのファイルシステムを印刷するために使用されます。

デフォルトにリストフィールドを追加できます。findmnt -Do+field,+field-D.... 以下の項目を省略して、ファイルシステムを使用して独自のフィールドリストを指定できます。+findmnt -Dofield,field

おすすめ記事