如何查询linux的硬盘

使用 lsblksudo fdisk -l 查看物理硬盘;df -h 查看挂载点及使用情况,blkid

Linux系统中查询硬盘信息是日常运维和故障排查的核心技能之一,以下从基础命令解析、进阶操作指南、可视化工具推荐、磁盘健康监测四个维度展开详细说明,并附完整操作示例与对比表格。

如何查询linux的硬盘


核心命令详解

df命令家族

参数 作用 典型输出示例
df -h 人类可读格式显示磁盘使用率 /dev/nvme0n1p3: 50G 25G 25G 50% /
df -T 显示文件系统类型 ext4, xfs, btrfs等
df -i 显示inode使用情况 预防因inode耗尽导致的写入失败
df --output=avail 仅显示可用空间 快速定位剩余空间不足的设备

执行逻辑df通过读取/proc/mounts文件获取已挂载的文件系统信息,结合/etc/mtab补充动态挂载点,注意该命令无法检测未挂载的磁盘分区。

lsblk命令体系

参数 功能特点 优势场景
lsblk 树状结构展示物理设备层级关系 快速识别RAID阵列组成
lsblk -f 同步显示文件系统类型及挂载点 建立设备名与挂载点的映射关系
lsblk --paths 显示设备路径拓扑结构 诊断SCSI控制器故障
lsblk -d 仅显示块设备(排除环回设备) 过滤掉虚拟磁盘干扰

典型输出解读

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
nvme0n1     259:0    0 476.9G  0 disk 
├─nvme0n1p1 259:1    0   1G  0 part [SWAP]
├─nvme0n1p2 259:2    0  58G   0 part /
└─nvme0n1p3 259:3    0 417G   0 part /home

通过缩进符号清晰展示NVMe固态硬盘的分区结构,其中MAJ:MIN表示主次设备号,这是唯一标识设备的编号。

fdisk深度应用

子命令 功能描述 风险提示
fdisk -l 列出所有磁盘分区表 不会修改任何数据
fdisk /dev/sda 进入交互式分区管理 ⚠️误操作会导致数据丢失
p 打印当前分区表 用于验证修改后的分区结构
n 创建新分区 需谨慎选择起始扇区和大小
d 删除分区 删除前务必确认分区重要性
t 修改分区类型ID 配合魔改引导程序时使用

安全警示fdisk直接操作磁盘底层结构,建议操作前使用sfdisk --dump /dev/sda > partition_backup.txt进行备份。

blkid专业查询

该命令专门用于获取分区的唯一标识符:

sudo blkid /dev/nvme0n1p3
# 输出示例:
UUID="abcdef12-3456-7890-abcd-ef1234567890"
PARTLABEL="datastore"
FSTYPE="ext4"

关键字段说明:

如何查询linux的硬盘

  • UUIDLinux内核识别分区的核心依据
  • PARTLABEL:用户自定义的分区标签
  • FSTYPE:文件系统类型
  • PTTYPE:分区表类型(gpt/msdos)

进阶操作指南

跨平台设备识别

当遇到特殊设备时,可通过以下组合定位:

# 查找特定厂商设备
lsblk -o name,vendor,model | grep -i "intel"
# 显示PCI地址对应的设备
lspci -nn | grep -i storage

多路径设备管理

对于具备冗余路径的存储设备:

multipath -ll # 列出所有多路径设备
multipath -v3 /dev/mapper/mpatha # 查看详细配置

SMART健康检测

安装smartmontools后执行:

smartctl -a /dev/sda # 完整健康报告
smartctl -H /dev/sda # 简化版健康状态

重点关注Reallocated Sectors Count等临界指标。


可视化工具推荐

工具名称 特点 适用场景
GParted 图形化分区编辑器 Windows/Linux双平台
KDE Partition Manager Qt框架实现 KDE桌面环境集成
gnome-disks GNOME桌面默认工具 新手友好的分区管理
Webmin 基于Web的管理面板 远程服务器管理

常见问题解决方案

Q1: 为什么dflsblk显示的总容量不同?

