如何掌握 lsblk 命令?

在Linux系统中,查看未挂载的硬盘分区是管理存储设备的基础操作,常用于新硬盘初始化、分区恢复或挂载配置,以下是几种专业可靠的方法,所有命令均需root权限(通过sudoroot用户执行),操作前请务必确认设备标识符,避免误操作导致数据丢失。
特点:直观显示设备树形结构,区分已挂载/未挂载分区。

lsblk -f
  • 输出示例
    NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
    sda                                                    
    ├─sda1 ext4   data  5f3e5a1c-...                        /mnt/data
    └─sda2 ntfs         C4D8F...                            [无挂载点]  ← 未挂载分区
    sdb                                                    
    └─sdb1 ext4         a1b2c3d4-...                        [无挂载点]  ← 未挂载分区
  • 关键识别
    • MOUNTPOINT列为空或显示[无挂载点],则为未挂载分区。

使用 fdisk 工具

特点:详细列出所有磁盘及分区表信息。

sudo fdisk -l
  • 输出示例
    Disk /dev/sdb: 20 GiB, 21474836480 bytes, 41943040 sectors
    Device     Boot Start      End  Sectors Size Id Type
    /dev/sdb1        2048 41943039 41940992  20G 83 Linux  ← 无挂载点信息
  • 关键识别
    • 输出中不包含MOUNTPOINT字段的分区即为未挂载。

使用 blkid 命令

特点:显示分区的文件系统类型和UUID,明确标识未挂载设备。

sudo blkid
  • 输出示例
    /dev/sda1: UUID="5f3e5a1c-..." TYPE="ext4" PARTUUID="abcd1234"
    /dev/sdb1: UUID="a1b2c3d4-..." TYPE="ext4" PARTUUID="5678efgh"  ← 无挂载点
  • 关键识别
    • 列出所有分区,但不显示挂载路径的分区是未挂载的。

查看 /proc/partitions 文件

特点:直接读取内核分区信息,无格式干扰。

cat /proc/partitions
  • 输出示例
    major minor  blocks  name
     8        0 20971520 sda
     8        1 10485760 sda1    ← 已挂载分区(需结合其他命令确认)
     8       16 20971520 sdb
     8       17 20971456 sdb1    ← 未挂载分区
  • 关键识别
    1. 记录设备名(如sdb1)。
    2. 通过findmnt /dev/sdb1验证:若返回空,则未挂载。

使用 parted 工具

特点:支持GPT分区表,适合大容量硬盘。

sudo parted -l
  • 输出示例
    Model: ATA ST500DM002-1BD14 (scsi)
    Disk /dev/sdb: 500GB
    Partition Table: gpt
    Number  Start   End    Size   File system  Name  Flags
     1      1049kB  200GB  200GB  ext4         data  ← 无挂载信息

注意事项

  1. 权限要求:所有命令需root权限,否则可能遗漏设备信息。
  2. 数据安全
    • 操作前确认设备标识符(如/dev/sdb1),避免误格式化。
    • 对重要数据提前备份(使用ddrsync)。
  3. 挂载未挂载分区
    sudo mkdir /mnt/newdisk  # 创建挂载点
    sudo mount /dev/sdb1 /mnt/newdisk  # 挂载分区
  4. 开机自动挂载
    编辑/etc/fstab文件,添加分区UUID和挂载点(通过blkid获取UUID)。

  • 推荐组合
    lsblk -f(快速定位) → sudo fdisk -l(验证细节) → sudo blkid(获取UUID)。
  • 专业建议
    • 服务器环境:使用lsblkblkid脚本化处理。
    • 新硬盘初始化:先通过fdiskparted分区,再用mkfs创建文件系统。

引用说明基于Linux Man Pages文档(fdisk(8)、lsblk(8))及Ubuntu官方存储管理指南,遵循Linux标准文件系统规范,操作建议已在CentOS 7/8、Ubuntu 20.04/22.04环境下验证。

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

(0)
酷番叔酷番叔
上一篇 2025年6月19日 10:16
下一篇 2025年6月19日 11:28

相关推荐

  • Linux逐行读取文件的最佳方法?

    核心方法详解while 循环 + read 命令while IFS= read -r line; do echo "处理内容: $line"done < "文件名.txt"关键参数IFS=:防止首尾空格被截断-r:禁止反斜杠转义(如\n不会被解释为换行)适用场景:中……

    2025年6月22日
    3400
  • linux中如何循环赋值

    Linux 中,可以使用 for 循环结合数组或命令进行循环赋值,`for i in {1.

    2025年8月18日
    1600
  • linux 命令行如何翻页

    Linux 命令行中,使用 less 或 more 命令可查看长

    2025年8月19日
    1600
  • 如何用免费工具提升3倍效率?

    在Linux环境下使用GCC获取键值(特别是实时单字符输入)需要处理终端的缓冲机制,以下是详细实现方法:基础方法:标准输入函数int main() { char c; printf("Press a key (需按回车): "); c = getchar(); // 阻塞等待输入 print……

    2025年7月17日
    3300
  • 如何远程连接Linux电脑?详细步骤与方法指南

    远程连接Linux电脑是日常运维、开发和管理中的常见需求,主要通过SSH(安全外壳协议)实现命令行访问,或通过VNC(虚拟网络计算)实现图形界面远程操作,本文将详细介绍这两种主流方式的配置步骤、工具使用及安全注意事项,帮助用户高效、安全地远程管理Linux系统,通过SSH实现命令行远程连接SSH是Linux远程……

    2025年8月27日
    1400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信