安装Ubuntu双系统后Windows启动异常求助:无法启动、卡顿、界面故障
Hey there, let’s work through this frustrating dual-boot problem you’re dealing with. Your setup (Ubuntu on HDD, GRUB + Windows 10 on NVMe) is totally valid, but it looks like GRUB’s interaction with the NVMe drive and Windows’ boot config is causing those freeze loops, slow boots, and distorted boot screen. Here are actionable steps to fix this:
1. Repair the Windows Boot Loader First
The most common culprit here is GRUB overwriting or interfering with Windows’ boot records. Let’s restore Windows’ native boot loader first, then we’ll fix GRUB afterward:
- Grab a Windows 10 installation USB/disc, boot from it, and select Repair your computer > Troubleshoot > Advanced options > Command Prompt.
- Run these commands one by one in the prompt:
bootrec /fixmbr(Repairs the master boot record)bootrec /fixboot(Fixes the boot sector)bootrec /scanos(Scans for Windows installations)bootrec /rebuildbcd(Rebuilds the boot configuration data store)
- Restart your PC—Windows should now boot normally. Don’t worry, we’ll get GRUB back next.
2. Restore GRUB to Your NVMe Drive
Now that Windows is working, we need to put GRUB back as the default boot manager so you can choose between systems:
- Boot back into Ubuntu (you can use your Ubuntu installation media if needed, selecting "Try Ubuntu without installing").
- Open a terminal and run
sudo fdisk -lto identify your NVMe drive (it’ll look like/dev/nvme0n1). - Install GRUB to the NVMe drive with:
sudo grub-install /dev/nvme0n1 - Update GRUB to detect both systems:
sudo update-grub - Restart, and you’ll see the GRUB menu again—select Windows to test if it boots properly now.
3. Tweak GRUB Parameters for NVMe Compatibility
NVMe drives can have power management quirks that cause boot freezes or slowdowns. Let’s adjust GRUB to fix this:
- In Ubuntu, open the GRUB config file with:
sudo nano /etc/default/grub - Find the line starting with
GRUB_CMDLINE_LINUX_DEFAULT. Add the parameternvme_core.default_ps_max_latency_us=0to the end of the quotes, so it looks something like:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvme_core.default_ps_max_latency_us=0" - Save the file (Ctrl+O, then Enter) and exit (Ctrl+X).
- Update GRUB again:
sudo update-grub
4. Check Windows NVMe Drivers and Disk Health
Slow boots or glitches might also stem from outdated NVMe drivers or disk errors:
- If you can boot into Windows, open Device Manager > Disk Drives, right-click your NVMe drive, and select Update driver. Use the manufacturer's official driver instead of the generic Windows driver if possible.
- Run a disk check as an administrator: Open Command Prompt, type
chkdsk C: /f /r(replaceC:with your Windows system drive letter), and hit Enter. You'll need to restart for the check to run.
5. Verify GRUB Detects Windows Correctly
Sometimes GRUB fails to properly scan Windows partitions, leading to broken boot entries:
- In Ubuntu, run
sudo os-proberin the terminal. You should see a line pointing to your Windows 10 installation (like/dev/nvme0n1p1:Windows 10:Windows:chain). - If it shows up, re-run
sudo update-grubto make sure the GRUB menu has a valid Windows entry. If it doesn't show up, double-check that your Windows partition is mounted correctly in Ubuntu.
That distorted boot screen you mentioned? It’s likely a side effect of the messed-up boot process—once the boot loader is fixed, that should go away too.
内容的提问来源于stack exchange,提问作者Thomas Lewis

