我的 CentOS 7 服务器运行在非 UEFI 的系统上,我需要将 500GB HD 克隆到 5TB HD 以用作新的启动驱动器。支持此功能的最便宜、最省时的选项是什么?我的 mb 是较旧的英特尔插槽 775 MB,没有 UEFI。我可以使用 HD 控制卡来避免购买新的 MB + CPU + 内存组合吗?我如何知道特定的控制卡是否支持 5TB HD?他们没有在任何地方明确指定驱动器大小支持。
答案1
某些较旧的控制器可能存在驱动器容量限制,但我不知道具体细节。我的建议是尝试将新磁盘插入现有主板,看看它是否能正常工作。如果 Linux 识别磁盘并允许您访问其全部容量,那么除了磁盘本身之外,不需要任何新硬件,它应该没问题。如果您遇到问题,新的磁盘控制器卡可能会解决这些问题。新的磁盘控制器卡也可能比您现有的卡更快,但您需要调查当前计算机的规格(包括其磁盘接口和您可能用于新插入卡的任何插槽)与当今可用的插入卡的规格。
至于复制当前磁盘,Linux 可以从GUID 分区表 (GPT)磁盘,即使在基于 BIOS 的计算机上,因此您应该能够执行以下操作:
- 使用 GPT 对新的 5TB 磁盘进行分区。您可以使用
gdisk
GPT(仅限 GPT)parted
或 GParted(GPT 或 MBR;您必须明确告知该工具使用 GPT)或最近的版本fdisk
(我不确定在这么大的磁盘上它是否会默认使用 GPT;您可能需要告诉它使用 GPT)。 - 在新磁盘上,一定要创建一个~1MiBBIOS 启动分区 早期的在磁盘上。(某些 BIOS 无法读取超过某个点的数据,因此 BIOS 启动分区必须较早。)这通过 EF02 中的类型代码或GParted
gdisk
中的“bios_grub 标志”来标识。parted
- 如果你当前的安装没有使用分区,请创建一个~500MiB 的分区作为分区
/boot
——同样,早期的在磁盘上。同样,这也是必需的,因为某些 BIOS 无法读取超过某个点(对于较新的 BIOS 通常为 2TiB,但非常古老的 BIOS 的限制甚至更低)。因为 GRUB(或您用作引导加载程序的任何程序)使用 BIOS 来读取内核,所以您必须确保内核对 BIOS 是可读的;并且由于内核驻留在 中/boot
,因此创建一个单独的/boot
分区并将其置于 BIOS 限制以下可确保内核对 GRUB 是可读的。 - 将旧磁盘的分区或文件系统级别克隆到新磁盘。务必不是克隆整个磁盘或分区表,仅克隆您想要克隆的分区。请注意,如果您当前的安装不使用单独的
/boot
分区,则需要将目录的内容移动/boot
到新/boot
分区。 - 根据您复制内容的方式,您可能需要
/etc/fstab
在新磁盘上进行编辑以反映新的 UUID 值,以及新的/boot
分区(如果您创建了)。 - 如果有必要,调整新磁盘的分区大小。
- 将您的引导加载程序重新安装到新磁盘。
这是一个相当高层次的描述,省略了许多细节。部分原因是您可以使用各种工具(紧急启动盘与当前的 CentOS 安装、各种分区工具、各种分区或文件系统复制工具等)完成此任务,部分原因是我不知道您的系统的所有细节或您可能想要使用哪些工具。