lsblk 和fdisk看到的盘不一样

lsblk 和fdisk看到的盘不一样

在Linux系统中,我们常用的两个命令,lsblk和fdisk可以查看磁盘相关的信息。但是在实际使用时,我们有时会发现用这两个命令看到的盘不一样,这是为什么呢?

lsblk和fdisk是什么

先来简单介绍一下lsblk和fdisk。

lsblk是列出块设备信息的命令,可以展示磁盘、分区和磁盘挂载点等信息,使用起来非常方便。

示例代码:

lsblk

fdisk是磁盘分区工具,可以用来创建、删除和调整分区。同时也可以查看磁盘的分区情况。

示例代码:

fdisk -l

两者看到的不一样

我们常听到说,lsblk和fdisk看到的盘不一样,那究竟是哪些方面有所差别呢?

  1. 未挂载的磁盘分区

在Linux系统中,一块磁盘可以按照物理上的不同区域划分成不同的分区,这些分区需要挂载到合适的目录才可以被操作系统使用。如果我们的磁盘分区没有挂载,那么lsblk是不会显示该磁盘分区的。而fdisk则可以看到该磁盘分区,因为fdisk只展示分区的划分情况。

  1. 不同的分区表

在Linux系统中,磁盘分区表通常有两种:MBR和GPT。MBR是传统的分区表,支持的最大磁盘容量为2TB。而GPT是新的分区表,支持的最大磁盘容量为9.44ZB。如果我们的磁盘分区是用GPT方式分区的话,fdisk是无法查看的,需要使用gdisk工具。

示例代码:

gdisk -l /dev/sda

解决方法

既然lsblk和fdisk看到的磁盘分区存在差异,那我们该如何解决呢?

如果只是为了查看磁盘分区的情况,可以使用fdisk和gdisk结合起来使用,即先用fdisk查看,如果是GPT分区表,则用gdisk看详细信息。

示例代码:

fdisk -l /dev/sda
gdisk -l /dev/sda

如果需要挂载磁盘分区的话,则需要先使用lsblk查看尚未挂载的分区,并在对应的目录下进行挂载:

示例代码:

lsblk
mount /dev/sdb1 /mnt/usb

结论

综上所述,lsblk和fdisk看到的盘之所以会不一样,主要是因为lsblk只会显示已经被挂载的分区,而fdisk可以看到所有的分区划分情况,但是无法查看GPT分区表的详细信息。如有需要,可以结合fdisk和gdisk使用,同时也可以使用lsblk来挂载尚未被挂载的磁盘分区。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程