Tôi đã mua một máy tính xách tay Sony Vaio S series mới. Nó sử dụng Insyde H2O BIOS EFI và cố gắng cài đặt Linux trên nó đang khiến tôi phát điên.
root@kubuntu:~# parted /dev/sda print
Model: ATA Hitachi HTS72756 (scsi)
Disk /dev/sda: 640GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Number Start End Size File system Name Flags
1 1049kB 274MB 273MB fat32 EFI system partition hidden
2 274MB 20.8GB 20.6GB ntfs Basic data partition hidden, diag
3 20.8GB 21.1GB 273MB fat32 EFI system partition boot
4 21.1GB 21.3GB 134MB Microsoft reserved partition msftres
5 21.3GB 342GB 320GB ntfs Basic data partition
6 342GB 358GB 16.1GB ext4 Basic data partition
7 358GB 374GB 16.1GB ntfs Basic data partition
8 374GB 640GB 266GB ntfs Basic data partition
Điều đáng ngạc nhiên là có 2 phân vùng hệ thống EFI trên đĩa. Phân vùng sda2 là phân vùng phục hồi 20gb, tải các cửa sổ với giao diện khôi phục cơ bản. Điều này có thể truy cập bằng cách nhấn nút "ASSIST" trái ngược với nút nguồn thông thường. Tôi đoán rằng phân vùng hệ thống EFI sda1 (ESP) tải vào phục hồi này.
ESP sda3 có nhiều mục nhập hơn cho Microsoft Windows, thực sự đi vào Windows 7 (như được xác nhận bởi bcdedit.exe trên Windows). Ubuntu được cài đặt trên sda6 và trong khi cài đặt, tôi đã chọn sda3 làm phân vùng khởi động. Trình cài đặt đã tạo chính xác một ứng dụng sda3 / EFI / ubfox / grubx64.efi.
Vấn đề thực sự: đối với cuộc sống của tôi, tôi không thể đặt nó thành mặc định! Tôi đã thử tạo một sda3 / startup.nsh có tên grubx64.efi, nhưng không được - khi khởi động lại, hệ thống vẫn khởi động vào windows. Tôi đã thử sử dụng efibootmgr và điều đó cho thấy nó hoạt động:
root@kubuntu:~# efibootmgr
BootCurrent: 0000
BootOrder: 0000,0001
Boot0000* EFI USB Device
Boot0001* Windows Boot Manager
root@kubuntu:~# efibootmgr --create --gpt --disk /dev/sda --part 3 --write-signature --label "GRUB2" --loader "\\EFI\\ubuntu\\grubx64.efi"
BootCurrent: 0000
BootOrder: 0002,0000,0001
Boot0000* EFI USB Device
Boot0001* Windows Boot Manager
Boot0002* GRUB2
root@kubuntu:~# efibootmgr
BootCurrent: 0000
BootOrder: 0002,0000,0001
Boot0000* EFI USB Device
Boot0001* Windows Boot Manager
Boot0002* GRUB2
Tuy nhiên, khi khởi động lại, như bạn đoán, máy đã khởi động lại trực tiếp vào Windows.
Điều duy nhất tôi có thể nghĩ là:
- Phân vùng sda1 đang được sử dụng
- Ghi đè /EFI/Boot/bootx64.efi và /EFI/Microsoft/Boot/bootmgfw.efi với grubx64.efi [nhưng điều này có vẻ thực sự triệt để].
Bất cứ ai có thể xin vui lòng giúp tôi ra? Cảm ơn - bất kỳ trợ giúp đều được đánh giá cao, vì vấn đề này đang khiến tôi phát điên!