Centos 中的超大设备

Centos 中的超大设备

我有一台较旧的虚拟机 (Centos7),其中有许多磁盘。现在有 36 个 vmdk (22TB)。我想将一个虚拟磁盘扩展到 2400GB 并为 LVM 创建新分区(磁盘上的第 3 个分区)。但在创建分区后,我发现操作比正常情况下慢。因此我检查了系统日志,其中有以下内容:

    Mar 22 15:47:27 host kernel: sd 4:0:4:0: [sdai] Very big device. Trying to use READ CAPACITY(16).
    Mar 22 15:47:27 host kernel: sd 4:0:4:0: [sdai] 5033164800 512-byte logical blocks: (2.57 TB/2.34 TiB)
    Mar 22 15:47:27 host kernel: sdai: detected capacity change from 2040109465600 to 2576980377600

所以我不知道我是否可以按原样使用此分区。它安全吗?下面是 fdisk 输出,sdai3 在哪里 - 这是新的。有趣的是块中的“+”。为什么?这是问题吗?

目前,我不会使用这个部分。对于 LVM 组。

Fdisk 输出

WARNING: The size of this disk is 2.6 TB (2576980377600 bytes).
DOS partition table format can not be used on drives for volumes
larger than (2199023255040 bytes) for 512-byte sectors. Use parted(1) and GUID
partition table format (GPT).

Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): p

Disk /dev/sdai: 2577.0 GB, 2576980377600 bytes, 5033164800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x2b21362e

    Device Boot      Start         End      Blocks   Id  System
/dev/sdai1            2048  1887436799   943717376   8e  Linux LVM
/dev/sdai2      1887436800  3984588799  1048576000   8e  Linux LVM
/dev/sdai3      3984588800  4294967294   155189247+  8e  Linux LVM

答案1

是的。这是安全的。Linux 表示它了解情况并切换到支持这种大型设备的代码路径。

但是,您有一个 DOS 分区表。它支持最大 2 TB 的设备。您将无法扩展分区或在设备末尾的可用空间中创建新分区。您需要切换到支持更大设备的 GPT 分区表。这就是警告的内容。

您可以将当前分区表转换为 GPT(例如,gdisk具有此功能),但请注意,如果您从此磁盘启动,您将无法以旧方式安装引导加载程序。要从使用 BIOS 启动模式下的 GPT 分区表的磁盘启动 Linux,您需要创建一个小型(1 MiB)分区,类型为 4(BIOS 启动)。或者,如果您要切换到 EFI 启动,则需要创建一个 ESP(也可以是保存的分区/boot,但无论如何应该是 FAT32 分区)。

相关内容