はじめに
Linux 環境におけるシステム管理では、ディスク空間の管理が重要な側面です。利用可能なディスク空間を監視することで、ストレージリソースが枯渇したときに発生するシステムクラッシュ、アプリケーションの障害、データの損失を防ぐことができます。システム管理者として、日常的なタスクの 1 つは、さまざまなファイルシステム全体のディスク空間使用率を確認することです。
この実験では、強力な df コマンド(「disk free」の略)を使用して、システム全体のディスク空間使用状況を確認する方法を学びます。すべてのマウントされたファイルシステムのディスク使用状況を調べ、出力を解釈し、特定のディレクトリに焦点を当てて、ストレージ使用率についてより深い洞察を得ます。これらのスキルは、効果的なシステムメンテナンスとリソース計画に不可欠です。
ディスク空間の使用状況を確認する
このステップでは、df コマンドを使用して、すべてのマウントされたファイルシステムのディスク空間使用状況を確認する方法を学びます。df コマンドは、ファイルシステム上で利用可能なディスク空間の量を表示する基本的なツールです。
LabEx の仮想マシン(VM)環境でターミナルを開きます。デフォルトでは、すでにホームディレクトリにいるはずです。そうでない場合は、以下のコマンドで移動できます。
cd ~
次に、以下のコマンドを実行してディスク空間使用状況を確認します。
df
以下のような出力が表示されます。
Filesystem 1K-blocks Used Available Use% Mounted on
overlay 20509264 3207552 16249328 17% /
tmpfs 395052 0 395052 0% /dev
tmpfs 1975244 0 1975244 0% /sys/fs/cgroup
shm 65536 0 65536 0% /dev/shm
/dev/sda1 20509264 3207552 16249328 17% /etc/hosts
tmpfs 1975244 0 1975244 0% /proc/acpi
tmpfs 1975244 0 1975244 0% /sys/firmware
この出力には、各ファイルシステムに関するいくつかの重要な情報が表示されます。
Filesystem:ファイルシステムの名前1K-blocks:1 キロバイトブロック単位の総サイズUsed:現在使用されている空間の量Available:使用可能な空間の量Use%:使用されている空間の割合Mounted on:ファイルシステムのマウントポイント
この情報は包括的ですが、1K ブロック単位の数値はすぐに読み取って解釈するのが難しい場合があります。
人間が読みやすい形式で表示する
ディスク空間の情報を扱う際には、データをより読みやすい形式で表示すると解釈が容易になることが多いです。このステップでは、df コマンドに -h フラグを使用して、人間が読みやすい形式でサイズを表示する方法を学びます。
-h オプション(「human-readable」の略)は、ディスク空間の数値を、サイズに応じた適切な単位(KB、MB、GB、または TB)を使用する形式に変換します。これにより、出力を一目で理解しやすくなります。
ターミナルで以下のコマンドを実行します。
df -h
以下のような出力が表示されるはずです。
Filesystem Size Used Avail Use% Mounted on
overlay 20G 3.1G 16G 17% /
tmpfs 386M 0 386M 0% /dev
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
shm 64M 0 64M 0% /dev/shm
/dev/sda1 20G 3.1G 16G 17% /etc/hosts
tmpfs 1.9G 0 1.9G 0% /proc/acpi
tmpfs 1.9G 0 1.9G 0% /sys/firmware
ディスク空間が、1K ブロックではなく GB と MB で表示されていることに注目してください。これにより、どれだけの空間が使用されていて、どれだけの空間が利用可能かをすぐに理解しやすくなります。
この出力をステップ 1 の出力と比較してみてください。情報は同じですが、-h オプションを使用すると表示がはるかに直感的になっていることがわかります。たとえば、「20509264」1K ブロックと表示される代わりに、「20G」(20 ギガバイト)と表示され、理解がはるかに容易です。
特定のファイルシステムまたはディレクトリを分析する
時には、特定のファイルシステムまたはディレクトリに関する情報のみが必要な場合があります。このステップでは、ファイルシステム内の特定の場所のディスク空間を確認する方法を学びます。
df コマンドにパスを指定することで、そのパスが存在するファイルシステムに関する情報を取得できます。これは、特定の場所にファイルをコピーまたはダウンロードする前に利用可能な空間を確認する場合に特に有用です。
ホームディレクトリのディスク空間を確認してみましょう。以下のコマンドを実行します。
df -h ~
チルダ (~) 記号は、Linux でホームディレクトリの省略形です。このコマンドは、ホームディレクトリを含むファイルシステムに関する情報を提供します。
Filesystem Size Used Avail Use% Mounted on
overlay 20G 3.1G 16G 17% /
これは、ホームディレクトリがルートファイルシステム(/ にマウントされている)にあることを示しています。
次に、別のディレクトリのディスク空間を確認してみましょう。たとえば、一時ファイルによく使用される /tmp ディレクトリを見てみましょう。
df -h /tmp
出力には、/tmp が存在するファイルシステムの詳細が表示されます。
Filesystem Size Used Avail Use% Mounted on
overlay 20G 3.1G 16G 17% /
この環境では、ホームディレクトリと /tmp は同じファイルシステム上にあります。多くの本番システムでは、パフォーマンスまたはセキュリティ上の理由から、これらが異なるファイルシステム上にある場合があります。
特定の場所を確認するこの機能は、以下のような場合に非常に有用です。
- 大きなファイルをダウンロードする前に十分な空間があるかを確認する
- ファイルシステムの特定の部分での空間の問題をトラブルシューティングする
- すぐに容量がいっぱいになりやすい重要なディレクトリを監視する
df コマンドで追加オプションを使用する
df コマンドには、追加情報を提供したり、出力の表示方法を変更したりするいくつかの便利なオプションが用意されています。このステップでは、これらのオプションの一部を探索し、ディスク空間の監視機能を強化します。
ファイルシステムのタイプを表示する
-T オプションを使用すると、ファイルシステムのタイプを示す列が追加されます。異なるファイルシステムのタイプにはそれぞれ異なる機能と制限があるため、作業中のファイルシステムのタイプを知る必要がある場合にこのオプションは役立ちます。
以下のコマンドを実行します。
df -hT
これは、人間が読みやすい形式 (-h) とファイルシステムのタイプ表示 (-T) を組み合わせたものです。以下のような出力が表示されるはずです。
Filesystem Type Size Used Avail Use% Mounted on
overlay overlay 20G 3.1G 16G 17% /
tmpfs tmpfs 386M 0 386M 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
shm tmpfs 64M 0 64M 0% /dev/shm
/dev/sda1 ext4 20G 3.1G 16G 17% /etc/hosts
tmpfs tmpfs 1.9G 0 1.9G 0% /proc/acpi
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/firmware
「overlay」「tmpfs」「ext4」などのファイルシステムのタイプを示す新しい「Type」列に注目してください。
イノード情報を表示する
ファイルシステムには、ファイルに関する情報を格納するデータ構造であるイノードの数に制限があります。ディスク空間が十分にあっても、小さなファイルが大量にあるとイノードが不足することがあります。
-i オプションを使用してイノードの使用状況を確認します。
df -i
イノードの使用率を示す出力が表示されます。
Filesystem Inodes IUsed IFree IUse% Mounted on
overlay 1310720 106794 1203926 9% /
tmpfs 98811 1 98810 1% /dev
tmpfs 98811 16 98795 1% /sys/fs/cgroup
shm 98811 1 98810 1% /dev/shm
/dev/sda1 1310720 106794 1203926 9% /etc/hosts
tmpfs 98811 1 98810 1% /proc/acpi
tmpfs 98811 1 98810 1% /sys/firmware
出力には以下の情報が表示されます。
Inodes: イノードの総数IUsed: 使用中のイノードの数IFree: 空きイノードの数IUse%: 使用中のイノードの割合
この情報は、ディスク空間はあるがイノードが不足しているために新しいファイルを作成できない状況をトラブルシューティングする際に特に有用です。
オプションの組み合わせ
これらのオプションを組み合わせることで、包括的な情報を得ることができます。たとえば、人間が読みやすい形式のディスク空間とイノードの使用状況を同時に表示するには、次のようにします。
df -hi
これにより、ファイルシステムの使用状況に関するより完全な情報が得られます。
Filesystem Inodes IUsed IFree IUse% Mounted on
overlay 1.3M 107K 1.2M 9% /
tmpfs 97K 1 97K 1% /dev
tmpfs 97K 16 97K 1% /sys/fs/cgroup
shm 97K 1 97K 1% /dev/shm
/dev/sda1 1.3M 107K 1.2M 9% /etc/hosts
tmpfs 97K 1 97K 1% /proc/acpi
tmpfs 97K 1 97K 1% /sys/firmware
まとめ
この実験では、df コマンドを使用して Linux 環境でディスク空間の使用状況を効果的に監視および分析する方法を学びました。以下に、この実験で達成したことをまとめます。
- 基本的な
dfコマンドを使用して、すべてのマウントされたファイルシステムのディスク空間情報を表示しました。 -hオプションを使用して、サイズを人間が読みやすい形式で表示することで、出力をより読みやすくする方法を学びました。- 特定のディレクトリに焦点を当て、特定のファイルシステムのディスク空間を分析しました。
-Tオプションでファイルシステムのタイプを表示し、-iオプションでイノードの使用状況を確認するなど、追加のオプションを探索しました。- より包括的なファイルシステム分析のためにオプションを組み合わせる方法を学びました。
これらのスキルは、システム管理およびメンテナンスタスクに不可欠です。定期的にディスク空間を監視することで、システムの問題を防ぎ、最適なパフォーマンスを維持することができます。Linux システムでの作業を続けるうちに、これらのコマンドは能動的なシステム管理のための日常的なツールキットの一部となります。
ディレクトリ内(ファイルシステム全体ではなく)の空間使用状況に関する詳細情報が必要な場合は、補完的なコマンド du(ディスク使用量)を使用できます。このコマンドは、ディレクトリとサブディレクトリ内でディスク空間がどのように使用されているかをより詳細に表示します。



