GNU/Linux >> Linux の 問題 >  >> Linux

LinuxおよびUnixでDufを使用してディスク使用量を表示する方法

LinuxおよびUnixでディスク使用量を表示するために最も一般的に使用されるアプリケーションはdu 。 Du、 dの略 isk u sageは、どのファイルとディレクトリが最も多くのディスク領域を占有しているかを調べるために広く使用されています。他にも多くのコマンドラインがあり、このタスクを実行するためのグラフィカルツールがあります。私たちはすでにそれらのいくつかをカバーし、過去に私たちのブログにここに投稿しました。本日、 dufという名前の別のディスク使用状況チェッカーを使用します。 。

Dufは、LinuxおよびUnixライクなシステムでのディスク使用量を検索するためのコマンドラインユーティリティです。ディスク使用量の詳細が表形式の列とユーザーフレンドリーなレイアウトで表示されます。 JSONでディスク使用量の出力を取得することもできます フォーマットも。

出力が画面の表示部分を超えると、端末の幅が自動的に調整されます。結果は、合計サイズ、ファイルシステムタイプ、使用済みおよび空き領域、マウントポイント、iノードで並べ替えることができます。特定のデバイスの詳細を表示、非表示、および出力から除外することもできます。

Dufはdの縮約です isk u セージ/f リー。 Goで記述されたオープンソースアプリケーションです。 プログラミング言語であり、MITライセンスの下でリリースされています。 GNU / Linux、BSD、MacOSで動作します。

LinuxにDufをインストールする

現在、DufはArchベース、DEBベース、RPMベースのLinuxオペレーティングシステム用にパッケージ化されています。

DufはAURで利用できます 。 Arch Linuxまたは任意のarchバリアントを使用している場合は、AURヘルパープログラム( Yay など)を使用してインストールできます。 。

$ yay -S duf

Debian、Ubuntu、Linux MintなどのDEBベースのシステムでは、リリースページから.debバイナリインストールファイルをダウンロードします。 システムのパッケージマネージャーを使用してインストールします。

$ sudo apt install gdebi
$ sudo gdebi duf_0.3.1_linux_amd64.deb

RHEL、CentOS、FedoraなどのRPMベースのシステムでは、.rpmバイナリファイルをダウンロードし、次のコマンドを使用してインストールします。

$ sudo rpm -Uvh duf_0.3.1_linux_amd64.rpm

ソースからビルドすることもできます。 GO言語をインストールしていることを確認してください システム上で。

dufリポジトリのクローンを作成します:

$ git clone https://github.com/muesli/duf.git

上記のコマンドは、「duf」という名前のローカルディレクトリにdufオンラインリポジトリの内容を複製します。そのディレクトリに移動します:

$ cd duf

コマンドを使用してコンパイルしてインストールします:

$ go build

LinuxおよびUnixでのDufによるディスク使用量の表示

dufでディスク容量の使用量を見つけるのは簡単です!

dufを実行するだけです。 以下のようなオプションなしのコマンド:

$ duf

出力例:

╭──────────────────────────────────────────────────────────────────────────────────────────╮
│ 1 local device                                                                           │
├────────────┬────────┬────────┬───────┬───────────────────────────────┬──────┬────────────┤
│ MOUNTED ON │   SIZE │   USED │ AVAIL │              USE%             │ TYPE │ FILESYSTEM │
├────────────┼────────┼────────┼───────┼───────────────────────────────┼──────┼────────────┤
│ /          │ 457.4G │ 412.1G │ 22.1G │ [##################..]  90.1% │ ext4 │ /dev/sda1  │
╰────────────┴────────┴────────┴───────┴───────────────────────────────┴──────┴────────────╯
╭───────────────────────────────────────────────────────────────────────────────────────────────────╮
│ 7 special devices                                                                                 │
├────────────────┬────────┬────────┬────────┬───────────────────────────────┬──────────┬────────────┤
│ MOUNTED ON     │   SIZE │   USED │  AVAIL │              USE%             │ TYPE     │ FILESYSTEM │
├────────────────┼────────┼────────┼────────┼───────────────────────────────┼──────────┼────────────┤
│ /dev           │   3.8G │     0B │   3.8G │                               │ devtmpfs │ udev       │
│ /dev/shm       │   3.8G │ 235.3M │   3.6G │ [#...................]   6.0% │ tmpfs    │ tmpfs      │
│ /run           │ 787.0M │   1.8M │ 785.2M │ [....................]   0.2% │ tmpfs    │ tmpfs      │
│ /run/lock      │   5.0M │   4.0K │   5.0M │ [....................]   0.1% │ tmpfs    │ tmpfs      │
│ /run/snapd/ns  │ 787.0M │   1.8M │ 785.2M │ [....................]   0.2% │ tmpfs    │ tmpfs      │
│ /run/user/1000 │ 787.0M │ 238.2M │ 548.8M │ [######..............]  30.3% │ tmpfs    │ tmpfs      │
│ /sys/fs/cgroup │   3.8G │     0B │   3.8G │                               │ tmpfs    │ tmpfs      │
╰────────────────┴────────┴────────┴────────┴───────────────────────────────┴──────────┴────────────╯

上記の出力でわかるように、Dufは次の詳細を表形式の列形式で一覧表示します。

  • マウントされたデバイスの総数
  • マウントポイント
  • ルートパーティションの合計サイズ
  • 使用済みおよび空きディスク容量の合計サイズ
  • 合計ディスク使用率(パーセンテージ)
  • ファイルシステムタイプ
  • ファイルシステム名など

疑似ファイルシステム、重複ファイルシステム、アクセスできないファイルシステムなど、すべての詳細を表示するには、次のコマンドを実行します。

$ duf --all

出力例:

╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ 24 local devices                                                                                                  │
├────────────────────────────────┬────────┬────────┬───────┬───────────────────────────────┬──────────┬─────────────┤
│ MOUNTED ON                     │   SIZE │   USED │ AVAIL │              USE%             │ TYPE     │ FILESYSTEM  │
├────────────────────────────────┼────────┼────────┼───────┼───────────────────────────────┼──────────┼─────────────┤
│ /                              │ 457.4G │ 412.1G │ 22.1G │ [##################..]  90.1% │ ext4     │ /dev/sda1   │
│ /run/snapd/ns/multipass.mnt    │     0B │     0B │    0B │                               │ nsfs     │ nsfs        │
│ /snap/bashtop/128              │  23.1M │  23.1M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop0  │
│ /snap/bashtop/134              │  23.1M │  23.1M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop1  │
│ /snap/chromium/1298            │ 162.1M │ 162.1M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop2  │
│ /snap/chromium/1320            │ 162.0M │ 162.0M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop3  │
│ /snap/core/9804                │  96.6M │  96.6M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop4  │
│ /snap/core/9993                │  97.1M │  97.1M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop6  │
│ /snap/core18/1880              │  55.0M │  55.0M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop15 │
│ /snap/core18/1885              │  55.4M │  55.4M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop5  │
│ /snap/gifcurry/8               │ 149.0M │ 149.0M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop7  │
│ /snap/gnome-3-26-1604/100      │ 140.8M │ 140.8M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop16 │
│ /snap/gnome-3-26-1604/98       │ 140.8M │ 140.8M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop8  │
│ /snap/gnome-3-28-1804/116      │ 160.2M │ 160.2M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop14 │
│ /snap/gnome-3-28-1804/128      │ 161.5M │ 161.5M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop10 │
│ /snap/gnome-3-34-1804/33       │ 255.6M │ 255.6M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop9  │
│ /snap/gnome-3-34-1804/36       │ 255.6M │ 255.6M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop11 │
│ /snap/gnome-system-monitor/145 │   2.2M │   2.2M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop17 │
│ /snap/gnome-system-monitor/148 │   2.2M │   2.2M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop18 │
│ /snap/gtk-common-themes/1502   │  54.9M │  54.9M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop12 │
│ /snap/gtk-common-themes/1506   │  62.1M │  62.1M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop13 │
│ /snap/multipass/2531           │ 220.0M │ 220.0M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop19 │
│ /snap/multipass/2604           │ 220.0M │ 220.0M │    0B │ [####################] 100.0% │ squashfs │ /dev/loop20 │
│ /sys/fs/fuse/connections       │     0B │     0B │    0B │                               │ fusectl  │ fusectl     │
╰────────────────────────────────┴────────┴────────┴───────┴───────────────────────────────┴──────────┴─────────────╯
╭─────────────────────────────────────────────────────────────────────────────────╮
│ 1 FUSE device                                                                   │
├─────────────────────┬──────┬──────┬───────┬──────┬─────────────────┬────────────┤
│ MOUNTED ON          │ SIZE │ USED │ AVAIL │ USE% │ TYPE            │ FILESYSTEM │
├─────────────────────┼──────┼──────┼───────┼──────┼─────────────────┼────────────┤
│ /run/user/1000/gvfs │   0B │   0B │    0B │      │ fuse.gvfsd-fuse │ gvfsd-fuse │
╰─────────────────────┴──────┴──────┴───────┴──────┴─────────────────┴────────────╯
╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ 32 special devices                                                                                                     │
├─────────────────────────────────┬────────┬────────┬────────┬───────────────────────────────┬─────────────┬─────────────┤
│ MOUNTED ON                      │   SIZE │   USED │  AVAIL │              USE%             │ TYPE        │ FILESYSTEM  │
├─────────────────────────────────┼────────┼────────┼────────┼───────────────────────────────┼─────────────┼─────────────┤
│ /dev                            │   3.8G │     0B │   3.8G │                               │ devtmpfs    │ udev        │
│ /dev/hugepages                  │     0B │     0B │     0B │                               │ hugetlbfs   │ hugetlbfs   │
│ /dev/mqueue                     │     0B │     0B │     0B │                               │ mqueue      │ mqueue      │
│ /dev/pts                        │     0B │     0B │     0B │                               │ devpts      │ devpts      │
│ /dev/shm                        │   3.8G │ 224.1M │   3.6G │ [#...................]   5.7% │ tmpfs       │ tmpfs       │
│ /proc                           │     0B │     0B │     0B │                               │ proc        │ proc        │
│ /proc/sys/fs/binfmt_misc        │     0B │     0B │     0B │                               │ binfmt_misc │ binfmt_misc │
│ /run                            │ 787.0M │   1.8M │ 785.2M │ [....................]   0.2% │ tmpfs       │ tmpfs       │
│ /run/lock                       │   5.0M │   4.0K │   5.0M │ [....................]   0.1% │ tmpfs       │ tmpfs       │
│ /run/snapd/ns                   │ 787.0M │   1.8M │ 785.2M │ [....................]   0.2% │ tmpfs       │ tmpfs       │
│ /run/user/1000                  │ 787.0M │ 238.2M │ 548.8M │ [######..............]  30.3% │ tmpfs       │ tmpfs       │
│ /sys                            │     0B │     0B │     0B │                               │ sysfs       │ sysfs       │
│ /sys/fs/bpf                     │     0B │     0B │     0B │                               │ bpf         │ none        │
│ /sys/fs/cgroup                  │   3.8G │     0B │   3.8G │                               │ tmpfs       │ tmpfs       │
│ /sys/fs/cgroup/blkio            │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/cpu,cpuacct      │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/cpuset           │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/devices          │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/freezer          │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/hugetlb          │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/memory           │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/net_cls,net_prio │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/perf_event       │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/pids             │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/rdma             │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/systemd          │     0B │     0B │     0B │                               │ cgroup      │ cgroup      │
│ /sys/fs/cgroup/unified          │     0B │     0B │     0B │                               │ cgroup2     │ cgroup2     │
│ /sys/fs/pstore                  │     0B │     0B │     0B │                               │ pstore      │ pstore      │
│ /sys/kernel/config              │     0B │     0B │     0B │                               │ configfs    │ configfs    │
│ /sys/kernel/debug               │     0B │     0B │     0B │                               │ debugfs     │ debugfs     │
│ /sys/kernel/security            │     0B │     0B │     0B │                               │ securityfs  │ securityfs  │
│ /sys/kernel/tracing             │     0B │     0B │     0B │                               │ tracefs     │ tracefs     │
╰─────────────────────────────────┴────────┴────────┴────────┴───────────────────────────────┴─────────────┴─────────────╯

出力から特定のデバイスの詳細を除外する

場合によっては、出力から一部の詳細を除外したいことがあります。たとえば、次のコマンドは特別なデバイスの詳細を除外します(例:/run/lock/sys/fs/bpf

$ duf --hide-special

これにより、ローカルデバイスのディスク使用量の詳細のみが表示されます。つまり、出力から特別なデバイスが削除されます。

╭──────────────────────────────────────────────────────────────────────────────────────────╮
│ 1 local device                                                                           │
├────────────┬────────┬────────┬───────┬───────────────────────────────┬──────┬────────────┤
│ MOUNTED ON │   SIZE │   USED │ AVAIL │              USE%             │ TYPE │ FILESYSTEM │
├────────────┼────────┼────────┼───────┼───────────────────────────────┼──────┼────────────┤
│ /          │ 457.4G │ 412.0G │ 22.1G │ [##################..]  90.1% │ ext4 │ /dev/sda1  │
╰────────────┴────────┴────────┴───────┴───────────────────────────────┴──────┴────────────╯

サポートされているその他のオプションは次のとおりです。

  • --hide-local
  • --hide-network
  • --hide-fuse
  • --hide-loops
  • --hide-binds

ソート出力

次のようなさまざまなパラメータで並べ替えられたディスク使用量の詳細を表示できます。

  • mountpoint
  • size
  • used
  • avail
  • usage
  • inodes
  • inodes_used
  • inodes_avail
  • inodes_usage
  • type
  • filesystem など

たとえば、出力をサイズで並べ替えるには、次のコマンドを使用します。

$ duf --sort size

出力をファイルシステムで並べ替える:

$ duf --sort filesystem

特定の列を表示または非表示にする

一部のデバイスの詳細を出力から除外するのと同様に、特定の列を出力から表示または非表示にすることもできます。

次のコマンドは、mountpointの出力を表示します 、size およびusage 列のみ:

$ duf --output mountpoint,size,usage

出力例:

╭─────────────────────────────────────────────────────╮
│ 1 local device                                      │
├────────────┬────────┬───────────────────────────────┤
│ MOUNTED ON │   SIZE │              USE%             │
├────────────┼────────┼───────────────────────────────┤
│ /          │ 457.4G │ [##################..]  90.1% │
╰────────────┴────────┴───────────────────────────────╯
╭─────────────────────────────────────────────────────────╮
│ 7 special devices                                       │
├────────────────┬────────┬───────────────────────────────┤
│ MOUNTED ON     │   SIZE │              USE%             │
├────────────────┼────────┼───────────────────────────────┤
│ /dev           │   3.8G │                               │
│ /dev/shm       │   3.8G │ [#...................]   6.9% │
│ /run           │ 787.0M │ [....................]   0.2% │
│ /run/lock      │   5.0M │ [....................]   0.1% │
│ /run/snapd/ns  │ 787.0M │ [....................]   0.2% │
│ /run/user/1000 │ 787.0M │ [######..............]  30.3% │
│ /sys/fs/cgroup │   3.8G │                               │
╰────────────────┴────────┴───────────────────────────────╯

サポートされているオプションのリストは次のとおりです。

  • mountpoint
  • size
  • used
  • avail
  • usage
  • inodes
  • inodes_used
  • inodes_avail
  • inodes_usage
  • type
  • filesystem

iノードの詳細を表示する

ブロックの使用法ではなくiノード情報を一覧表示する場合は、次のコマンドを実行します。

$ duf --inodes

ディスク使用量の出力をJSON形式で表示する

出力を表形式の列形式で表示する代わりに、JSON形式で表示できます。

これを行うには、次を実行します:

$ duf --json

出力例:

[
 {
  "device": "sysfs",
  "device_type": "special",
  "mount_point": "/sys",
  "fs_type": "sysfs",
  "type": "sysfs",
  "opts": "rw,nosuid,nodev,noexec,relatime",
  "total": 0,
  "free": 0,
  "used": 0,
  "inodes": 0,
  "inodes_free": 0,
  "inodes_used": 0,
  "blocks": 0,
  "block_size": 4096
 },
.
.
.
{
  "device": "binfmt_misc",
  "device_type": "special",
  "mount_point": "/proc/sys/fs/binfmt_misc",
  "fs_type": "binfmt_misc",
  "type": "binfmt_misc",
  "opts": "rw,nosuid,nodev,noexec,relatime",
  "total": 0,
  "free": 0,
  "used": 0,
  "inodes": 0,
  "inodes_free": 0,
  "inodes_used": 0,
  "blocks": 0,
  "block_size": 4096
 }
]

助けを得る

dufユーティリティのヘルプセクションを表示するには、次のコマンドを実行します:

$ duf --help

出力例:

Usage of duf:
  -all
    	include pseudo, duplicate, inaccessible file systems
  -hide-binds
    	hide bind mounts (default true)
  -hide-fuse
    	hide fuse devices
  -hide-local
    	hide local devices
  -hide-loops
    	hide loop devices (default true)
  -hide-network
    	hide network devices
  -hide-special
    	hide special devices
  -inodes
    	list inode information instead of block usage
  -json
    	output all devices in JSON format
  -output string
    	output fields: mountpoint, size, used, avail, usage, inodes, inodes_used, inodes_avail, inodes_usage, type, filesystem
  -sort string
    	sort output by: mountpoint, size, used, avail, usage, inodes, inodes_used, inodes_avail, inodes_usage, type, filesystem (default "mountpoint")
  -width uint
    	max output width

Linux
  1. Linux上のFlatpak:それは何であり、それを使ってアプリをインストールする方法

  2. UNIX または Linux で USB ディスク ドライブをマウントする方法

  3. Linux で sar を使用して過去のパフォーマンスを表示する方法

  1. Linuxでディスクスペースの使用状況を確認する方法

  2. Linuxddコマンドを使用してディスクをクローン化する方法

  3. cPanel でディスク使用量を表示する方法

  1. Linuxでnloadを使用してネットワークの使用状況を監視する方法

  2. Ncduを使用してLinuxでディスクスペースの使用状況を確認する方法

  3. SaidarでLinuxシステムの統計を表示する方法