当前位置: 首页 > news >正文

Linux命令之lsblk:从基础查询到高级系统信息整合

1. 初识lsblk:你的Linux存储设备导航仪

第一次在终端里输入lsblk时,我盯着那棵漂亮的设备树看了好久——原来我的硬盘里藏着这样的秘密花园!这个命令就像存储设备的X光机,能透视你电脑里所有硬盘、分区和挂载点的骨骼结构。

什么是块设备?简单说就是按"块"读写数据的硬件,比如你的固态硬盘(/dev/nvme0n1)、机械硬盘(/dev/sda),甚至是U盘(/dev/sdb)。它们不像普通文件那样可以随意编辑,必须整块整块地操作。

最让我惊喜的是它的树状展示能力。比如插上U盘后直接运行:

lsblk

你会看到类似这样的结构:

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme0n1 259:0 0 512G 0 disk ├─nvme0n1p1 259:1 0 512M 0 part /boot/efi ├─nvme0n1p2 259:2 0 16G 0 part [SWAP] └─nvme0n1p3 259:3 0 495.5G 0 part / sda 8:0 1 14.9G 0 disk └─sda1 8:1 1 14.9G 0 part /media/usb

这里清晰展示了我的NVMe固态硬盘(带EFI分区、交换分区和根分区)以及刚插入的14.9GB U盘。那个可爱的树形符号(├─和└─)完美呈现了设备间的父子关系。

小技巧:如果显示乱码,可以加-i参数强制使用ASCII字符:lsblk -i

2. 玩转参数:解锁lsblk的隐藏技能

刚开始我只用基础命令,直到有次服务器磁盘告急时,前辈教我用了-f参数——瞬间打开了新世界的大门。这个看似简单的工具,其实藏着不少实用技巧:

2.1 查看文件系统信息(-f)

lsblk -f

输出会多出这些列:

FSTYPE LABEL UUID MOUNTPOINT ext4 c7b3d8a1-3a2f-4d5b-b6c7-d8e9f0a1b2c3 / swap 82b1c1c9-3e3f-4d5e-a6b7-c7d8e9f0a1b2 [SWAP] vfat ESP 67E3-17ED /boot/efi

现在你一眼就能看出:根分区是ext4格式,交换分区没标签但有个UUID,EFI分区是FAT32格式。当需要修改/etc/fstab时,这些UUID可比设备名可靠多了。

2.2 显示权限信息(-m)

lsblk -m

输出示例:

NAME SIZE OWNER GROUP MODE sda 500G root disk brw-rw---- ├─sda1 100G root disk brw-rw---- └─sda2 400G root disk brw-rw----

这里揭示了谁有权操作这些设备。曾经有次遇到权限问题,就是靠这个发现某个分区的GROUP被误改成了staff而不是disk

2.3 JSON格式输出(-J)

lsblk -J

会得到这样的结构化数据:

{ "blockdevices": [ { "name": "sda", "type": "disk", "children": [ { "name": "sda1", "type": "part", "mountpoint": "/" } ] } ] }

这个功能太适合写脚本时解析了!我常用它搭配jq命令处理数据,比如:

lsblk -J | jq '.blockdevices[].name'

3. 实战组合拳:系统管理的黄金搭档

单独用lsblk已经很强,但和其他命令组合才是真正的杀手锏。分享几个我常用的组合技:

3.1 快速定位未挂载分区

lsblk -f | grep -v "MOUNTPOINT" | grep -v "FSTYPE"

这个管道组合能过滤出所有未挂载的分区。上周就用它发现了一个被遗忘的200GB分区,直接解决了存储危机。

3.2 监控设备变化

watch -n 1 lsblk -f

动态刷新显示设备状态,特别适合调试USB设备热插拔或iSCSI连接。有次排查外接硬盘异常断开,就是靠这个发现的规律性掉线。

3.3 与blkid强强联合

lsblk -o NAME,UUID | grep -v "NAME" | while read dev uuid; do [ -n "$uuid" ] && blkid -U "$uuid" done

这个脚本通过UUID关联两个命令的输出,能验证设备标签是否一致。曾经帮我发现过因UUID冲突导致的启动故障。

4. 高级应用:从运维到自动化

当你不满足于简单查询时,这些进阶玩法会让lsblk变身系统管理瑞士军刀:

4.1 存储容量分析

lsblk -b -o NAME,SIZE,MOUNTPOINT | awk ' NR>1 { size[$3]+=$2 } END { for(m in size) printf "%-20s %15.2f GB\n", m, size[m]/1024/1024/1024 }'

