Sau khi cài đặt Ubuntu song song cùng với Windows, một vấn đề phổ biến là máy tính khởi động trực tiếp vào Windows hoặc Ubuntu mà không hiển thị menu lựa chọn GRUB. Điều này thường xảy ra do mất GRUB2. Bài viết này sẽ hướng dẫn bạn cách khắc phục lỗi khởi động trong thiết lập khởi động kép Windows và Ubuntu cho UEFI (GPT).
Những nguyên nhân lỗi menu Grub2
- Cài đặt lại Windows có thể ghi đè GRUB2″ Windows bootloader”, khiến Ubuntu không thể truy cập được.
- Việc cập nhật BIOS đôi khi có thể dẫn đến hỏng hoặc xóa GRUB2, đặc biệt là trên các hệ thống UEFI.
- Việc cài đặt “bootloader “không chính xác trong quá trình cài đặt Ubuntu có thể khiến máy tính khởi động trực tiếp vào Windows.
- Không cập nhật GRUB2 sau khi cài đặt hạt nhân mới hoặc thực hiện thay đổi đối với phân vùng có thể ngăn khả năng khởi động vào Windows hoặc các phiên bản Ubuntu cũ hơn.
- Các bản cập nhật Windows có thể sửa đổi hoặc xóa các tệp quan trọng để GRUB2 hoạt động chính xác.
- Lỗi hoặc xung đột phần mềm có thể khiến GRUB2 gặp trục trặc hoặc biến mất.
- Những thay đổi về thứ tự khởi động trong cài đặt BIOS/UEFI có thể ưu tiên Windows hơn GRUB2.
- Trong một số trường hợp, sự cố phần cứng hoặc lỗi ổ đĩa cũng có thể ảnh hưởng đến GRUB2.
Đừng lo lắng nếu bạn gặp phải bất kỳ vấn đề nào trong số này; chúng tôi sẽ hướng dẫn bạn cách cài đặt lại GRUB trong Ubuntu bên dưới.
Sửa lỗi GRUB Dual-Boot Ubuntu với Windows cho UEFI (GPT)
Cách 1: Sử dụng Boot-Repair để cài đặt lại grub (Được khuyến nghị)
Phương pháp này rất được khuyến khích vì tính đơn giản và tự động hóa của nó. Boot-Repair là một công cụ mạnh mẽ giúp tự động chẩn đoán và khắc phục các sự cố khởi động, bao gồm cả lỗi GRUB2. Nó có thể khôi phục menu khởi động GRUB2 và đảm bảo khả năng khởi động thích hợp của cả Windows và Ubuntu.
Yêu cầu: Ổ USB có khả năng khởi động với phiên bản Ubuntu hiện tại. Bạn có thể sử dụng Rufus để tạo một cái.
- Bước 1: Khởi động lại máy tính và khởi động từ ổ USB. Chọn “Try or Install Ubuntu” để chạy Ubuntu ở chế độ trực tiếp.
- Bước 2: Kết nối internet: Đảm bảo bạn có kết nối internet đang hoạt động.
- Bước 3: Nhấn Ctrl+Alt+T để mở cửa sổ Terminal.
- Bước 4: Cài đặt Boot-Repair: Chạy các lệnh sau trong Terminal:
sudo add-apt-repository ppa:yannubuntu/boot-repair sudo apt-get update sudo apt-get install -y boot-repair && boot-repair
- Bước 5: Công cụ Boot-Repair sẽ tự động quét, bạn chọn Recommended để sửa lỗi. Sau khi hoàn tất, bạn chỉ cần khởi động lại máy tính và chọn Ubuntu hoặc Windows từ menu khởi động.

- Bước 6: Khởi động lại máy tính của bạn: Sau khi quá trình sửa chữa hoàn tất, hãy khởi động lại máy tính của bạn và chọn Ubuntu hoặc Windows từ menu GRUB.
Cách 2: Sử dụng lệnh cập nhật Grub
Phương pháp này liên quan đến việc cài đặt lại GRUB2 theo cách thủ công bằng các lệnh Terminal. Nó kỹ thuật hơn một chút nhưng cung cấp khả năng kiểm soát quy trình tốt hơn.
Yêu cầu: Một ổ USB có khả năng khởi động với Ubuntu.
Lưu ý: Các phương pháp được mô tả ở đây lần lượt dành riêng cho SSD NVMe và SSD SATA. Chúng không thể thay thế cho nhau.
Các bước:
Dành cho ổ SSD NVMe
Khởi động lại máy tính và khởi động vào USB, sau đó chọn “Try or Install Ubuntu”. Nhấn Ctrl+Alt+T để mở Terminal và gõ lệnh:
sudo fdisk -l

Lệnh này liệt kê tất cả các phân vùng trên ổ cứng của bạn. Kiểm tra cẩn thận đầu ra và xác định những điều sau:
Phân vùng Ubuntu: Tìm phân vùng có loại “Linux”. Đây là nơi hệ thống Ubuntu của bạn được cài đặt. Ghi lại tên của nó, nó sẽ trông giống như /dev/nvme0n1p6
.
Phân vùng hệ thống EFI: Đối với các hệ thống sử dụng UEFI, hãy tìm phân vùng “EFI System”. Phân vùng này lưu trữ bộ tải khởi động cho hệ điều hành của bạn. Hãy nhớ tên của nó, có thể giống như /dev/nvme0n1p1
(xem hình ảnh bên dưới).

Lưu ý quan trọng:
- Ổ NVMe thường có tên bắt đầu bằng
/dev/nvme
, theo sau là một số và sau đó là số phân vùng. Ví dụ:/dev/nvme0n1p6
đề cập đến phân vùng số 6 trên ổ NVMe đầu tiên. - Điều quan trọng là phải xác định đúng tên phân vùng vì bạn sẽ cần chúng trong các bước sau. Kiểm tra kỹ đầu ra của fdisk -l để tránh sai sót.
Bây giờ hãy nhập từng lệnh sau, bạn nên sao chép lệnh và chỉnh sửa tên phân vùng, kiểm tra kỹ trước khi tiến hành xử lý Windows không khởi động được sau khi cài đặt Ubuntu Linux.
sudo mount /dev/nvmeon1p6 /mnt sudo mount /dev/nvmeon1p1 /mnt/boot/efi sudo chroot /mnt grub-install /dev/nvmeOn1p update-grub

Trong đó:
- nvmeOn1p6: Là phân vùng Ubuntu
- nvmeOn1p1: EFI hoặc ESP phân vùng (Đối với máy UEFI)
- nvmeOn1p: Ổ cứng khởi động kép (Dual boot) Ubuntu và Windows
Cần thay đúng các phân vùng nvmeOn1p(xx) mà bạn tìm thấy trong lệnh fdisk -l
, ký hiệu nvmeOn1p
dành cho ổ cứng SSD NVME thế hệ mới
Dành cho ổ SSD nhưng không phải NVME

Sử dụng lệnh fdisk -l
để liệt kê tất cả các phân vùng của ổ cứng. Xem Ubuntu được cài đặt trên phân vùng nào (tên Linux), như trong hình trên là phân vùng sda7
. Với máy UEFI thì bạn cần xem thêm phân vùng EFI nằm ở đâu (hình trên là sda2). Vui lòng ghi lại tên của các phân vùng được đề cập ở trên để nhập chính xác các lệnh được liệt kê bên dưới nhằm sửa lỗi GRUB Ubuntu.
sudo mount /dev/sda7 /mnt for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done sudo chroot /mnt grub-install /dev/sda update-grub
Thay thế các phân vùng “sdxx” thích hợp mà bạn đã phát hiện bằng lệnh “fdisk -l”. Xin lưu ý rằng biểu tượng “sdxx” đại diện cho ổ cứng không phải NVME. Sau đó, khởi động lại máy tính. Nếu lỗi GRUB trong Ubuntu vẫn tồn tại mà bạn vẫn không thể vào Windows, hãy kiểm tra kỹ các bước để đảm bảo tính chính xác của chúng.