原因分析df统计的是已挂载的文件系统,而lsblk显示物理设备的总容量,差异主要来自:

  1. 未分配的空闲空间(如新建硬盘尚未分区)
  2. 未挂载的分区(如备用分区)
  3. LVM逻辑卷占用的空间不计入物理设备统计

解决步骤

如何查询linux的硬盘

  1. 使用lsblk -f查看完整设备树
  2. 检查/etc/fstab确认是否遗漏挂载点
  3. 使用parted /dev/sda print查看详细分区表

Q2: 如何安全扩展现有分区?

标准流程

  1. 卸载目标分区:umount /dev/sda3
  2. 删除原有分区:fdisk /dev/sda → d → 3
  3. 重新创建分区:n → p → 3 → +size(指定新大小)
  4. 文件系统扩容:resize2fs /dev/sda3(ext系列)或xfs_growfs /dev/sda3(XFS)

重要提醒:操作前必须备份数据!对于LVM卷可直接使用lvextend命令在线扩展。


综合查询方案

需求场景 推荐命令组合 输出效果
快速查看挂载点 df -hT 带类型的人类可读格式
分析磁盘性能瓶颈 iostat -dx 1 5 + vmstat 1 CPU/IO等待时间统计
诊断启动盘异常 fdisk -l + blkid + cat /etc/fstab 三重验证启动配置
规划新服务器存储布局 lsblk -d + smartctl -a /dev/sda 物理设备清单+健康状态

企业级实践建议

  1. 监控策略:将dfsmartctl纳入Zabbix/Prometheus监控模板,设置阈值告警
  2. 日志审计:定期检查/var/log/syslog中与磁盘相关的错误记录
  3. 快照机制:对关键业务分区实施LVM快照,防止误操作导致数据丢失
  4. RAID配置:生产环境建议采用硬件RAID卡+软件RAID双重保护

相关问答FAQs

Q1: 为什么新添加的硬盘没有出现在df列表中?
A: 因为新硬盘需要完成三个步骤才能使用:①分区(使用fdiskparted);②创建文件系统(mkfs.ext4);③手动挂载或添加到/etc/fstab,执行顺序应为:fdisk /dev/sdb → mkfs.ext4 /dev/sdb1 → mount /dev/sdb1 /mnt/newdisk

Q2: 如何永久保留分区更改?
A: 仅运行fdisk修改分区表是不够的,必须更新引导加载程序,对于GRUB引导器,执行以下步骤:①grub-install /dev/sda;②生成新配置文件update-grub;③重启系统验证,特别注意UEFI系统还需要处理

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/100632.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年8月10日 17:01
下一篇 2025年8月10日 17:08

相关推荐

  • Linux怎么创建软链接命令?

    使用ln -s命令创建软连接:ln -s 源文件路径 目标链接路径,软连接类似快捷方式,指向原文件或目录,删除链接不影响源文件。

    2025年6月21日
    100
  • 如何快速查看Linux版本命令

    查看Linux系统版本常用命令: ,1. 执行 lsb_release -a 获取发行版信息; ,2. 查看 /etc/os-release 文件内容; ,3. 使用 hostnamectl 或 uname -r 查看内核版本。 ,不同发行版可能需结合特定文件(如CentOS的/etc/redhat-release)。

    2025年6月11日
    100
  • linux pid文件如何生成文件

    Linux中,可通过shell脚本用echo $$ ˃ filename.pid命令将当前进程的PID写入文件,或在程序启动时自动创建该文件以记录自身PID

    2025年7月26日
    100
  • 如何远程连接linux服务器端口

    远程连接Linux服务器端口,常用SSH协议,命令行输入ssh -p 端口号 用户名@IP地址;图形工具如PuTTY也可配置端口后连接

    2025年8月4日
    100
  • Linux如何打开脚本文件

    在Linux中查看脚本文件常用命令: ,1. cat 文件名 – 直接显示全部内容 ,2. less 文件名 – 分页浏览(支持上下翻页) ,3. more 文件名 – 逐页显示 ,4. vim/nano 文件名 – 用文本编辑器查看(同时可编辑) ,5. 先ls -l确认文件权限,再用上述命令查看。

    2025年7月5日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN