Ubuntu 服务器 VM (Hyper-V):安装前格式化 sda2 分区 (mkfs.ext4 -G 4096 /dev/sda2)

Ant*_*oon 5 server filesystem partitioning ext4 hyper-v

我正在探索 Ubuntu 的迷人世界,并希望将 Ubuntu Server 20.04 LTS 安装为 Hyper-V 中的虚拟机。

Microsoft 建议,在创建要安装 Ubuntu 的文件系统时,将打包在一起以在 ext4 文件系统中创建更大的虚拟块组(或“flex_bg 组”)的块组数量应设置为 4096( mkfs.ext4 -G 4096 /dev/sdX1)

安装 Ubuntu Server VM 时,我没有看到设置此参数的选项。

使用默认选项安装 Ubuntu Server 后,我有以下分区:

Model: Msft Virtual Disk (scsi)
Disk /dev/sda: 42.9GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  538MB   537MB   fat32              boot, esp
 2      538MB   42.9GB  42.4GB  ext4
Run Code Online (Sandbox Code Playgroud)

跑步时

dumpe2fs -h /dev/sda2
Run Code Online (Sandbox Code Playgroud)

我看到 sda2 的块组数量是 16:

Flex block group size:    16
Run Code Online (Sandbox Code Playgroud)

有没有办法在安装过程中将其设置为 4096?

如果没有,我可以使用正确数量的块组重新分区 sda2(使用哪种工具(例如安装在(虚拟)DVD 驱动器中?)),然后手动选择 sda1 和 sda2 分区重新安装?

Ant*_*oon 3

在肯指导我正确的方向(感谢肯!)的帮助下,我成功地解决了这个问题。可能有更快或更专业的方法来做到这一点,但以下步骤对我有用:

  1. 按照此处的说明准备虚拟磁盘,并使用之前创建的虚拟磁盘作为操作系统磁盘创建虚拟机。
  2. 将 Ubuntu Server iso 挂载到虚拟机的虚拟 DVD 驱动器(设置为第一启动设备)中并启动虚拟机。
  3. 使用默认选项安装 Ubuntu Server。在文件系统设置步骤中,选择“使用整个磁盘”(不设置 LVM)。
  4. 安装完成并登录后,您会注意到安装过程创建了 2 个分区:(1) /dev/sda1:512 MB 的 uefi 引导分区,格式为 fat32;(2) /dev/sda2:系统文件分区占用剩余磁盘空间,格式为ext4。
  5. 根据Microsoft 的建议,在安装之前应格式化 ext4 分区,并将“组数”参数设置为 4096 ( mkfs.ext4 -G 4096 /dev/sda2)。据我所知,在安装过程中没有机会这样做。当我们检查默认安装过程设置的此参数 ( ) 的值时sudo dumpe2fs -h /dev/sda2,我们看到值是 16,而不是 4096(在名为“Flex 块组大小”的行处)。我们将通过安装 Ubuntu LiveCD 实例并重新格式化 /dev/sda2 分区来解决此问题。
  6. 关闭虚拟机电源并将 Ubuntu Desktop iso 加载到其虚拟 DVD 驱动器(设置为第一启动设备)中。
  7. 重新启动虚拟机并选择选项“尝试 Ubuntu而不安装”。
  8. 当 Ubuntu 桌面加载完毕后,打开终端并执行sudo mkfs.ext4 -G 4096 /dev/sda2. 这将擦除分区并使用正确的“组数”参数对其进行格式化,同时保持该分区的所有其他格式化参数不变。再次运行来检查这一点sudo dumpe2fs -h /dev/sda2
  9. 关闭实时 Ubuntu 会话的电源(在我的例子中,它在关闭电源时冻结,我必须在任务管理器中终止 VM 进程),在其虚拟 DVD 驱动器中加载 Ubuntu Server iso(设置为第一启动设备)并重新启动 VM再次执行安装过程。
  10. 进入文件系统设置时,选择“自定义存储布局”并点击“完成”。
  11. 下一个屏幕要求您:(1)“在 / 处安装文件系统”并 (2)“选择启动磁盘”。
  12. 首先,选择本地磁盘,按 Enter 键并选择“用作启动设备”来选择启动磁盘:步骤 12
  13. 其次,选择已格式化为 ext4 的分区 2,按 Enter 键并选择“编辑”。
  14. 在对话框中,确保在“格式:”下选择“保留格式为 ext4”。如果没有,“组数”参数将再次重置为 16,您将有机会重新开始! 第14步
  15. 转到同一对话框中的“安装:”部分,按 Enter 键并选择“其他”,如下所示:第 15 步
  16. 您将收到一条红色消息,表示这是您一生中最糟糕的想法,如果您继续,您的计算机将在 30 秒内自动销毁:步骤 16。无论如何,做一个叛逆者并点击“保存”。
  17. 现在您将看到您已在 / 处安装了启动磁盘和文件系统。点击“完成”并继续使用默认安装选项。
  18. 当安装准备好后,登录并sudo dumpe2fs -h /dev/sda2再次执行。如果您已执行前面的步骤,您现在应该会在名为“Flex block group size”的行看到值 4096。

在 Hyper-V 中享受全新的 Ubuntu Server VM!