Linux 和 Windows 势不两立的时代已经一去不复返了。近年来,微软非常热情地拥抱开源社区,因此,我们 的 Windows 安装中已经内置了 Windows Subsystem for Linux
这并不意味着我们不再需要完整的 Linux 安装。事实上,同时运行 Windows 和 Linux 的机器相当常见。
但是你知道比同时运行两种操作系统的机器更常见的是什么吗?机器所有者尝试双重启动他们的机器,最终在此过程中丢失了大量数据。
因此,如果您是受害者之一,或者是那些试图在即将到来的双启动冒险中避免可能发生的灾难的人之一,那么本文适合您。在这里您将了解:
- 如何在 Windows 上安装任意 Linux 发行版
- 如何在不破坏 Windows 的情况下摆脱 Linux
- 常见问题、误解及其解决方案,以及
- 一些通常会给你的同伴留下深刻印象的怪异东西
事不宜迟,让我们喝杯咖啡或茶,或者至少喝杯水,然后立即开始这个过程。
我做出的一些假设
在进入本教程的核心部分之前,我想澄清一些事情。为了让整篇文章更容易理解,我对您的系统做了以下假设:
- 您的计算机使用的是 UEFI 而不是 BIOS
- 您的计算机上已安装 Windows
- 你有一个足够大的 USB 驱动器(4GB)来启动 Linux
- 你有足够的空间(25GB)在 HDD 或 SSD 上安装 Linux
差不多就是这样了。如果以上所有东西都准备好了,就可以开始了。
如何创建可启动的 Linux USB 驱动器
有多种工具可以帮助您创建可启动的 Linux USB 驱动器。在所有这些工具中,我最喜欢的是:
- balena蚀刻机
- Fedora 媒体写入器
这两种工具都是开源的,可以免费使用,并且几乎可以在所有主要平台上使用。在本文中,我将使用 Fedora Media Writer,因为没有太多教程谈论它,而且我自己也在使用它。
顾名思义,Fedora Media Writer 是 Red Hat 开发的一款用于制作可启动 Linux USB 的工具。下载该程序后,将其安装到您的系统上并启动。

它看起来是这样的。如您所见,您可以选择下载最新的 Fedora ISO,也可以选择从驱动器中选择自定义映像文件。
除非您打算在您的机器上安装 Fedora(剧透!这是我的最爱),否则您必须继续下载您想要的 ISO 文件。
在本文中,我将使用 Ubuntu, 因为它在新手中更受欢迎。但您在这里学到的东西可以应用于任何其他 Linux 发行版。
继续从他们的 download 页面下载 Ubuntu 的 ISO。Ubuntu 20.04 LTS(撰写本文时的最新长期版本)大小约为 2.67GB。下载完文件后,返回 Fedora Media Writer,单击“自定义映像”,然后选择刚刚下载的 ISO 文件。

“写入磁盘”按钮呈灰色,因为计算机未连接 USB 驱动器。连接 USB 驱动器后,按钮应变为亮红色。

重新检查下拉菜单中选择的 USB 驱动器是否正确,然后点击“写入磁盘”按钮。根据您机器的传输速率,此过程可能需要几分钟。完成后,断开 USB 驱动器并将其放在一边。您很快就会需要它。
如何准备你的计算机以安装 Linux
再次强调,无法从 Linux USB 驱动器启动的情况并不罕见。如果您的计算机配置不正确,则可能会发生这种情况。
为此,请转到控制面板。不是新的“设置”应用程序,而是 OG 控制面板。

确保控制面板处于“小图标”或“大图标”模式,而不是“类别模式”。现在转到“电源选项”,并从左侧栏单击“选择电源按钮的功能”。

