ブロックだけに興味がある場合 lsblk
を使用できるストレージ デバイス 広く利用可能な util-linux パッケージから:
$ lsblk -o KNAME,TYPE,SIZE,MODEL
KNAME TYPE SIZE MODEL
sda disk 149.1G TOSHIBA MK1637GS
sda1 part 23.3G
sda2 part 28G
sda3 part 93.6G
sda4 part 4.3G
sr0 rom 1024M CD/DVDW TS-L632M
他の多くの列が利用可能であり、スクリプト作成に適しています。
lshw
の出力をトロールできます disk
内のデバイスに関する詳細を抽出します または tape
クラス (およびその他のクラス - storage
クラスは、ストレージ コントローラ、scsi、sata、sas などの詳細を提供します)。
例
lshw -class disk -class tape
-short
オプションは、すてきなコンパクトな要約を提供します。例えば自宅の zfsonlinux server/workstation/experiment-box (残念ながらテープ デバイスはありません):
# lshw -class tape -class disk -class storage -short H/W path Device Class Description ========================================================= /0/100/4/0 storage JMB362 SATA Controller /0/100/5/0 scsi10 storage JMB362 SATA Controller /0/100/5/0/0.0.0 /dev/sdc disk 120GB Patriot Wildfire /0/100/b/0 scsi1 storage SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] /0/100/b/0/0.0.0 /dev/sdd disk 1TB WDC WD10EARS-00Y /0/100/b/0/0.1.0 /dev/sde disk 1TB WDC WD10EACS-00Z /0/100/b/0/0.2.0 /dev/sdf disk 1TB WDC WD10EACS-00Z /0/100/b/0/0.3.0 /dev/sdg disk 1TB ST31000528AS /0/100/b/0/0.4.0 /dev/sdh disk 1TB ST31000528AS /0/100/b/0/0.5.0 /dev/sdi disk 1TB ST31000528AS /0/100/b/0/0.6.0 /dev/sdj disk 1TB ST31000528AS /0/100/11 scsi2 storage SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] /0/100/11/0 /dev/sda disk 128GB Patriot Torqx 2 /0/100/11/1 /dev/sdb disk 1TB ST31000528AS /0/1 scsi11 storage /0/1/0.0.0 /dev/sdk disk 1967MB SCSI Disk /0/1/0.0.1 /dev/sdl disk SCSI Disk /0/1/0.0.2 /dev/sdm disk SCSI Disk /0/1/0.0.3 /dev/sdn disk SCSI Disk /0/2 scsi66 storage /0/2/0.0.0 /dev/sdo disk SCSI Disk /0/3 scsi67 storage /0/3/0.0.0 /dev/sdp disk 4057MB SCSI Disk
/0/1 デバイスは実際には USB カード リーダー (スロットの 1 つに 2 GB の SD カードが差し込まれています) であり、/0/2 デバイスは充電専用に差し込まれた私の Android フォンです。 0/3 デバイスは 4GB USB フラッシュ ドライブです。
lshw
プレーン テキスト、html、xml、および json 出力を生成できます。また、ハードウェアの詳細を sqlite データベース形式にダンプすることもできます。
これは、debian および他のほとんどのディストリビューション用にパッケージ化されています。ホームページとソースは http://ezix.org/project/wiki/HardwareLiSter にあります
lsblk
を使用できます 各デバイスが読み取り専用かどうかとともに、すべてのブロック デバイスを一覧表示します。
その後、 grep
を使用できます および awk
読み取り専用ではないブロック デバイスの名前を表示するには:
lsblk -d -n -oNAME,RO | grep '0$' | awk {'print $1'}