这个awk脚本可以统计每个挂载点的总容量。输出类似:

/ 487.52 GB /boot/efi 0.49 GB [SWAP] 15.99 GB

4.2 自动化挂载脚本

#!/bin/bash UNMOUNTED=$(lsblk -rno NAME,MOUNTPOINT | awk '$2=="" {print $1}') for DEV in $UNMOUNTED; do UUID=$(lsblk -dno UUID "/dev/$DEV" 2>/dev/null) [ -n "$UUID" ] && mkdir -p "/mnt/$DEV" && mount -U "$UUID" "/mnt/$DEV" done

这个安全脚本会自动挂载所有未挂载的有效分区到/mnt下,特别适合批量处理新硬盘。

4.3 设备拓扑分析

lsblk -t

输出示例:

NAME ALIGNMENT MIN-IO OPT-IO PHY-SEC LOG-SEC ROTA SCHED RQ-SIZE RA WSAME sda 0 512 0 512 512 1 mq-deadline 256 128 0B

这些拓扑信息对数据库调优特别有用。比如ROTA=1表示旋转式磁盘(机械硬盘),ROTA=0则是SSD。我曾经据此调整了MySQL的I/O调度策略。

重要提示:操作存储设备前务必备份数据!误操作可能导致数据丢失。特别是脚本自动化处理时,建议先用-n参数做干运行测试。

http://www.jsqmd.com/news/1186831/

相关文章:

  • 急用又想免费降 AI 率怎么办?免费试用几分钟看效果
  • 如何用开源AI助手Open-Notebook彻底改变你的知识管理方式
  • 小程序毕设项目:基于 SpringBoot+Android 的勤工助学绩效考核系统的设计与实现 (源码+文档,讲解、调试运行,定制等)
  • IntelliJ IDE 插件开发 | (八)PSI 进阶:构建自定义代码分析与重构工具
  • Gemma-4-31B-JANG_4M-CRACK-GGUF技术深度解析:CRACK技术与量化优化实战指南
  • C++ IIR滤波器库:从双二阶结构到实时音频处理的工程实践
  • 如何快速部署ComfyUI:Docker容器化AI绘图环境完整指南
  • 机器学习期末实战:从梯度下降到神经网络的核心代码与理论解析
  • 2026年六盘水避暑酒店怎么选不踩雷?5家实测对比与智能高档住宿推荐 - 中国品牌企业观察网
  • TC78H651AFNG与PIC18F4680的直流电机驱动方案
  • YOLOv8热成像人员检测:从原理到工业部署的完整实践指南
  • 小程序毕设项目:基于 SpringBoot+Android 的智能读书记录 APP 的设计与实现 基于 SpringBoot+Android 的海量图书阅读 (源码+文档,讲解、调试运行,定制等)
  • 【ChatGPT文档质量生死线】:为什么你的AI生成文档被架构师当场否决?——基于AST解析与SQuADv2评估的7项硬性指标验证
  • uos-iptables-exporter高级配置指南:优化性能、安全与可靠性的7个关键技巧
  • 2026 年 Scrapy + Playwright 如何搭建高成功率爬虫?
  • NC6外部交换平台单据接口插件开发实战:从VO映射到配置导出的全流程解析
  • AMD Ryzen SMU调试工具:免费开源硬件调优神器
  • 深度解析privacyIDEA策略引擎:如何构建企业级多因素认证的细粒度访问控制
  • 医学研究中的方差分析选择指南:从单因素到重复测量的SPSS实战解析
  • 江诗丹顿中国区官方售后服务中心|维修地址及官方电话全新通告(2026年7月最新) - 江诗丹顿中国服务中心
  • 飞算JavaAI快速落地企业CRM项目,解锁Java高效开发新方式
  • 湖北新东方烹饪学校 2026 招生简章 金典总厨 / 时尚西点 / 西餐料理全专业招生报名指南 - 武汉中职最新信息发布
  • 抖音无水印批量下载终极指南:3分钟掌握免费高清视频保存技巧
  • 从执行计划到索引策略:实战慢SQL性能调优全解析
  • Flink 源码剖析|累加器在窗口聚合与状态管理中的核心机制
  • WarcraftHelper:让经典魔兽争霸3在现代电脑上重获新生的终极方案
  • DeFi基石之——MakerDAO稳定机制全解析
  • 论文实验的可复现工程:用Jupyter Notebook与Docker构建标准化的AI研究环境
  • 从分贝到感知:解码声音世界的度量衡
  • KLayout集成电路设计工具:5个专业技巧掌握版图自动化验证