Cấu hình Dual Boot, Windows 7 và Ubuntu 12.04 có hoặc không có EFI


9

Tôi mới cài đặt Ubuntu 12.04 trên máy tính xách tay chạy Windows 7 nhưng tôi không thể khởi động từ Ubuntu.

Đầu tiên, trong quá trình cài đặt, tôi đã tạo các phân vùng này (có thể quá nhiều):

/dev/sda1 FAT32 SYSTEM 200Mb boot (EFI boot, i guess)
/dev/sda2 unknown file system 128 Mb msftres (Windows Boot Manager)
/dev/sda3 NTFS OS 100 Gb (Windows 7)
/dev/sda4 NTFS DATOS 315 Gb (Data partition)
/dev/sda5 ext4 28 Gb (/home)
/dev/sda8 unknown file system 1 Gb biog_grub (i'm not very sure why i made this one)
/dev/sda6 ext4 17 Gb (/ Ubuntu 12.03 installed withou errors aparently)
/dev/sda7 linex-swap 2 GB (swap)

Tôi có thể khởi động từ Windows một cách hoàn hảo. Trên thực tế, tôi đã cố gắng định cấu hình Windows Boot Manager bằng EasyBCD nhưng nó không nhận ra bất kỳ mục khởi động nào. Dù sao, tôi đã thêm một Entry Ubuntu và nó tự động cấu hình nó.

Bây giờ tôi có các mục khởi động Windows 7 có vẻ như hoạt động và Ubuntu 12.04 có thông báo "Không tìm thấy ứng dụng".

Tôi đã bắt đầu lại từ USB với Ubuntu và cố gắng sửa GRUB từ dòng lệnh và sửa chữa khởi động. Ko có kết quả.

Theo như tôi hiểu thì tôi phải nói với Windows Boot Manager nơi trình tải khởi động Ubuntu của tôi.

Vì vậy, tôi có hai vấn đề:

  1. Trên thực tế, tôi không biết trình tải khởi động Ubuntu của mình, GRUB hoặc GRUB2 hay bất cứ thứ gì, ở đâu.
  2. Tôi không biết cách đặt mục nhập Ubuntu của mình trong Windows Boot Manager. Tôi đoán bằng cách sử dụng BCDedit.exeEasyBCD đã không hiển thị cho tôi các mục. Dù sao, tôi không biết nên sử dụng thông số nào.

Tôi đã đọc một số bài viết về nó nhưng tôi không tìm thấy bất cứ điều gì hữu ích.


Bạn không nhất thiết phải khởi động kép Windows và Linux trên UEFI. Thực hiện theo hướng dẫn này để chuyển đổi UEFI của bạn sang MBR-BIOS mà không mất dữ liệu. Hoặc đọc về nó ở đây
Nehal J Wani

Câu trả lời:


4

Bố cục phân vùng của bạn trông có vẻ kỳ lạ, nhưng một lần nữa đây là cách các nhà sản xuất thực hiện cài đặt OEM của họ.

Nếu đây là hệ thống UEFI, thì cài đặt lại sẽ là cách nhanh nhất và đơn giản nhất để cài đặt hoạt động. Tôi khuyên bạn nên xóa phân vùng sda5 qua sda7, vì chúng dường như được tạo bởi bạn. Sau đó cài đặt Ubuntu từ ubfox-12.04-desktop-amd64.iso trong UEFI mode(khi chọn khởi động từ CD khi khởi động, cần có hai tùy chọn để khởi động từ CD một với UEFI và một không có) để đảm bảo rằng bạn đang cài đặt với hỗ trợ UEFI kích hoạt. Bố cục phân vùng với phân vùng Ubuntu và phân vùng nhà riêng biệt là một lựa chọn tốt. Để sử dụng tạm dừng vào ổ cứng (ngủ đông), bạn nên chọn ít nhất kích thước của RAM là kích thước của phân vùng trao đổi. Có một bước bổ sung sẽ được thực hiện để kích hoạt lại chế độ ngủ đông trong 12.04. Sau khi cài đặt xong, bạn nên cài đặt Ubuntu với gói grub-efi-amd64 trên ổ cứng. Trình cài đặt phải nhận ra phân vùng hệ thống UEFI chính xác (có mã phân vùng GPT cụ thể cho phân vùng hệ thống UEFI ), đặt grub-efi-stub vào đó và đăng ký nó trong các biến khởi động UEFI.

Cuối cùng, bạn nên có ít nhất một mục cho mỗi Windows và Ubuntu trong lựa chọn khởi động UEFI của bạn. Nếu bạn không có mục liên quan đến Windows ở đó, thì đây có thể không phải là hệ thống UEFI và bạn không nên thử giải pháp được đề xuất của tôi (bạn sẽ không thể khởi động CD ở chế độ UEFI). Khởi động kép phải hoạt động thông qua cơ chế tải chuỗi GRUB , do đó, đặt Ubuntu qua UEFI làm tùy chọn khởi động mặc định sẽ hoạt động giống như khởi động kép hoạt động trong quá khứ với GRUB.


Bạn đa đung. Khi tôi tạo một phân vùng cho grub, trình cài đặt Ubuntu đã bỏ qua phân vùng EFI của tôi. Sau khi xóa phân vùng đó và cài đặt lại, nó hoạt động bình thường. ;) Cảm ơn rât nhiều.
Keroak

