BusyBoxを使用してファイルシステム形式を確認する(stat -fとdf -Tは機能しません)

BusyBoxを使用してファイルシステム形式を確認する(stat -fとdf -Tは機能しません)

私のターゲットで最新のBusyBox v1.22.1を使用しています。stat -fファイルシステムタイプを使用または確認したいが、df -Tbusyboxはこれらのコマンドをサポートしません。busybox helpshowstatコマンドはサポートされていますが、実行すると次のように表示されます。

stat: not found.

BusyBoxを使用してファイルシステムの種類を確認するには?

答え1

BusyBoxの多くのコンポーネントはオプションです。ユーティリティとオプションは、サイズと機能間のコンパイル時のバランスによっては、使用可能または使用できない場合があります。

Linuxでは、ファイルシステム情報を取得できます/proc。実行してdf -P /some/fileマウントポイントを見つけ、/some/fileそこにある/proc/mountsファイルシステムの種類を検索して抽出します。 awkがあり、マウントポイントにスペースがないと仮定すると、次のコマンドは/some/file現在のファイルシステムタイプを印刷します。

</proc/mounts awk -v mount_point="$(df -P /some/file | awk 'NR==2 {print $6}')" '$2 == mount_point {print $3}'

答え2

ビルドする前に、以下を有効にする必要がありますstatdu.config

CONFIG_DU=y
CONFIG_STAT=y

答え3

また、busybox コマンドには、busybox へのシンボリックリンクが常に含まれていないか、PATH にない場合があります。 RHEL6では、"busybox stat -f /dev/XXXX"が動作します。

答え4

busybox help表示されると、statアプレットが実装されたことを意味します。 「見つかりません」を返すと、そのstatリンクが作成されていない可能性がありますbusybox(ビジボックスは、アプレットが呼び出されたときにファイルを実行するように構成されています)。

したがって、 を実行できるので、次の代替手段としてbusybox help実行することもできます。busybox statstat

busybox stat -fc %T /

関連情報