Manjaro Difference between revisions of "UEFI - Install Guide"

Difference between revisions of "UEFI - Install Guide"

From Manjaro
m (Update package name)
m (format and :)
 
(17 intermediate revisions by 5 users not shown)
Line 1: Line 1:
= Introduction =
<languages/>
__TOC__
<translate>
= Introduction = <!--T:1-->


  UEFI is the commonly agreed on name for both the EFI & UEFI  
  <!--T:2-->
UEFI is the commonly agreed on name for both the EFI & UEFI  
  standards which merged. It does not include the old EFI v1,  
  standards which merged. It does not include the old EFI v1,  
  or Apple's own non-standard version of EFI.
  or Apple's own non-standard version of EFI.


= Target computer =
= Target computer = <!--T:3-->


<!--T:4-->
The following guide aims to install Manjaro on a machine with UEFI enabled, Secure boot disabled, and using GUID Partition Table (GPT) disk(s).
The following guide aims to install Manjaro on a machine with UEFI enabled, Secure boot disabled, and using GUID Partition Table (GPT) disk(s).


<!--T:5-->
For multi-boot, the EFI system partition which is already present (or will be created), can usually be shared amongst multiple Linux installs.
For multi-boot, the EFI system partition which is already present (or will be created), can usually be shared amongst multiple Linux installs.


= The steps =
= The steps = <!--T:6-->


== Common ==
== Common == <!--T:7-->


* 1. Download your preferred Manjaro version (XFCE, Openbox, Cinnamon, KDE, ...), must be 64-bits.
<!--T:8-->
* 1. Download your preferred Manjaro version: XFCE, Gnome, KDE, Budgie, Cinnamon, I3, Sway or Mate.


* 2. Burn the .iso to USB or DVD. See [[Burn_an_ISO_File]] for more details.
<!--T:9-->
* 2. Burn the .iso to USB or DVD. See [[Special:MyLanguage/Burn_an_ISO_File|Burn an ISO File]] for more details.


<!--T:10-->
* 3. Check your BIOS, UEFI must be ON and Secure boot OFF.
* 3. Check your BIOS, UEFI must be ON and Secure boot OFF.


<!--T:11-->
* 4. Boot with your USB or DVD & use the rEFInd - Main Menu... to choose which GPU drivers you want to have installed, the open-source or proprietary:
* 4. Boot with your USB or DVD & use the rEFInd - Main Menu... to choose which GPU drivers you want to have installed, the open-source or proprietary:


  * Boot Manjaro Linux ... (default) -  
  <!--T:12-->
* Boot with open source drivers -  
   This chooses the ''open-source - free'' GPU drivers.
   This chooses the ''open-source - free'' GPU drivers.
  * Boot Manjaro Linux ... (nonfree) -  
  * Boot with proprietary drivers -  
   This option chooses the '''proprietary''' GPU drivers
   This option chooses the '''proprietary''' GPU drivers
   from Nvidia or ATI.
   from Nvidia or ATI.


=== Graphical Installer ===
=== Graphical Installer === <!--T:13-->


{{Tip|Since Manjaro-0.8.9, UEFI support is also provided in the Graphical Installer, so one can simply try the Graphical installer and skip the instructions given below for the CLI installer.}}
<!--T:14-->
{{BoxSuccess|tip|Since Manjaro-0.8.9, UEFI support is also provided in the Graphical Installer, so one can simply try the Graphical installer and skip the instructions given below for the CLI installer.}}


<!--T:15-->
To use the Graphical Installer select the '''Install Manjaro''' option from the Manjaro Welcome screen or from the desktop.
To use the Graphical Installer select the '''Install Manjaro''' option from the Manjaro Welcome screen or from the desktop.


<!--T:16-->
For the ESP (EFI system partition) which will store the EFI Grub binary, a 512mb partition of type fat32 can be created in the partitioning step, and mounted to ''/boot/efi''
For the ESP (EFI system partition) which will store the EFI Grub binary, a 512mb partition of type fat32 can be created in the partitioning step, and mounted to ''/boot/efi''


<!--T:17-->
If you are dual booting then an EFI partition from a previous install can also be used.
If you are dual booting then an EFI partition from a previous install can also be used.


=== CLI installer ===
=== CLI installer === <!--T:18-->


<!--T:19-->
* 5-b. Open terminal & enter:
* 5-b. Open terminal & enter:


