web-dev-qa-db-ja.com

lsblkなしの統計ディスクドライブ?

最近使用しようとしたミニマリストのbusyboxシステムがあり、lsblkコマンドがないという小さな問題が見つかりました。 lsblkのようなディスク、パーティション、サイズを一覧表示する別のコマンドはありますか?

一部も機能しない:

  • lsblk
  • lsusb
  • fdisk -l
  • cfdisk
10
TheDoctor

busybox のwikiページを見ると、ディスクの使用状況を検索するdfコマンドがサポートされていることがわかります。

以下のコマンドを試すことができます。

df -h-マウントされたファイルシステムの空き領域を表示します。

Busyboxの man ページから、dfコマンドの使用例が提供されています。

ただし、@ nwildnerが指摘したように、dfは、パーティションに関連するスキームではなく、マウントされたファイルシステム上のストレージを表示します。それを見つけるために、あなたは以下のファイルをチェックすることができます。

cat /proc/partitions

fdisk -lが機能していないとおっしゃっていましたが、上記のファイルにはパーティション情報が含まれている可能性があります。

テスト

fdisk -lは、私のシステムで以下の出力を生成しました。

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        9726    78019672+  8e  Linux LVM

これで、cat /proc/partitionsを使用すると、パーティション情報を取得できます。出力は、

major minor  #blocks  name

   8     0   78125000 sda
   8     1     104391 sda1
   8     2   78019672 sda2
 253     0   78019156 dm-0
 253     1   72581120 dm-1
 253     2    5406720 dm-2

メジャー番号は8で、ディスクデバイスであることを示します。マイナーなものは、同じデバイス上のパーティションです。 0はディスク全体、1はプライマリ、2は拡張、5は論理パーティションです。残りはもちろんブロックサイズとディスク/パーティションの名前です。

インテリジェントな提案かどうかはわかりませんが、Sudo fdisk -lを試して、効果があるかどうかを確認しましたか?

EDIT#1

$ df -Tを実行することもできます。これは、実行にスーパーユーザー権限を必要としない別のコマンドです。ただし、これはすべてのマウントポイントについて報告します。

便利なもう1つのコマンドは# file -sL /dev/sdXYです。これには、フルブロックデバイスでは機能しないという欠点があります。正確なデバイスを渡す必要があります。ただし、出力はかなりきれいです。

参照

アンマウントされたデバイスのファイルシステムを特定する方法?

10
Ramesh

他の回答者が実際にBusyBoxでテストしていないようです。これが、私のinitramfsのBusyBoxで機能した唯一のコマンドです。

  • cat /proc/partitionsは、ディスクとパーティションのサイズをブロック単位で示します(KiB)

  • blkidは、パーティションラベル、UUID、およびタイプ(EXT4、NTFSなど)を示します

4
Navin

ビジーボックスコマンドは通常、より大きなディストリビューションに含まれるフルバージョンよりも少し制限されており、以前の回答では、同じ問題が発生したときに判明したように、これに完全には対処していません。

tune2fsを使用してextファイルシステムに必要な情報(およびその他の情報)を見つけました。これは、現在使用している組み込みLinuxで利用できます。他のタイプのマウント解除されたファイルシステムでこれを行う方法はわかりません。

tune2fs -l /dev/sdbXY | grep 'Block' | tr -s ' ' | cut -f3 -d' '
488378112
4096
group:

tr -sは繰り返しスペースを取り除き、cut -f3 -d ' 'は3番目の出力フィールドを提供するため、これによりこの出力が得られます。連続するパイプを削除するだけで、何が起こっているのかについて少し知ることができます。

最初の数値はブロックの量で、2番目の数値はブロックサイズです。それらを掛け合わせて、バイト単位で回答を取得します。 Word group:はフィルタリングの異常であり、無視してかまいません。

0
Amias