sys
システムファイルを使用または待機するアンマウントされたパーティションの空き領域を見つけることはできますかproc
?
スペース全体を見つける方法はわかっていますが、使用可能なスペースは不明です。システムファイルのみを使用することをお勧めします。マウント解除されたパーティションのスペース全体に/proc/partitions
ファイルを使用します。
答え1
普遍的な方法はありませんが、ほとんどの場合に機能する1つの方法があります。
普遍的な方法がない理由はカーネルもそれについて知らない。これを知るには、まずパーティションを分析する必要があります。
パーティションをマウントしないと、カーネルはパーティションが存在することだけを知り、それ以上はわかりません。デフォルトでは、これは任意のデータブロックを含む行です。カーネルはそれがどこにあり、どのようにアクセスするかを知っていますが、それをどうするかわかりません。
ただし、ファイルシステムをインストールせずにファイルシステムの内容を分析できるユーザースペースツールもあります。すべてのファイルシステムはデータ構造が非常に異なるため、それらを処理するにはさまざまなツールが必要です。
ext2/3/4の場合、状況は次のとおりです。
# dumpe2fs /dev/sdxN|grep '^Free blocks'
dumpe2fs 1.42.13 (17-May-2015)
Free blocks: 5721580
または(はるかに高速)tune2fs
ツール:
# tune2fs -l /dev/sdxN|grep '^Free blocks:'
Free blocks: 14227371
答え2
procfsはプロセス関連情報にのみ使用してください。 (厳密に従わないが、もはや使用されない可能性があるので、安全のために頼らないでください。)
したがって、sysfsは私たちにシステム情報を提供します。これは、ディスク全体のサイズ(バイトではなくセクタ単位)に関する情報を提供します。
cat /sys/block/sda/size
sda をパーティション名に変更します。
ls /sys/block/sda/
sda1、sda2...という名前の使用可能なチェックディレクトリを含むパーティションに関する情報を提供します。
sdaと同じ機能を使用して、これらのパーティションのサイズ[セクタ]を確認できます。
cat /sys/block/sda/sda1/size
以下を使用して出力を確認することもできます。
sudo fdisk -l /dev/sda1
実際の例は次のとおりです。 上記のウォッチパーティションと同じ名前のメモです。あなたの要件に応じてsdaをsdb、sdcなどに変更してください。
ドライブまたはパーティションのサイズをバイト単位で取得するには、次のようにします。ブロック開発者。
答え3
これはファイルシステムの種類によって異なりますが、残りのfsck
空き容量がどのくらいになるかを確認できます。空き領域を見つけるには、ファイルシステムの構造を理解するためのツールが必要です。