10

Đầu tiên, bảng phân vùng của bạn rõ ràng là Bảng phân vùng GUID (GPT). Kể từ khi Windows sẽ khởi động từ đĩa GPT chỉ nếu máy tính sử dụng một Extensible Firmware Interface (EFI) chứ không phải là cũ Basic Input / Output System (BIOS), thì rõ ràng rằng bạn đang khởi động ở chế độ EFI. Đây là một chi tiết quan trọng, vì các giải pháp BIOS truyền thống dường như không hoạt động trên hệ thống EFI.

Không rõ từ mô tả của bạn chính xác những gì khởi động. Tôi đoán tốt nhất là trình tải khởi động Windows đang khởi động và bạn đã sử dụng EasyBCD để tạo một mục Ubuntu không hoạt động. Điều này hầu như không đáng ngạc nhiên; Lần cuối cùng tôi kiểm tra, bộ tải khởi động Windows EFI không thể chuyển hướng quá trình khởi động sang bộ tải khởi động khác, vì vậy các mục không phải Windows của EasyBCD sẽ vô dụng với bạn. Nếu tôi hiểu sai những gì đang xảy ra và bạn thực sự đang thấy một menu khởi động GRUB có thể khởi động Windows nhưng không phải Linux, thì hãy giải thích.

Nếu cách hiểu của tôi cho đến nay là chính xác, bạn có thể sử dụng menu khởi động phần sụn của bạn để chọn GRUB thay vì Windows và sử dụng nó để khởi động vào Linux. Nếu trình quản lý khởi động phần sụn của bạn đủ tốt, đây thậm chí có thể là một giải pháp dài hạn có thể chấp nhận được. Thật không may, các trình quản lý khởi động chương trình cơ sở EFI cực kỳ thay đổi về chất lượng và nhiều trong số đó là kém. Nếu bạn không thể tìm thấy một menu khởi động trong phần sụn của mình hoặc nếu sử dụng nó lúng túng, bạn có hai tùy chọn chính:

  • Bạn có thể cấu hình lại thiết lập khởi động của máy tính để biến GRUB 2 thành trình tải khởi động mặc định và cấu hình lại GRUB để bao gồm một mục nhập cho Windows. Điều này sẽ đòi hỏi phải đổi tên các tệp của trình tải khởi động và / hoặc sử dụng một tiện ích như "efibootmgr" của Linux để điều chỉnh danh sách trình tải khởi động trong NVRAM của máy tính.
  • Bạn có thể thêm trình quản lý khởi động của bên thứ ba, chẳng hạn như rEFIt hoặc fork mới hơn rEFInd của nó , để kiểm soát lựa chọn khởi động Windows so với Linux. Trang web rEFInd bao gồm các hướng dẫn cài đặt chi tiết. (Lưu ý rằng tôi là người đã chia rEFIt thành rEFInd.)

Xin lưu ý rằng quy trình khởi động EFI bao gồm các tệp được lưu trữ trên một phân vùng được gọi là Phân vùng hệ thống EFI (ESP), đó là / dev / sda1 trên máy tính của bạn. Các tệp bộ tải khởi động thường nằm trong các thư mục con của thư mục EFI trên phân vùng đó, như trong EFI / Microsoft hoặc EFI / ubfox. NVRAM giữ một danh sách các bộ tải khởi động và thứ tự mà phần sụn sẽ cố gắng khởi chạy chúng. Quản lý bộ tải khởi động liên quan đến việc thêm, xóa hoặc di chuyển các tệp bộ tải khởi động và chỉnh sửa các mục NVRAM. Trong một số trường hợp, trình tải khởi động mặc định (EFI / Boot / bootx64.efi; mặc dù một số triển khai cũng hỗ trợ EFI / Microsoft / Boot / bootmgfw.efi làm mặc định) được tải nếu các mục NVRAM trống hoặc trỏ đến bộ tải khởi động không hợp lệ. Để biết thêm thông tin về chủ đề này, cũng như thông tin về bộ tải khởi động EFI của Linux, hãy xem trang Web của tôi về chủ đề này.


Cảm ơn bạn vì câu trả lời. Trên thực tế, tôi đã chọn thử cài đặt lại Ubuntu theo lời khuyên của LiveWireBT. Những gì tôi đã làm sai là tạo một phân vùng grub mới trên bản cài đặt trước. Vì vậy, trình cài đặt đặt GRUB vào phân vùng đó thay vào phân vùng EFI. Tôi không cần thực hiện bất kỳ thay đổi nào sau khi cài đặt lại nhưng lời giải thích của bạn và trang web của bạn rất hữu ích để hiểu những gì tôi đang làm.
Keroak

1

Có lẽ menu GRUB không được cài đặt đúng. Cố gắng sửa chữa nó với đĩa CD sửa chữa grub . Khởi động với đĩa CD này và để tự động sửa chữa hệ thống của bạn. Bạn có thể tìm thêm thông tin ở đây .


Tôi cũng chạy các ứng dụng này nhưng tôi không nhận được kết quả nào.
Keroak

Trong trường hợp này tôi nên làm theo lời khuyên của Rod Smith. Nó đường may chính xác.
Julien Chau

1

Vì Windows đang sử dụng EFI, bạn cần:

  1. cài đặt grub-efi . Điều này có thể được thực hiện bằng cách đánh dấu vào tùy chọn "Riêng / efi" của Boot-Repair .
  2. sau đó thiết lập BIOS của bạn để khởi động tệp grub * .efi trong phân vùng EFI.

Làm thế nào để bạn làm bước 2?
barro32

Đối với bước 2, một số người dùng chỉ cần làm cho BIOS của họ khởi động đĩa cứng ở chế độ UEFI. Nhưng có thể có những tình huống khác vì phần cứng có thể thay đổi từ PC này sang PC khác.
LovinBfox

0

Có thể bạn đã cố nâng cấp trong khi cài đặt, đó là lý do tại sao nó tạo thêm dung lượng 1gb. Bạn có thể dễ dàng sử dụng khởi động kép bằng cách sử dụng Ubuntu mà không cần cài đặt bất cứ thứ gì. Tôi đang nói về grub2 trong ubfox được cài đặt mặc định. Bạn chỉ cần một cd trực tiếp cấu hình khởi động kép. Đây là ví dụ rất tốt về phục hồi grub2.


Cảm ơn, nhưng tôi đã làm điều đó, tôi sử dụng cả grub và grub 2 không thành công.
Keroak
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.