$ sudo setup
<!--T:20-->
{{UserCmd|command=sudo setup}}


<!--T:21-->
* 6. Now, we are in the CLI Installer.  
* 6. Now, we are in the CLI Installer.  


<!--T:22-->
* 7. ''Choose 1.'' Set date and time - an easy intuitive configuration.
* 7. ''Choose 1.'' Set date and time - an easy intuitive configuration.


==== Disk preparation ====
==== Disk preparation ==== <!--T:23-->


{{Tip|If your hard disk is already partitioned the way you want, then this step can be skipped.}}
<!--T:24-->
{{BoxSuccess|tip|If your hard disk is already partitioned the way you want, then this step can be skipped.}}


  * When you ''click 2.'' Partition Hard Drives,  
  <!--T:25-->
* When you ''click 2.'' Partition Hard Drives,  
   you get a dialog saying "Do you want to use GUID
   you get a dialog saying "Do you want to use GUID
   Partition Table (GPT)", '''choose Yes'''.
   Partition Table (GPT)", '''choose Yes'''.
  * Partition your disk(s) as you want (Instructions on
  * Partition your disk(s) as you want (Instructions on
   manually partitioning are beyond the scope of this
   manually partitioning are beyond the scope of this
   guide, some deatils are available [[Cfdisk_Basic_Partitioning_Scenarios|here]]).
   guide, some deatils are available [[Special:MyLanguage/Cfdisk_Basic_Partitioning_Scenarios|here]]).
  * ''Important Step:'' Create a 50~250MB EFI Partition,
  * ''Important Step:'' Create a 50~250MB EFI Partition,
   mine is 100MB (code: ef00)
   mine is 100MB (code: ef00)


==== Setting filesystem mount points ====
==== Setting filesystem mount points ==== <!--T:26-->


  * After the partitioning is done, go to ''4. Set Filesystem''
  <!--T:27-->
* After the partitioning is done, go to ''4. Set Filesystem''
   ''Mountpoints.''
   ''Mountpoints.''
  * '''Important Step:''' Format the EFI Partition you
  * '''Important Step:''' Format the EFI Partition you
   created as '''VFAT''' and mount on /boot/efi
   created as '''VFAT''' and mount on /boot/efi


{{Note|If you are re-using your EFI partition (that was created by Windows previously (or any other OS), then there is no need to format. Formatting will wipe the previous bootloader. Only mounting the EFI partition as '''/boot/efi''' is required in that case.}}
<!--T:28-->
{{BoxInfo|note|If you are re-using your EFI partition (that was created by Windows previously (or any other OS), then there is no need to format. Formatting will wipe the previous bootloader. Only mounting the EFI partition as '''/boot/efi''' is required in that case.}}


==== Installation ====
==== Installation ==== <!--T:29-->


<!--T:30-->
* 9. ''Choose 3.'' Install system and wait...
* 9. ''Choose 3.'' Install system and wait...


<!--T:31-->
* 10. Now, go to ''4. Configure System'' and configure it the way you like (username, password, mirrorlist, system-name, ...).
* 10. Now, go to ''4. Configure System'' and configure it the way you like (username, password, mirrorlist, system-name, ...).


<!--T:32-->
* 11. When you are done, go to ''5. Install bootloader.'' Choose EFI_x86_64 > GRUB (2) UEFI x86_64,  ''DON'T select BIOS GRUB.''
* 11. When you are done, go to ''5. Install bootloader.'' Choose EFI_x86_64 > GRUB (2) UEFI x86_64,  ''DON'T select BIOS GRUB.''


<!--T:33-->
* 11.1 It will ask to format the EFI Partition you created earlier as FAT32, yes can be chosen.
* 11.1 It will ask to format the EFI Partition you created earlier as FAT32, yes can be chosen.
{{Note|Formatting not required if reusing previous EFI partition.}}
{{BoxInfo|note|Formatting not required if reusing previous EFI partition.}}


<!--T:34-->
* 12. If it gives a error in the final stages saying "efivars kernel module was not properly loaded", don't worry, the system will work fine!
* 12. If it gives a error in the final stages saying "efivars kernel module was not properly loaded", don't worry, the system will work fine!


<!--T:35-->
* 13. If the installer asks you about copying grub/efi files to another folder in order to maintain compatibility in some systems, choose Yes.
* 13. If the installer asks you about copying grub/efi files to another folder in order to maintain compatibility in some systems, choose Yes.


<!--T:36-->
* 14. ''Click 6.'' Quit
* 14. ''Click 6.'' Quit


<!--T:37-->
* 15. Shutdown, remove the DVD or USB, and boot. Your system should appear now!
* 15. Shutdown, remove the DVD or USB, and boot. Your system should appear now!


= Switching from BIOS to UEFI =
= Switching from BIOS to UEFI = <!--T:38-->


For UEFI install the Disk partition table should be of type '''GPT (Guid Partition Table).'''
<!--T:39-->
1) You need to create an ''ESP (EFI System Partition)''.


If you dont want to format your hard disk to GPT, but instead want to migrate from MBR to GPT while trying to save your data, can have a look at  
<!--T:40-->
http://www.rodsbooks.com/gdisk/mbr2gpt.html
It is a FAT32 partition which has the .efi files for booting, which you can create using gparted or gdisk. (Size at least 200-300 MiB.) Ensure the flags `boot` and `esp` are set on this partition.


<!--T:41-->
You should also install/check whether following packages are present:


1) You would need to create an ''ESP (EFI System Partition)''.
<!--T:42-->
 
1. efibootmgr
It is a FAT32 partition which has the .efi files for booting, which you can create using Gparted or gdisk. (Size 200-512 MiB).
 
You would also need to install/check whether following packages are present-
 
1. efibootmgr
  2. dosfstools
  2. dosfstools
  3. grub
  3. grub


[[Pacman_Overview | (How to install packages)]]
<!--T:43-->
[[Special:MyLanguage/Pacman_Overview|(How to install packages)]]




<!--T:44-->
2) Create the ''/boot/efi'' directory
2) Create the ''/boot/efi'' directory
sudo mkdir /boot/efi
{{UserCmd|command=sudo mkdir /boot/efi}}




<!--T:45-->
3.) Mount the EFI partition as ''/boot/efi''
3.) Mount the EFI partition as ''/boot/efi''
  sudo mount /dev/sdXY /boot/efi
  sudo mount /dev/sdXY /boot/efi
Line 120: Line 152:
Y = Partition number of the EFI partition = 1,2,3,4...
Y = Partition number of the EFI partition = 1,2,3,4...


<!--T:46-->
Example - ''/dev/sda4''
Example - ''/dev/sda4''




<!--T:47-->
4.) Install Grub according to UEFI
4.) Install Grub according to UEFI
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck
{{UserCmd|command=sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck}}


<!--T:48-->
5.) Update Grub configuration file.
5.) Update Grub configuration file.
sudo update-grub
{{UserCmd|command=sudo update-grub}}


'''Note-'''
<!--T:49-->
If you get an error like
{{BoxInfo|note|If you get an error like:}}
  path '/boot/grub' is not readable by Grub on boot. Installation is impossible. Aborting
  path '/boot/grub' is not readable by Grub on boot. Installation is impossible. Aborting


