Linux lsblk 输出

use*_*814 11 linux partitioning

如果我运行lsblk以下是我的输出。

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 698.7G  0 disk 
??sda1   8:1    0   500M  0 part /boot
??sda2   8:2    0   5.8G  0 part [SWAP]
??sda3   8:3    0    50G  0 part /
??sda4   8:4    0     1K  0 part 
??sda5   8:5    0 642.4G  0 part /home
sr0     11:0    1  1024M  0 rom  
Run Code Online (Sandbox Code Playgroud)

大部分是清楚的,但我有三个问题。
1.什么是sr0,为什么是RO,为什么RM栏下有一个1?这是一个完整的 GB,我很好奇它的用途。
2. 为什么是sda41K 块?我记得当我安装 Fedora 时,我有 1.83MB 的可用空间,但它拒绝使用。我认为这适用于我的sda4? 它为什么不使用它?
3.什么是MAJ:MIN柱子?

Mar*_*iae 14

  1. sr0 是您的光学设备,即 DVD 驱动器。RM 下有一个 1,因为它是一个可移动驱动器。它在 RO 列下有一个 0,因为它不是只读设备。它属于 rom 类型,因为它不是磁盘,而是 DVD/CD- ROM设备,即光学设备。

  2. sda4 是一个 1k 分区,因为它只是一个分区的外壳。老式磁盘,即那些具有 ms-dos 类型分区表的磁盘(现代对应的称为 GPT)只能有 4 个主分区。主分区对于某些操作系统(旧版本的 Windows)是必不可少的,因为它们只能从主分区启动。但是对更多分区的需求导致了从主分区到扩展分区的转变,即可以进一步细分为 64 个(我认为)更多的逻辑分区。通常,扩展分区是最后一个主分区(sda4),它从不直接使用:取而代之的是创建第一个逻辑分区,以便保留以后创建更多逻辑分区的可能性。因此,您看到的 1K 仅包含分区信息,仅此而已。

  3. Major:minor 是内核在内部引用设备的名称。第一个数字向内核标识它必须用来与设备通信的设备驱动程序。因此,例如,如果您有多个 SCSI 磁盘,它们的主编号将为 8。如果您有 IDE 磁盘,它们的主编号将为 3,光驱均为 11,软盘均为 2。次编号标识特定设备在所有使用相同设备驱动程序的人中:在您的情况下,分区 1-5 的次要编号为 1-5。如果您有第二个 SCSI 磁盘,它们的次要编号将从 16 开始。这些编号曾经是刻在石头上的,即随发行版一起提供,但是随着 udev 的到来,它们甚至不需要全局唯一,并且可能会有所不同靴子之间。尽管如此,他们最常见的是坚持 IDE 磁盘有 3 个的旧习惯,