单击“更改当前不可用的设置”链接,取消选中“打开快速启动(推荐)”选项,然后点击“保存更改”。
根据 Walter Glenn 的 文章 ,
Fast Startup combines elements of a cold shutdown and the hibernate feature. When you shut down your computer with Fast Startup enabled, Windows closes all applications and logs off all users, just as in a normal cold shutdown.
At this point, Windows is in a state very similar to when it’s freshly booted up: No users have logged in and started programs, but the Windows kernel is loaded and the system session is running.
Windows then alerts device drivers that support it to prepare for hibernation, saves the current system state to the hibernation file, and turns off the computer.
When you start the computer again, Windows does not have to reload the kernel, drivers, and system state individually. Instead, it just refreshes your RAM with the loaded image from the hibernation file and delivers you to the login screen. This technique can shave considerable time off your start up.
我知道这听起来是个不错的功能,但问题是,如果在双启动系统中保持快速启动启用,Linux 将无法使用两个操作系统之间共享的任何驱动器,因为它们处于休眠状态并由 Windows 持有。
接下来,启动到主板的 UEFI 配置屏幕。根据您的主板或笔记本电脑品牌,键可能会有所不同,但在大多数情况下,按下“Del”键即可进入。
到达那里后,你必须特别更改一个设置:
- 关闭安全启动 – 这是 UEFI 的功能之一,有助于防止启动过程中的攻击和恶意软件。禁用它并不是绝对必要的,但根据您选择的发行版,您可能会或可能不会在安装过程中遇到问题。禁用它以确保安全。
保存更新的设置并重新引导至 Windows。现在是时候准备一些磁盘空间来容纳 Linux 了。
如何创建用于安装 Linux 的附加分区
现在是时候为新操作系统腾出一些空间了。根据你的 HDD 或 SSD 的状态,这可能非常简单,也可能相当棘手。
让我解释一下我们要做什么。Windows 中有一个内置实用程序,称为“磁盘管理”,当您想要处理分区时,它很有用。
你可以使用它从现有分区中挤出一些空间。为此,请在开始菜单中搜索“磁盘管理”以将其打开。

请记住,它可能会弹出“创建并格式化硬盘分区”而不是“磁盘管理”。启动它并仔细查看其用户界面:

此屏幕截图来自我的一台未安装 Linux 的机器。我将使用此设备作为本文的实验对象。它有 512GB NVME SSD 和 8GB RAM。
用户界面分为两部分。顶部是所有分区的列表,底部垂直列出了连接到计算机的所有物理磁盘。
下面的截图来自我的台式工作站,它有一个 250GB NVME SSD 和一个 1TB HDD。我在第二个磁盘上安装了 Windows 和 Linux。因此,如果您的机器上也有多个磁盘,我建议您在包含 EFI 分区的磁盘上安装操作系统。

如果您查看磁盘 1 的开头,则那个 550MB 的 FAT32 分区是 EFI。在您的机器上,它可能要小得多。
让我们回到我们的实验设备。从屏幕截图中可以看到,Windows (C:) 分区几乎有 250GB。我将从该分区中切掉 108GB。
- 根用户需 100GB
- 8GB 用于交换
在 Linux 中,根目录包含系统上的所有其他目录和文件。当 RAM 已满时,Linux 会将不活动的页面从内存移至交换空间。交换空间不是必需的,但最好有。
确定交换空间没有硬性规定。当您拥有 4GB-8GB RAM 时,建议的交换空间大小是该大小的 2 倍,而对于 8GB-16GB,建议的交换空间大小是该大小的 1.5 倍。考虑到我不会在这台笔记本电脑上执行任何内存密集型任务,因此我将在此打破规则。
要从所需分区中切出一些空间,请右键单击其底部,然后单击“压缩”。执行此操作后,磁盘管理将开始计算可供压缩的空间量。

您可能认为分区的整个可用空间都应该可以缩小,但事实并非如此。有时分区周围散布着不可移动的文件,这可能会阻止您使用全部可用空间。在这种情况下,请使用 Defraggler 来优化您的驱动器。
磁盘管理完成查询分区后,您将看到以下窗口:

如您所见,我有 160311MB 的空间可供缩减。将该值除以 1024 将得到以 GB 为单位的大小,在我的情况下约为 156GB。
但我想将分区缩小 108GB。将此值乘以 1024 可得出以兆字节为单位的 110592MB 的值。

计算出所需尺寸后,点击“缩小”按钮。缩小过程不会花太长时间。缩小过程完成后,用户界面底部会更新。

如您所见,我现在有 108GB 的未分配空间。说实话,这足以进行下一步。但为了让您的生活更轻松,我建议您在继续之前创建两个 RAW 分区。
为此,请右键单击未分配的空间,然后单击“新建简单卷”选项。将出现一个新的向导窗口。按“下一步”按钮,在下一步中,向导将询问新分区的大小:

我想创建 100GB 的根分区。将该值乘以 1024 可得出以兆字节为单位的值,即 102400MB。计算出大小后,点击“下一步”。

在下一步中,向导将询问您驱动器号。选择“不分配驱动器号或驱动器路径”,然后点击“下一步”。

在此步骤中,选择“不格式化此卷”选项并点击“下一步”。最后一步点击完成。按照相同的过程创建交换分区。

