Windows 8 xóa Grub làm trình quản lý khởi động mặc định


37

Tôi có một dòng Sony VAIO S được cài đặt sẵn Windows 8 và tôi đã cài đặt Ubuntu 12.10 trên một phân vùng mới. Khi PC khởi động Grub được hiển thị và tôi có thể chọn giữa Windows 8 (ban đầu không hoạt động, phải thay đổi cài đặt Grub) và Ubuntu 12.10. Khi tôi chọn Ubuntu 12.10, mọi thứ đều ổn, nhưng khi tôi sử dụng Windows 8 và tôi khởi động lại Grub sẽ không hiển thị nữa (Windows 8 khởi động ngay lập tức).

Tôi đã khởi động Ubuntu 12.10 LiveUSB, đã sử dụng efibootmgrvà phát hiện ra rằng Windows 8 (mỗi lần khởi động) thay đổi bộ tải khởi động mặc định EFI từ Grub sang Windows Boot Manager.

Làm cách nào để thay đổi điều này trong Windows 8? Tôi đã đọc một vài thứ về bcdeditnó, nhưng nó không hoạt động hoặc tôi không biết cách sử dụng nó ...


Tôi nghĩ rằng bạn đang tự mình giải quyết vấn đề này. Chỉ cần tiếp tục đào [;
Dưa

3
Đúng, tôi chỉ cần một điều nhỏ sau đó tôi sẽ viết một hướng dẫn cách thực hiện. Microsoft hút tại sao họ phải thay đổi trình quản lý khởi động mặc định? Theo tôi, đó là để ngăn mọi người sử dụng bất cứ thứ gì khác ngoài các sản phẩm của Microsoft.
Kouros

Naaah, tôi nghĩ rằng họ không quan tâm điều đó. Dù sao, hy vọng sẽ thấy hướng dẫn của bạn sớm.
Dưa

Tôi chỉ hỏi dịch vụ khách hàng của Microsoft về vấn đề này và họ đã hướng dẫn tôi đến diễn đàn của họ. Trên các diễn đàn, một fella nói với tôi rằng các cửa sổ đặt nó ở vị trí đầu tiên. Giai đoạn. Nếu tôi không thích nó, chỉ cần tạo một tệp bó trong các cửa sổ chạy ở mỗi đầu khởi động bcdedt-s các cấu hình uefi của windows để khởi động grub lần sau. Tốt đẹp.
netom

Hệ thống tệp GPT chứa một bản sao của các thành phần khởi động. Có vẻ như Windows chỉ đang kiểm tra tổng kiểm tra MBR và 'sửa chữa' nó bằng cách ghi đè lên nó bằng dữ liệu MBR bảo vệ ban đầu. Một thực hành bảo mật tốt nhất. vi.wikipedia.org/wiki/GUID_Partition_Table

Câu trả lời:


33

Tôi không thể hứa, nhưng hãy thử điều này từ cửa sổ Windows Command Prompt được khởi chạy với đặc quyền của Quản trị viên:

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

Lưu ý rằng {bootmgr}nên được gõ chính xác; Đó không phải là một biến. Nếu điều đó không hiệu quả, bạn có thể thử điều này trong Linux:

  1. Sao lưu toàn bộ nội dung của /boot/efi(Phân vùng hệ thống EFI hoặc ESP) của bạn.
  2. Loại sudo mv /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi /boot/efi/EFI/Microsoft.
  3. Loại cp /boot/efi/EFI/ubuntu/grubx64.efi /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi.
  4. Tạo một /etc/grub.d/40_custommục nhập tệp mới đề cập đến EFI/Microsoft/bootmgfw.efi. Mô hình nó sau khi mục hiện có trong /boot/grub/grub.cfgđó đề cập đến EFI/Microsoft/Boot/bootmgfw.efi; chỉ cần xóa Bootkhỏi đường dẫn khởi động và đặt tên mới.
  5. sudo update-grubđể cài đặt các entry GRUB mới.

Khi bạn khởi động lại, GRUB sẽ xuất hiện. Vấn đề là nếu / khi Windows quyết định cài đặt lại bộ tải khởi động, hệ thống sẽ bắt đầu khởi động lại thẳng vào Windows.

Đối với bước 4, bạn có thể:

  1. Sao chép 40_custommục nhập bắt đầu bằng menuentry 'Windows ...'nằm giữa một tập hợp ### BEGIN <path> ###### END <path> ###thẻ / nhận xét. Đây là mục có đường dẫn chứa Boot.
  2. Tạo một mục mới trong tập tin /etc/grub.d/40_custombằng cách thêm các bản sao menuentry.
  3. Thay đổi tên của mục nhập mới (bản gốc phải là Windows Boot Managerhoặc một cái gì đó tương tự).
  4. Thay đổi đường dẫn từ EFI/Microsoft/Boot/bootmgfw.efiđến EFI/Microsoft/bootmgfw.efi.

CHỈNH SỬA:

Kể từ khi viết câu trả lời này, tôi đã biết đến một công cụ Windows của bên thứ ba có tên EasyUEFI, đây là một công cụ GUI dễ dàng hơn so bcdeditvới việc điều chỉnh thứ tự khởi động EFI từ Windows. Tuy nhiên, tôi không biết liệu EasyUEFI có ngăn Windows thực hiện các thay đổi hay không, nếu Windows có thói quen tự đặt nó làm mặc định cho mỗi lần khởi động. Do đó, bcdeditcó thể vẫn được yêu cầu, nhưng EasyUEFI chắc chắn cũng đáng để thử.


5
Bạn có xem xét giúp tôi / chúng tôi một ân huệ và cung cấp cho chúng tôi lời nhắc thiết bị đầu cuối cụ thể cho bước 4 không? Tôi đã làm mọi thứ khác ngoại trừ bước đó vì tôi không chắc chắn chính xác những lệnh nào cần nhập. Grub hiện hoạt động, nhưng nó sẽ không cho phép tôi khởi động vào Windows. Ôi!

vui lòng xây dựng bước 4
ji-ruh

\EFI\ubuntu\shimx64.efitìm thấy trên Ubuntu 18.0.4 LTS
CSGO

2

Làm cách nào để thay đổi điều này trong Windows 8? Tôi đã đọc một cái gì đó về bcdedit, nhưng nó không hoạt động hoặc tôi> không biết cách sử dụng nó ...

Vấn đề tương tự ở đây, cuối cùng tôi đã phát hiện ra rằng bản cập nhật W8.1 mới nhất này đã làm được điều đó và tôi biết rằng vì tôi mới cập nhật hôm nay và chưa được 33 ngày nên HP Pavilion của tôi đã nói với tôi ..

Dù sao, đây là những gì đã làm việc:

Tôi đã theo dõi video Utube này để dừng 'Tự động [Khởi động] Sửa chữa': http://www.youtube.com/watch?v=VRQYmtysFkg

Sau đó, thay đổi bootmgr bằng cách sử dụng giải pháp trên được cung cấp bởi Rod: bcdedit / set {bootmgr} path \ EFI \ ub Ubuntu \ grubx64.efi

Chơi lô tô!

btw: Boot Repair từ LiveUsb của tôi đã làm nada nhưng gây ra một chớp nhoáng trong khi W8 sửa chữa mục khởi động của nó ..


1
Thật tuyệt vời khi bạn đã quyết định giúp đỡ! Nhưng câu trả lời của bạn không cung cấp bất kỳ ngữ cảnh nào cho liên kết (video) mà bạn đã đăng và chúng tôi ở đây tại Ask Ubuntu muốn nó . Chúng tôi muốn các câu trả lời ở đây để cung cấp bối cảnh vì các liên kết (video) có thể bị chết sớm hay muộn.
VenkiPhy6

0
  1. chạy Boot-RepairRecommended Repairtừ LiveCD, sau đó khởi động lại máy tính.
  2. nếu vẫn không tốt, hãy chạy Boot-Repair -> Tùy chọn nâng cao -> bỏ chọn " Backup and rename EFI files" -> tick " Restore EFI backups" -> Áp dụng

2
Các vấn đề về Nop đến từ Windows 8
Kouros 7/1/13

0

Tôi chỉ có một phần của câu trả lời: một giải pháp hoạt động gần như ổn cho đến khi tôi tìm ra cách khắc phục vĩnh viễn.

Có cùng một vấn đề: thinkpad edge xuất xưởng với windows 8; đã cài đặt Ubuntu dưới dạng khởi động kép và hầu như quên mất các cửa sổ cho đến khi 8.1 xuất hiện và tôi nghĩ tôi nên dùng thử trước khi xóa các cửa sổ cho tốt. Vì vậy, sau khi cài đặt 8.1, grub không xuất hiện nữa khi khởi động NHƯNG khi tôi nhấn F12 thì một menu khác xuất hiện cho phép tôi khởi động Ubuntu. Đó là cách tôi khởi động máy tính của mình bây giờ: nhưng mỗi lần tôi quên nhấn F12 và nó vẫn khởi động Windows (điều mà tôi gần như không bao giờ muốn).

Vì vậy, nhấn F12 sẽ giúp ích trong một thời gian (không chắc điều này có hoạt động trong trường hợp của bạn không nhưng nó có thể đáng để thử). Tôi biết có hướng dẫn về cách khôi phục grub nhưng tôi sẽ không làm gì trước khi tôi hoàn toàn chắc chắn.


0

Bằng cách nào đó Windows 8.1 đang chặn hoàn toàn Ubuntu là một bản sao của câu hỏi này. Tôi không nghĩ vậy nhưng tôi chỉ có thể bình luận ở đây. Tôi đã trải qua các triệu chứng tương tự như Windows 8.1 đang chặn hoàn toàn Ubuntu .

Trong trường hợp của tôi, giải pháp là nhấn F2 trong khi khởi động và thay đổi thứ tự khởi động để ubfox đứng đầu danh sách. Vì một số lý do sau khi tôi nâng cấp máy tính xách tay dualboot (Win / ub Ubuntu) của mình từ Win 8 lên Win 8.1, 'windows' xuất hiện ở đầu danh sách khởi động trước ubfox, DVD, USB, v.v. và máy tính xách tay của tôi đã khởi động thẳng vào Windows 8.1 mà không cho tôi bất kỳ sự lựa chọn.

Nhấn F2 trong khi khởi động và làm cho Ubuntu trở thành danh sách hàng đầu đã giải quyết vấn đề của tôi và làm cho Ubuntu có thể truy cập lại được (cùng với Windows 8.1) sau khi tôi nâng cấp lên Windows 8.1 từ cửa hàng Microsoft.


0

Với Windows 10 và Ubuntu 14.04 trên Acer E17, tôi gặp vấn đề tương tự (Windows Boot Manager đã xử lý, không thể truy cập Grub khi khởi động). Tôi đã làm theo hướng dẫn được cung cấp bởi Rod Smith ở trên, nhưng không có may mắn. (hướng dẫn rất hay, btw)

Tôi đã tìm thấy một cài đặt trong BIOS theo thứ tự khởi động liệt kê Trình quản lý khởi động Windows trước và ổ cứng thứ hai. Tôi đổi chúng, lưu và thoát / khởi động lại, và Grub xuất hiện ngay lập tức.

Tôi đã đọc ở một nơi khác rằng một số BIOS có tùy chọn khởi động nhanh mà bạn cũng có thể cần phải tắt, nhưng tôi không có điều đó.


0

Trên một số máy, Cài đặt BIOS kiểm soát mức độ ưu tiên khởi động của các tệp * .efi trong phân vùng UEFI. Tôi đã tìm thấy máy tính xách tay HP Pavilion 15-f039wm của mình, mặc dù rõ ràng là nó có tính năng đó. Đặt nó trong BIOS đập trực tiếp với các tệp .efi và sử dụng bcdedit.

Đối với máy đó, tôi nhấn F10 để vào thiết lập BIOS, sau đó trỏ đến và chọn "Tùy chọn khởi động". Có các tùy chọn cho các ưu tiên khởi động UEFI có thể được sắp xếp lại, một trong số đó là "Trình quản lý khởi động hệ điều hành". Tuy nhiên, tùy chọn đó có một tính năng bổ sung mà nếu tôi làm nổi bật nó và nhấn Enter, sẽ có một cửa sổ bật lên để sắp xếp lại các ưu tiên cho "ub Ubuntu" và "Windows Boot Manager" trong "Trình quản lý khởi động hệ điều hành". Tôi đặt "ubfox" lên hàng đầu với F5 / F6, lưu nội dung của cửa sổ bật lên bằng F10, sau đó nhấn F10 lần nữa để lưu và thoát khỏi Cài đặt BIOS.

Bây giờ không có sự can thiệp của mỗi lần khởi động, tôi nhận được menu Grub mặc định khởi động Ubuntu. Tôi vẫn có thể khởi động Windows thông qua menu Grub hoặc khởi động an toàn bằng cách can thiệp với F9 để nhận menu UEFI Boot Manager.

Tính năng BIOS đó giúp giải thích lý do tại sao có vẻ như mã UEFI đã ghi đè các thay đổi đối với BootOrder mà tôi đã thực hiện với efibootmgr trong Ubuntu.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.