Ubuntu中识别硬件设备(含分区)的常用方法
在Ubuntu系统中,识别硬件设备(尤其是存储设备及其分区)主要通过命令行工具实现,以下是具体步骤和工具说明:
使用lsblk命令可以快速查看系统中所有块设备(磁盘、分区、挂载点)的层次关系,输出包含设备名称、大小、类型(磁盘/分区)、挂载点等信息,是最直观的工具之一。
命令示例:
lsblk 输出解读:
NAME:设备名称(如sda表示第一块SCSI/SATA磁盘,sda1表示其第一个分区);TYPE:设备类型(disk表示磁盘,part表示分区);MOUNTPOINT:设备挂载点(如/boot/efi、/表示挂载到系统目录)。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 1G 0 part /boot └─sda3 8:3 0 464.3G 0 part / sdb 8:16 0 931.5G 0 disk └─sdb1 8:17 0 931.5G 0 part /data 该输出显示系统有两块磁盘(sda和sdb),sda有3个分区(sda1、sda2、sda3),sdb有1个分区(sdb1)。
使用sudo fdisk -l命令可以获取磁盘的详细分区信息,包括磁盘型号、容量、分区表类型(GPT/MBR)、每个分区的起始/结束扇区、大小、文件系统类型等。
命令示例:
sudo fdisk -l 输出解读:
Disk /dev/sda:磁盘基本信息(如容量、型号);Device:分区名称(如/dev/sda1);Start/End:分区起始/结束扇区;Size:分区大小;Type:分区类型(如EFI System、Linux filesystem)。Disk /dev/sda: 465.76 GiB, 500107862016 bytes, 976773168 sectors ... Device Start End Sectors Size Type /dev/sda1 2048 1050623 1048576 512M EFI System /dev/sda2 1050624 3194879 2144256 1G Linux filesystem /dev/sda3 3194880 976773134 973578255 464.3G Linux filesystem 该命令需要管理员权限(sudo),是识别分区详情的常用工具。
使用blkid命令可以获取分区的UUID(通用唯一标识符)和文件系统类型(如ext4、NTFS、FAT32),这些信息常用于配置开机自动挂载(/etc/fstab文件)。
命令示例:
sudo blkid 输出解读:
UUID:分区的唯一标识符(如1234-5678);TYPE:文件系统类型(如ext4、vfat)。/dev/sda1: UUID="1234-5678" TYPE="vfat" PARTLABEL="EFI System Partition" /dev/sda2: UUID="abcd1234-5678-90ef" TYPE="ext4" PARTLABEL="Boot Partition" /dev/sda3: UUID="wxyz5678-1234-90ef" TYPE="ext4" PARTLABEL="Root Partition" UUID是挂载设备时的重要标识,避免因设备名称变化(如/dev/sda变为/dev/sdb)导致挂载失败。
使用lshw命令可以获取存储设备(磁盘、分区)的详细硬件信息,包括制造商、型号、序列号、接口类型(SATA/SCSI/NVMe)等。
命令示例:
sudo lshw -class disk 输出解读:
vendor:设备制造商(如Samsung、Seagate);product:设备型号(如Samsung SSD 860 EVO 500GB);serial:设备序列号;bus info:接口类型(如sata、nvme)。*-disk description: ATA Disk product: Samsung SSD 860 EVO 500GB vendor: Samsung physical id: 0 bus info: scsi@0:0.0.0 logical name: /dev/sda size: 465GiB (500GB) serial: S3Z9NB0K123456 capabilities: gpt-1.00 partitioned partitioned:gpt configuration: ansiversion=5 guid=7b6c7c9d-5d5c-4c4b-8b8a-7b8a7b8a7b8a logicalsectorsize=512 sectorsize=4096 该命令需要管理员权限,适合需要详细硬件信息的场景。
使用smartctl命令(属于smartmontools包)可以查看磁盘的SMART(自我监测、分析及报告技术)信息,包括温度、通电时间、坏道数量等,用于评估磁盘健康状态。
安装命令:
sudo apt install smartmontools 使用示例:
sudo smartctl -a /dev/sda 输出解读:
SMART overall-health self-assessment test result:健康状态(PASSED表示正常);Temperature_Celsius:磁盘温度;Power_On_Hours:通电时间(小时)。SMART overall-health self-assessment test result: PASSED Temperature_Celsius 45 Power_On_Hours 1234 Reallocated_Sector_Ct 0 该工具适合监控磁盘健康,提前发现潜在故障。
当插入USB设备(如U盘、移动硬盘)时,可以使用lsblk或sudo fdisk -l命令查看新增的设备节点(如/dev/sdb、/dev/sdc),从而识别新设备。
操作步骤:
lsblk或sudo fdisk -l;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 1G 0 part /boot └─sda3 8:3 0 464.3G 0 part / sdb 8:16 1 14.9G 0 disk └─sdb1 8:17 1 14.9G 0 part 新增的/dev/sdb即为U盘,sdb1为其分区。
以上方法覆盖了Ubuntu中识别硬件设备(含分区)的常见需求,其中lsblk和sudo fdisk -l是最基础、最常用的工具,适合大多数场景。