我意识到在 Ubuntu 上使用 3TB 硬盘可能会出现问题:
由于 msdos-partition-table-imposed 错误,无法创建 3TB ext4 分区
我读了这里给出的答案,但仍然不确定,而且这个答案已经有几年了。
我尝试安装的可用空间分区是 1.8T,那么这是否仍会导致同样的问题,因为它低于问题开始的 2TB 限制(请参阅上面 James Henstridge 的回答)?
我正在尝试创建一台双启动机器,其中已经安装了 Windows 10,我已经创建了根分区,如下所示:
https://itsfoss.com/install-ubuntu-1404-dual-boot-mode-windows-8-81-uefi/
但是,当我尝试添加交换分区时出现上述错误。
如果这是同样的问题,我希望有人能帮我完成重新分区骰子的整个过程,因为我真的不太明白上面的答案。
答案1
使用 MSDOS/MBR 分区表,分区主要由两个数字定义:大小和偏移量。
两者都是 32 位无符号整数,因此它们可以容纳的最大值是 2 32。这些数字使用的单位是扇区,通常大小为 512 字节。这意味着,分区的最大大小以及最大偏移量/起始地址都必须低于 2 32 ×512 字节,相当于 2TB。
因此,如果您总共有 3TB,并且前 1.8GB 被 Windows 占用,您仍然可以很好地创建另一个偏移量为 1.8TB 的分区,就像您对 Ubuntu 根分区所做的那样。剩余空间无论如何都小于 2TB,因此大小不会成为限制。但是,如果我们说我们希望根分区占用除交换分区以外的所有剩余空间,则该交换分区的偏移量将远远超出 2TB 范围,因此不受支持。
您现在有几种选择:
在 Ubuntu 根分区之前创建交换分区,如下所示:
0GB - 1800GB Windows (or whatever) 1800GB - 1808GB Ubuntu Swap 1808GB - 3072GB Ubuntu /
这样,所有起始偏移量都将低于 2TB 的限制。
根本不要创建交换分区,而是使用交换文件。该过程描述如下系统安装后如何添加交换分区?
使用 GPT 代替旧的 MSDOS/MBR 分区表。不过,这需要使用 Windows 转换现有磁盘。这个过程可能并不简单,而且总是存在出错的风险,导致您丢失所有数据...