Then you will need to [https://wiki.archlinux.org/index.php/Change_Root chroot] as described [[Restore_the_GRUB_Bootloader#Identify_and_Prepare_the_Installed_Partition.28s.29|here]], and then perform Step 5 again.
<!--T:50-->
Then you will need to [https://wiki.archlinux.org/index.php/Change_Root chroot] as described [[Special:MyLanguage/Restore_the_GRUB_Bootloader#Identify_and_Prepare_the_Installed_Partition.28s.29|here]], and then perform Step 5 again.


If you get the following error :  
<!--T:51-->
{{BoxInfo|note|If you get the following error:


  EFI variables are not supported on this system.
  <!--T:52-->
EFI variables are not supported on this system.


<!--T:53-->
then you could load the '''efivarfs''' module :
then you could load the '''efivarfs''' module :
sudo modprobe efivarfs
{{UserCmd|command=sudo modprobe efivarfs}}
 
}}


<!--T:54-->
'''See also'''
'''See also'''


[[Restore the GRUB Bootloader]]
<!--T:55-->
[[Special:MyLanguage/Restore the GRUB Bootloader|Restore the GRUB Bootloader]]


[https://forum.manjaro.org/t/using-livecd-v17-0-1-as-grub-to-boot-os-with-broken-bootloader/24916]
<!--T:56-->
[https://forum.manjaro.org/t/using-livecd-v17-0-1-as-grub-to-boot-os-with-broken-bootloader/24916 Related Forum topic]


= Dual booting with Windows =
= Dual booting with Windows = <!--T:57-->


{{tip|Some manufactures EFI implementations cause GRUB not to be showed in the Boot Menu, or even if its there it can't be made default.}}
<!--T:58-->
{{BoxSuccess|tip|Some manufactures EFI implementations cause GRUB not to be showed in the Boot Menu, or even if its there it can't be made default.}}




<!--T:59-->
'''In such cases ''[http://www.rodsbooks.com/refind/index.html rEFInd]''''' can be used.
'''In such cases ''[http://www.rodsbooks.com/refind/index.html rEFInd]''''' can be used.




<!--T:60-->
[[File:Refind.png]]
[[File:Refind.png]]




There are two ways to install rEFInd-
<!--T:61-->
There are two ways to install rEFInd:


1.Install rEFInd from its website [http://www.rodsbooks.com/refind/installing.html] (detailed) or '''install using pacman'''''(preferred)''-
<!--T:62-->
sudo pacman -S refind
1.Install rEFInd from its [https://www.rodsbooks.com/refind/installing.html website] (detailed) or '''install using pacman'''''(preferred)'':
{{UserCmd|command=sudo pacman -S refind}}


<!--T:63-->
Files will be present in  /usr/share/refind .
Files will be present in  /usr/share/refind .


2.Or using the instructions on the rEFInd website: [http://www.rodsbooks.com/refind/installing.html]
<!--T:64-->
2.Or using the instructions on the [http://www.rodsbooks.com/refind/installing.html rEFInd website]  


== Instructions ==
== Instructions == <!--T:65-->


<!--T:66-->
The '''refind-install''' command can be used to automatically install rEFInd (the EFI partition may need to be mounted for this to work). See the [https://wiki.archlinux.org/index.php/REFInd#Installation Arch wiki] for more details.
The '''refind-install''' command can be used to automatically install rEFInd (the EFI partition may need to be mounted for this to work). See the [https://wiki.archlinux.org/index.php/REFInd#Installation Arch wiki] for more details.


=== Manual install ===
=== Manual install === <!--T:67-->
 
Inside the refind folder ('''/usr/share/refind'''), copy the files and folders to-
 
/boot/efi/EFI/Boot/


'''Note-'''
<!--T:68-->
Inside the refind folder ('''/usr/share/refind'''), copy the files and folders to {{ic|/boot/efi/EFI/Boot/}}.


My ESP (EFI System Partition) is mounted at /boot/efi.
<!--T:70-->
{{BoxInfo|note|My ESP (EFI System Partition) is mounted at '''/boot/efi'''.}}


<!--T:71-->
You need to copy these files to the Boot folder on your EFI partition, and the Boot folder itself will be present inside the EFI folder on the EFI Partition, so take note of it.
You need to copy these files to the Boot folder on your EFI partition, and the Boot folder itself will be present inside the EFI folder on the EFI Partition, so take note of it.


You can check which partition is your ESP using Gparted; find which partition is formatted as fat32 and has size around 200mb-1gb.
<!--T:72-->
You can check which partition is your ESP using Gparted; find which partition is formatted as fat32 and has size around 200MiB-1GiB.


<!--T:73-->
Can mount it as /boot/efi by
Can mount it as /boot/efi by


sudo mount /dev/sdXN /boot/efi
<!--T:74-->
{{UserCmd|command=sudo mount /dev/sdXN /boot/efi}}
X=a,b,c...
X=a,b,c...
N=1,2,3...
N=1,2,3...
These depend on which partition your ESP is present which can be obtained via Gparted as mentioned earlier.
These depend on which partition your ESP is present which can be obtained via Gparted as mentioned earlier.


Now inside the /boot/efi/EFI/Boot/ folder, there should already be a file present-
<!--T:75-->
Now inside the /boot/efi/EFI/Boot/ folder, there should already be a file present:
  bootx64.efi
  bootx64.efi


<!--T:76-->
You can '''''rename''''' it as  ''windows.bootx64.efi''
You can '''''rename''''' it as  ''windows.bootx64.efi''
Then you can rename ''refind_x64.efi'' to ''bootx64.efi''
Then you can rename ''refind_x64.efi'' to ''bootx64.efi''


<!--T:77-->
The bootx64.efi files boot by default, hence rEFInd should now boot by default, and detect grubx64.efi(linux-manjaro) and efibootmgfw.efi (windows) automatically.
The bootx64.efi files boot by default, hence rEFInd should now boot by default, and detect grubx64.efi(linux-manjaro) and efibootmgfw.efi (windows) automatically.


'''Note'''-
<!--T:78-->
{{BoxInfo|note|A folder Manjaro (name could be some other also) containing the file ''grubx64.efi'' should also be present in '''/boot/efi/EFI/''' folder, which should contain the ''grubx64.efi'' file which will be used by rEFInd to boot Grub.}}


A folder Manjaro (name could be some other also) containing the file grubx64.efi should also be present in /boot/efi/EFI/ folder, which should contain the grubx64.efi file which will be used by rEFInd to boot Grub.
<!--T:79-->
 
So it could be like:
So it could be like-
  /boot/efi/EFI/Manjaro/grubx64.efi
  /boot/efi/EFI/Manjaro/grubx64.efi


<!--T:80-->
rEFInd would use this file for booting Manjaro.
rEFInd would use this file for booting Manjaro.


If you do not have this file or folder, try-
<!--T:81-->
If you do not have this file or folder, try:


sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Manjaro --recheck
<!--T:82-->
{{UserCmd|command=sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Manjaro --recheck}}


<!--T:83-->
to create '''/boot/efi/EFI/Manjaro/grubx64.efi'''
to create '''/boot/efi/EFI/Manjaro/grubx64.efi'''




<!--T:84-->
See also- [http://www.rodsbooks.com/refind/installing.html#naming http://www.rodsbooks.com/refind/installing.html#naming]
See also- [http://www.rodsbooks.com/refind/installing.html#naming http://www.rodsbooks.com/refind/installing.html#naming]


=== An alternative: chainloading via GRUB ===
=== An alternative: chainloading via GRUB === <!--T:85-->




An entry can be added to ''/etc/grub.d/40_custom''
<!--T:86-->
 
An entry can be added to
menuentry 'Windows8 (UEFI)' {
{{File|file=/etc/grub.d/40_custom|
insmod ntfs
content=
set root=(hd0,gpt4)
<pre>
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
menuentry 'Windows8 (UEFI)' {
boot
insmod ntfs
}
set root=(hd0,gpt4)
 
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
boot
}
</pre>
}}
In this case (hd0,4) or /dev/sda4 is the EFI System partition where the Windows bootloader is present.
In this case (hd0,4) or /dev/sda4 is the EFI System partition where the Windows bootloader is present.


<!--T:87-->
After adding the above entry, running '''sudo update-grub''' updates the GRUB configuration file so that an entry named '''Windows8 (UEFI)''' is added to the GRUB boot menu.
After adding the above entry, running '''sudo update-grub''' updates the GRUB configuration file so that an entry named '''Windows8 (UEFI)''' is added to the GRUB boot menu.


Related Forum thread: [https://forum.manjaro.org/t/detecting-efi-files-and-booting-them-from-grub/38083]
<!--T:88-->
[https://forum.manjaro.org/t/detecting-efi-files-and-booting-them-from-grub/38083 Related Forum topic]


<!--T:89-->
The chainloading will fail on some hardware (Lenovo Ideapad 110) with the "invalid signature" message - the Refind method will still work.
The chainloading will fail on some hardware (Lenovo Ideapad 110) with the "invalid signature" message - the Refind method will still work.


= Extras =
= Extras = <!--T:90-->


== Using Rufus on Windows to create installation media ==
== Using Rufus on Windows to create installation media == <!--T:91-->


<!--T:92-->
[http://rufus.akeo.ie/ Rufus] users can use the following settings:
[http://rufus.akeo.ie/ Rufus] users can use the following settings:


  * Click on the DVD icon and load your .iso
  <!--T:93-->
* Click on the DVD icon and load your .iso
  * In the menu left of the DVD icon, select DD Image
  * In the menu left of the DVD icon, select DD Image
  * Device: "choose your USB" (Attention: choose correctly,
  * Device: "choose your USB" (Attention: choose correctly,
Line 256: Line 325:
  * Click Start, and you are done (takes 2~5 min to complete).
  * Click Start, and you are done (takes 2~5 min to complete).


= Feedback =
= Feedback = <!--T:94-->


Questions, suggestions, critics? Please post here: [http://forum.manjaro.org/]
<!--T:95-->
Questions, suggestions, critics? Please post [https://forum.manjaro.org/ here]


= External Links =
= External Links = <!--T:96-->


<!--T:97-->
Youtube video: https://www.youtube.com/watch?v=36tDZIXn3-k
Youtube video: https://www.youtube.com/watch?v=36tDZIXn3-k
 
</translate>
[[Category:Contents Page]]
[[Category:Contents Page{{#translation:}}]]

Latest revision as of 11:18, 16 January 2023

Other languages:
Deutsch • ‎English • ‎Türkçe • ‎français • ‎русский • ‎فارسی • ‎中文(中国大陆)‎

Introduction

UEFI is the commonly agreed on name for both the EFI & UEFI 
standards which merged. It does not include the old EFI v1, 
or Apple's own non-standard version of EFI.

Target computer

The following guide aims to install Manjaro on a machine with UEFI enabled, Secure boot disabled, and using GUID Partition Table (GPT) disk(s).

For multi-boot, the EFI system partition which is already present (or will be created), can usually be shared amongst multiple Linux installs.

The steps

Common

  • 1. Download your preferred Manjaro version: XFCE, Gnome, KDE, Budgie, Cinnamon, I3, Sway or Mate.
  • 3. Check your BIOS, UEFI must be ON and Secure boot OFF.
  • 4. Boot with your USB or DVD & use the rEFInd - Main Menu... to choose which GPU drivers you want to have installed, the open-source or proprietary:
* Boot with open source drivers - 
  This chooses the open-source - free GPU drivers.
* Boot with proprietary drivers - 
  This option chooses the proprietary GPU drivers
  from Nvidia or ATI.

Graphical Installer

tip
Since Manjaro-0.8.9, UEFI support is also provided in the Graphical Installer, so one can simply try the Graphical installer and skip the instructions given below for the CLI installer.

To use the Graphical Installer select the Install Manjaro option from the Manjaro Welcome screen or from the desktop.

For the ESP (EFI system partition) which will store the EFI Grub binary, a 512mb partition of type fat32 can be created in the partitioning step, and mounted to /boot/efi

If you are dual booting then an EFI partition from a previous install can also be used.

CLI installer

  • 5-b. Open terminal & enter:
user $ sudo setup COPY TO CLIPBOARD


  • 6. Now, we are in the CLI Installer.
  • 7. Choose 1. Set date and time - an easy intuitive configuration.

Disk preparation

tip
If your hard disk is already partitioned the way you want, then this step can be skipped.
* When you click 2. Partition Hard Drives, 
  you get a dialog saying "Do you want to use GUID
  Partition Table (GPT)", choose Yes.
* Partition your disk(s) as you want (Instructions on
  manually partitioning are beyond the scope of this
  guide, some deatils are available here).
* Important Step: Create a 50~250MB EFI Partition,
  mine is 100MB (code: ef00)

Setting filesystem mount points

* After the partitioning is done, go to 4. Set Filesystem
  Mountpoints.
* Important Step: Format the EFI Partition you
  created as VFAT and mount on /boot/efi


note
If you are re-using your EFI partition (that was created by Windows previously (or any other OS), then there is no need to format. Formatting will wipe the previous bootloader. Only mounting the EFI partition as /boot/efi is required in that case.

Installation

  • 9. Choose 3. Install system and wait...
  • 10. Now, go to 4. Configure System and configure it the way you like (username, password, mirrorlist, system-name, ...).
  • 11. When you are done, go to 5. Install bootloader. Choose EFI_x86_64 > GRUB (2) UEFI x86_64, DON'T select BIOS GRUB.
  • 11.1 It will ask to format the EFI Partition you created earlier as FAT32, yes can be chosen.
note
Formatting not required if reusing previous EFI partition.
  • 12. If it gives a error in the final stages saying "efivars kernel module was not properly loaded", don't worry, the system will work fine!
  • 13. If the installer asks you about copying grub/efi files to another folder in order to maintain compatibility in some systems, choose Yes.
  • 14. Click 6. Quit
  • 15. Shutdown, remove the DVD or USB, and boot. Your system should appear now!

Switching from BIOS to UEFI

1) You need to create an ESP (EFI System Partition).

It is a FAT32 partition which has the .efi files for booting, which you can create using gparted or gdisk. (Size at least 200-300 MiB.) Ensure the flags `boot` and `esp` are set on this partition.

You should also install/check whether following packages are present:

1. efibootmgr
2. dosfstools
3. grub

(How to install packages)


2) Create the /boot/efi directory

user $ sudo mkdir /boot/efi COPY TO CLIPBOARD



3.) Mount the EFI partition as /boot/efi

sudo mount /dev/sdXY /boot/efi

X = Alphabet of the drive = a,b,c ... Y = Partition number of the EFI partition = 1,2,3,4...

Example - /dev/sda4


4.) Install Grub according to UEFI

user $ sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck COPY TO CLIPBOARD


5.) Update Grub configuration file.

user $ sudo update-grub COPY TO CLIPBOARD



note
If you get an error like:
path '/boot/grub' is not readable by Grub on boot. Installation is impossible. Aborting

Then you will need to chroot as described here, and then perform Step 5 again.


note
If you get the following error:
EFI variables are not supported on this system.

then you could load the efivarfs module :

user $ sudo modprobe efivarfs COPY TO CLIPBOARD

See also

Restore the GRUB Bootloader

Related Forum topic

Dual booting with Windows

tip
Some manufactures EFI implementations cause GRUB not to be showed in the Boot Menu, or even if its there it can't be made default.


In such cases rEFInd can be used.


Refind.png


There are two ways to install rEFInd:

1.Install rEFInd from its website (detailed) or install using pacman(preferred):

user $ sudo pacman -S refind COPY TO CLIPBOARD


Files will be present in /usr/share/refind .

2.Or using the instructions on the rEFInd website

Instructions

The refind-install command can be used to automatically install rEFInd (the EFI partition may need to be mounted for this to work). See the Arch wiki for more details.

Manual install

Inside the refind folder (/usr/share/refind), copy the files and folders to /boot/efi/EFI/Boot/.


note
My ESP (EFI System Partition) is mounted at /boot/efi.

You need to copy these files to the Boot folder on your EFI partition, and the Boot folder itself will be present inside the EFI folder on the EFI Partition, so take note of it.

You can check which partition is your ESP using Gparted; find which partition is formatted as fat32 and has size around 200MiB-1GiB.

Can mount it as /boot/efi by

user $ sudo mount /dev/sdXN /boot/efi COPY TO CLIPBOARD


X=a,b,c... N=1,2,3... These depend on which partition your ESP is present which can be obtained via Gparted as mentioned earlier.

Now inside the /boot/efi/EFI/Boot/ folder, there should already be a file present:

bootx64.efi

You can rename it as windows.bootx64.efi Then you can rename refind_x64.efi to bootx64.efi

The bootx64.efi files boot by default, hence rEFInd should now boot by default, and detect grubx64.efi(linux-manjaro) and efibootmgfw.efi (windows) automatically.


note
A folder Manjaro (name could be some other also) containing the file grubx64.efi should also be present in /boot/efi/EFI/ folder, which should contain the grubx64.efi file which will be used by rEFInd to boot Grub.

So it could be like:

/boot/efi/EFI/Manjaro/grubx64.efi

rEFInd would use this file for booting Manjaro.

If you do not have this file or folder, try:

user $ sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Manjaro --recheck COPY TO CLIPBOARD


to create /boot/efi/EFI/Manjaro/grubx64.efi


See also- http://www.rodsbooks.com/refind/installing.html#naming

An alternative: chainloading via GRUB

An entry can be added to

/etc/grub.d/40_custom
menuentry 'Windows8 (UEFI)' {
insmod ntfs
set root=(hd0,gpt4)
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
boot
}

In this case (hd0,4) or /dev/sda4 is the EFI System partition where the Windows bootloader is present.

After adding the above entry, running sudo update-grub updates the GRUB configuration file so that an entry named Windows8 (UEFI) is added to the GRUB boot menu.

Related Forum topic

The chainloading will fail on some hardware (Lenovo Ideapad 110) with the "invalid signature" message - the Refind method will still work.

Extras

Using Rufus on Windows to create installation media

Rufus users can use the following settings:

* Click on the DVD icon and load your .iso
* In the menu left of the DVD icon, select DD Image
* Device: "choose your USB" (Attention: choose correctly,
  the device selected here will be formatted!!!)
* Partition scheme: GPT partition scheme for UEFI computer
* File system: FAT32
* Cluster size: "Don't modify"
* Volume label: "Don't modify"
* Click Start, and you are done (takes 2~5 min to complete).

Feedback

Questions, suggestions, critics? Please post here

External Links

Youtube video: https://www.youtube.com/watch?v=36tDZIXn3-k

Cookies help us deliver our services. By using our services, you agree to our use of cookies.