我已经尝试过两次了,每次都会遇到这样或那样的障碍。
据我所知,Windows 10 和任何 GNU/Linux 都表示 Debian 可以愉快地共存。
现在我有一个 4 TB 的 HDD,用作 gpt 磁盘。
现在,当我安装操作系统时,我会这样做 -
a. 带有 /boot 的 Windows 10
f. Windows 安装全部完成后,安装 debian 并使用 grub2,以便它可以找到两个发行版,并尽力而为。
现在有了 Linux,很容易规划出需求 -
a. grub2 显示类似以下内容 -
> ls -lh /boot
total 27M
-rw-r--r-- 1 root root 193K Dec 22 19:42 config-4.14.0-2-amd64
drwx------ 3 root root 1.0K Jan 1 1970 efi
drwxr-xr-x 5 root root 1.0K Jan 15 01:43 grub
-rw-r--r-- 1 root root 19M Jan 12 10:40 initrd.img-4.14.0-2-amd64
drwx------ 2 root root 12K Jan 1 17:49 lost+found
-rw-r--r-- 1 root root 2.9M Dec 22 19:42 System.map-4.14.0-2-amd64
-rw-r--r-- 1 root root 4.4M Dec 22 19:42 vmlinuz-4.14.0-2-amd64
现在我想要在 /boot 中拥有内核、内存测试器和更多的可用空间。
> df -h /boot
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 88M 40M 43M 49% /boot
另请参阅 -
r> sudo ls -lh /boot/efi/EFI
total 3.0K
drwx------ 2 root root 1.0K Dec 31 21:38 Boot
drwx------ 2 root root 1.0K Dec 31 19:23 debian
drwx------ 4 root root 1.0K Dec 31 21:32 Microsoft
我有点困惑,因为在 Windows 10 下为 /boo 放置一个大区域会鼓励保留和其他类似的目录。
我愿意从头开始,即再次安装 Windows 10,但不确定如何处理分区,以便 /boot 或 /boot/efi
所以,如果我从头开始,有人可以给我建议如何继续进行吗?
答案1
/boot
并且/boot/efi
通常都是单独的分区,除了一些奇怪的配置外,几乎所有的 Linux 发行版都不支持这些配置。
/boot/efi
是 EFI 系统分区。它将由 Windows 安装自动创建,并且需要是具有特定类型代码的 FAT32 格式的分区(具体来说,是 C12A7328-F81F-11D2-BA4B-00A0C93EC93B )。它包含 EFI 可执行文件(实际上是 Windows 使用的 PE32+ 格式的特殊版本),它们是各种 EIF 引导加载程序和系统工具。对于大多数系统,128MB 是一个合理的大小(可以轻松容纳标准 MS 引导加载程序和典型的 GRUB2 发行版安装以及 Linux 上的安全启动所需的内容(如果您实际使用它)。您的示例列表有 3 个目录:
/Boot
:这是 EFI 默认引导加载程序路径的一部分(确切路径适用/Boot/bootx64.efi
于 64 位系统和/Boot/bootia32.efi
32 位系统(对于 ARM 和 ARM64 系统还有其他路径,但我忘记了确切路径)。某些发行版会在此处安装 GRUB 可执行文件的副本,因为存在有缺陷的 EFI 实现,只能从此路径或标准 Windows 启动。作为参考,这是引导加载程序需要位于可移动媒体上才能在 EFI 系统上启动的位置。它也与/boot
所有标准 Linux 系统上的目录完全无关。/debian
:这是发行版目录。每个发行版都有自己的目录。这是大多数发行版的引导加载程序以及它们可能安装的任何其他 EFI 实用程序的标准安装位置。对于正常的 EFI 安装,发行版将设置固件以从此处加载 GRUB 版本,然后它将开始在 Linux 目录/boot
(而不是 EFI/Boot
目录)中查找配置文件以告诉它要加载什么。/Microsoft
:这是 Windows 启动目录。它将至少包含一个名为 的子目录Boot
,该子目录将包含其他几个子目录和几个文件。这里最值得注意的文件是/Microsoft/Boot/bootmgfw.efi
,它是 Windows EFI 引导加载程序。一些真正愚蠢的 EFI 实现将无条件地加载此文件(如果存在),而不是关注 EFI 引导变量。
/boot
是 Linux 启动分区,它将由 Linux 安装过程创建。它包含常规引导加载程序(在本例中为 GRUB2)使用的文件,以及用于 Linux 发行版的内核和 initramfs 映像。如果您使用的是 GRUB2,它需要是兼容 POSIX 的文件系统(这意味着 FAT32 已过时,这就是为什么它通常是与 EFI 系统分区分开的文件系统)它应该有一个用于引导加载程序的子目录(/boot/grub
或/boot/grub2
在您的情况下),以及一堆文件。大多数人建议将这个文件系统至少设为 256MB,这样您就可以保留一些旧内核,以防您需要启动它们来解决新内核中的错误。另请注意,在某些情况下,可能没有单独的 Linux 启动分区,相关文件可能存储在根文件系统中(当您启动到/boot
Linux 时,它们仍然位于下方)。