我现在有一个 100GB 的 RAW 分区用于 Linux 根目录,还有一个 8GB 的 RAW 分区用于交换。关闭磁盘管理工具,再拿一杯咖啡或茶,或者至少喝点水,因为我们要深入这个兔子洞了。
如何在 Windows 上安装 Linux
好了,各位,现在开始行动吧。我们要开始行动了。但首先,你必须弄清楚要使用哪个键才能进入启动菜单。
在我使用的设备上,按 F2 键会进入 UEFI 配置屏幕。从那里,按 F8 键会进入启动菜单。因此,请确保您已针对您的设备进行了研究。
有些教程可能会指导您从 UEFI 配置屏幕更改启动顺序,但我不建议这样做。包含引导加载程序的 SSD 或 HDD 应始终位于顶部。
现在连接您在第一部分中预留的可启动 USB 设备,然后重新启动计算机进入启动菜单。从启动菜单中,选择可启动 USB 驱动器并按 Enter。
GNU GRUB 菜单将会出现。选择第一个显示“Ubuntu”的菜单。等待文件完整性检查完成,或者您也可以通过按键盘上的“Ctrl + C”跳过它。
您会听到一声美妙的钟声,然后雄伟的 Ubuntu 安装程序就会出现:

在您点击“继续”按钮之前,我建议您连接到互联网。如果您使用的是以太网电缆,那么您应该已经连接。但如果您使用的是无线,请检查屏幕右上角的 Wifi 图标:

连接后,点击安装程序上的“继续”按钮:

为自己选择正确的键盘布局并点击“继续”。

“正常安装”将从一开始就为您提供一堆有用的软件和游戏,而“最小安装”将仅为您提供基本功能。
保持“安装 Ubuntu 时下载更新”选项处于选中状态。这将在安装过程中从互联网下载更新的软件包文件。
第三个选项需要解释一下。假设您使用的是 NVIDIA GPU。当 Ubuntu 检测到该 GPU 时,Ubuntu 将加载称为“nouveau”的 NVIDIA GPU 开源驱动程序。
如果您选中“安装用于图形和 Wi-Fi 硬件和其他媒体格式的第三方软件”选项,NVIDIA 将尝试安装 NVIDIA 自身提供的专有驱动程序。它还将安装用于专有媒体格式(如 MPEG)的编解码器。
我使用的这个设备有一个 AMD GPU,并使用开源“amdgpu”驱动程序。考虑到我可以根据需要自行安装编解码器,我将保留此项不勾选。选择你喜欢的选项,然后点击“继续”按钮。

好的,这一步需要注意。Ubuntu 安装程序非常智能,可以检测您的机器上是否安装了其他操作系统。如果是,安装程序将为您提供与它们一起安装 Ubuntu 的选项。不要选择该选项。我再说一遍,不要 选择该选项 .
选择“其他”并点击“继续”按钮。

这部分可能有点棘手。这就是为什么我指示您从 Windows 创建分区,而不是让空间保持未分配状态。如果您将其保持未分配状态,那么确定应该使用磁盘的哪一部分将变得更加困难。
在顶部,您可以看到一条多色线以及图例,其中每种颜色代表哪个分区。找出您从 Windows 创建的两个分区。
在我的机器中,\'nvme0n1p4\' 和 \'nvme0n1p5\' 就是这两个。现在从列表中,找到您为根创建的那个(在我的情况下是 nvme0n1p4)并双击它:

从“用作”下拉菜单中选择“Ext4 日志文件系统”,并从“挂载点”下拉菜单中选择“/”。根据 Linux 信息项目 :
A mount point is a directory (typically an empty one) in the currently accessible filesystem on which an additional filesystem is mounted (i.e., logically attached).
点击“确定”按钮。接下来双击您为交换空间创建的分区:

从“用作”下拉菜单中选择“交换区域”,然后单击“确定”按钮。还有一个分区需要配置。即 EFI 分区。滚动列表并找到 FAT32 分区。

在我的计算机上,“nvme0n1p1”是 EFI 分区。双击它:

确保从“用作”下拉菜单中选择了“EFI 系统分区”。这是包含引导加载程序的分区。确保您没有格式化此分区。点击“确定”按钮。
此外,EFI 分区的默认挂载点是 \'/boot/efi\'。某些发行版(如 Fedora)会要求您手动写入此挂载点。因此请确保您输入了正确的挂载点。
再次检查分区配置,如果一切正常,点击“立即安装”按钮。

安装程序会询问您的时区。我住在孟加拉国的达卡,所以我选择了时区。点击“继续”按钮。

填写您认为合适的所有信息,然后点击“继续”按钮。

安装过程应该不会花很长时间。小时候,我很喜欢看这个幻灯片。

