磁盘标签的概念是什么意思?
它与分区表类型(MBR、GPT、循环等)含义相同吗? (正如我从以下输出中怀疑的那样parted
,并且在我之前的帖子)
或者它是否意味着赋予磁盘的名称?
谢谢。
$ sudo parted -l
Model: ATA TOSHIBA MQ01ABF0 (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 EFI System Partition boot, esp
2 538MB 500GB 500GB lvm
Model: Linux device-mapper (linear) (dm)
Disk /dev/mapper/lubuntu--vg-swap: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags:
Number Start End Size File system Flags
1 0.00B 4295MB 4295MB linux-swap(v1)
Error: /dev/mapper/lubuntu--vg-home: unrecognised disk label
Model: Linux device-mapper (linear) (dm)
Disk /dev/mapper/lubuntu--vg-home: 444GB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:
Model: Linux device-mapper (linear) (dm)
Disk /dev/mapper/lubuntu--vg-root: 51.5GB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags:
Number Start End Size File system Flags
1 0.00B 51.5GB 51.5GB ext4
答案1
是的,这很令人困惑:
- 分区内部(更正确的是文件系统内部)有一个标签,
LABEL
由lsblk -f
[在所有磁盘上但不适用于交换、procfs、sysfs 等特殊分区] 调用 - 分区外部但在分区表中有一个标签,称为
PARTLABEL
[lsblk -f
仅 gpt 磁盘有此容量] - 最外面有一个标签,正如您正确怀疑的那样,它通常被称为“分区表”。最后一个术语更多地用于其他 Unix 文化,例如开放BSD, 甲骨文和BSD。不幸的是,您偶然发现的“无法识别的磁盘标签”似乎就是这种情况。
一些词源/历史
- 早期的文件系统在标签上没有达成一致,甚至没有标签。重新创建文件系统也会丢失 (FS) 标签。因此,在 GPT 磁盘中添加了 FS 外部但分区表内部的一层标签。
如果我们重新开始,
PARTLABEL
将被调用LABEL
,(老式的)LABEL
可能是InternalLabel或Docu或其他东西或完全不存在。我们没有那么奢侈,因为- 历史事实是不容谈判的——(我们大多数人都没有机会使用时间机器!)
- 我们中的许多人仍在使用旧的(MBR)硬件现在
- 尽管如此,还是给瓶子贴上标签瓶子里面令人困惑。
对于最外面的标签,将其视为比“标签”更接近英文单词“格式”,即您购买新磁盘并准备将其供操作系统使用。现在我们说格式化磁盘。早些时候 *nixers 说:为磁盘添加标签
为何混乱
每个 Linux 用户(或者至少是管理自己机器的 Linux 用户)都需要处理4个级别这可能已经够令人困惑的了!
- 硬件盘
- 分区表(总表)
- 分区
- 文件系统
每个 n+1 嵌套在上面的 n 内
通过使用 LV,您可以添加更多级别,这可能会造成混乱。
我的
友好的建议
在获得上述内容之前,请勿使用 LV。
答案2
标签实际上是分区或整个驱动器格式化后的文件系统的一个属性。如果您使用新的文件系统格式化 USB 驱动器,您会注意到标签已更改。通常,当手动格式化驱动器时(例如通过其中一个mkfs
版本),您可以指定一个-n
标志,如下所示这个答案。
但标签的目的是什么?这是摘录自拱门维基 :
如果您的机器有多个 SATA、SCSI 或 IDE 磁盘控制器,则其相应设备节点的添加顺序是任意的。这可能会导致设备名称(如 /dev/sda 和 /dev/sdb)在每次启动时切换,最终导致系统无法启动、内核崩溃或块设备消失。持久命名解决了这些问题。
换句话说,设备标签有助于系统维护。显然这是一种对系统管理员更友好的方式。
让我们再进一步看一下:
按标签
几乎每种文件系统类型都可以有一个标签。所有具有该分区的分区都列在 /dev/disk/by-label 目录中。该目录是动态创建和销毁的,具体取决于您是否有附加标签的分区。
/dev/sda1
因此,如果您正在维护一个复杂的系统,这对于通过标签而不是/dev/sdb3
等等来识别驱动器/分区非常有用。
这是来自红帽文档:
该标签还可用于使用以下语法来引用 /etc/fstab 中的设备:
LABEL=Boot