插件窝 干货文章 linux 怎么查有几块硬盘

linux 怎么查有几块硬盘

硬盘 dev disk 方法 537    来源:    2025-05-01

在 Linux 系统中,可以通过以下几种方法查看硬盘信息:


方法 1:使用 lsblk 命令(推荐)

lsblk

输出示例:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0   512M  0 part /boot/efi
├─sda2   8:2    0 464.3G  0 part /
sdb      8:16   0   1.8T  0 disk 
└─sdb1   8:17   0   1.8T  0 part /data

说明: - 不带 MOUNTPOINTTYPE=disk 条目即为物理硬盘(如 sdasdb)。 - RM=1 表示可移动设备(如U盘),RM=0 通常是固定硬盘。


方法 2:使用 fdisk 命令

sudo fdisk -l

输出示例:

Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Disk /dev/sdb: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors

说明: - 输出中每个 Disk /dev/sdX 代表一块物理硬盘(忽略分区信息如 /dev/sda1)。


方法 3:查看 /dev/ 下的设备

ls /dev/sd* | grep -E 'sd[a-z]$'

输出示例:

/dev/sda
/dev/sdb

说明: - /dev/sd* 是硬盘设备文件,末尾不带数字的(如 sda)是物理硬盘。


方法 4:使用 lshw 命令(需 root 权限)

sudo lshw -class disk

输出示例:

  *-disk:0
       description: ATA Disk
       product: ST500DM002-1BD142
       physical id: 0
       logical name: /dev/sda
  *-disk:1
       description: ATA Disk
       product: WDC WD20EZRX-00D
       logical name: /dev/sdb

方法 5:查看 /proc/partitions

cat /proc/partitions | awk '{print $4}' | grep -E '^sd[a-z]$'

输出示例:

sda
sdb

总结

方法 命令/文件 特点
推荐 lsblk 直观显示硬盘和分区树
详细参数 sudo fdisk -l 显示硬盘大小和分区表
设备文件 ls /dev/sd* 快速列出设备文件
硬件详情 sudo lshw -class disk 显示厂商和型号等详细信息

注意事项

  1. NVMe 硬盘:名称可能是 /dev/nvme0n1(使用 lsblkls /dev/nvme* 查看)。
  2. 虚拟化环境:可能显示为 /dev/vda(KVM)或 /dev/xvda(Xen)。
  3. 需要 root 权限的命令:如 fdisk -llshw 需加 sudo

通过以上方法,你可以快速确认 Linux 系统中的物理硬盘数量和详细信息。