安装完成后,您可以继续测试或重新启动。如果您选择重新启动,Ubuntu 将指示您断开 USB 驱动器并按 Enter。
机器将重新启动,然后再次显示 GRUB 菜单。查看列表,您会在菜单上看到 Ubuntu 和 Windows 启动管理器。启动到 Ubuntu,因为您还有最后一件事要做。
如何同步 Windows 和 Linux 之间的时间
这是双启动系统用户面临的常见问题之一。当您启动 Windows 然后启动 Linux 时,您会发现 Linux 的时钟完全混乱。如果您先启动 Linux 然后启动 Windows,也会发生同样的事情。
让我来解释一下为什么会发生这种情况。你的计算机(或者说世界上的每一台计算机)都有两个时钟。一个是操作系统内的系统时钟,另一个是主板上的硬件时钟,即使你的计算机没有运行,它也会跟踪时间。
问题是 Windows 假定您的硬件时钟以您的本地时间运行,而 Linux 假定您的硬件时钟以 UTC 时间运行,并根据您的位置应用偏移量。
解决此问题的最简单方法是让你的 Linux 发行版像 Windows 一样使用本地时间。为此,请在 Linux 终端中执行以下命令:
timedatectl set-local-rtc 1 --adjust-system-clock
现在重启电脑进入 Windows,同步系统时钟并返回 Linux。现在时间应该没有乱了。
如何从双启动系统中删除 Linux
假设由于某种原因,你不喜欢使用 Linux,并想摆脱它。这很可悲,但生活很艰难,不是吗?
从双启动系统中删除 Linux 需要两个步骤:
- 摆脱 GRUB 引导加载程序
- 删除 Linux 分区
要删除 GRUB 引导加载程序,您必须从 EFI 分区中删除相应的文件。问题是该分区默认是隐藏的。
要使其可访问,您必须使用该 diskpart
程序。它是一个磁盘管理实用程序,类似于磁盘管理工具,但它是一个命令行界面。
启动 Windows。从开始菜单,以管理员身份打开命令提示符。为此,只需在开始菜单中搜索“cmd”,当命令提示符出现时,按下“Ctrl + Shift + Enter”组合键。
现在 diskpart
在命令提示符窗口中写入并按回车键启动该程序。

接下来,输入 list disk
并按回车键以获取所有连接磁盘的列表:

此设备只有一个物理磁盘,但您可能有多个。写入 sel disk <disk number>
以选择所需的磁盘。

然后写入 list vol
并按回车键列出该磁盘上的所有分区。

根据大小和格式判断,我可以说卷 4 是 EFI 分区。请记住,这在您的系统上可能要小得多,但它始终是 FAT32 分区。写入 sel vol <volume number>
以选择所需的卷。

最后写入 assign letter x
并按回车键将字母分配 x
给该分区。

通过输入 diskpart
并按回车键 exit
退出

现在该分区已可访问。在同一个命令提示符窗口中,输入并按回车键进入 EFI 分区 x:
。

要获取其中所有文件夹的列表,请写入 dir
并按回车键。

现在写入 cd EFI
进入该 EFI 文件夹并 dir
再次写入以列出内容。

您必须删除该 ubuntu
文件夹。为此,请输入 rmdir /s ubuntu
并按回车键。命令提示符会询问您是否确定。输入 Y
并按回车键确认。然后 dir
最后一次使用以确保它已经消失。

就是这样。接下来,像之前一样再次打开磁盘管理,从底部右键单击面向 Linux 的分区,然后从列表中选择“删除卷”。
删除分区后,您可以使用未分配的空间创建一个新分区,或者扩展其左侧的分区以消除未分配的空间。
最后重新启动计算机并检查 Ubuntu 是否已经从您的机器上消失。
那么其他 Linux 发行版怎么样?
本文中学习的技术与任何 Linux 发行版相关。
因此,无论何时双启动系统,请确保
- 安全启动已禁用
- 快速启动已禁用
在安装过程中
- 不要选择任何引导/自动安装类型
- 确保不要格式化 EFI/ESP 分区
- 确保正确安装分区
只要您遵守这几条规则,就可以了。
请记住,在极少数情况下,发行版可能不使用 GRUB 作为引导加载程序。
以非常流行的“ Pop!_OS ”为例。它使用“systemd-boot”作为其默认引导程序。因此,您必须在启动过程中不断按下空格键(或者键盘上的任何按钮),否则启动菜单将不会显示,您将直接启动到 Pop!_OS。
我还发现:有些主板(例如我的 MSI B450 Tomahawk Max)默认选择 Windows 启动管理器,尽管我安装了有效的 Linux。如果您看到类似情况,请进入 UEFI 配置屏幕并查找相关选项。
结论
我谨从心底感谢您花时间阅读这篇文章。
我还有一个个人博客,我会在上面写一些随机的技术内容,所以如果你对这类东西感兴趣,请查看 https://farhan.dev 和 Twitter 上联系我 LinkedIn .
发表评论 取消回复