You are not logged in.
Pages: 1
So I have read a good amount of the wiki now and here are my questions:
I currently have a usb stick I believe to be booting correctly into UEFI mode.
1. Should I just partition my hard drive, and do the install scripts first and then install grub?
2. If so, how do I install grub if I can't boot into Arch? As I understand it, you need to install grub and then copy it into the mounted EFI partition. How can I do this if I only have windows on the computer? do i need to have another live distro to do this with from a flash drive?
3. or do the install scripts handle making a uefi entry?
Thanks
Offline
I'm confused. You say that you have a usb stick that you believe to be booting via UEFI, then you say that you only have windows to boot into. If you have a UEFI USB, and an existing ESP (likely created from windows' installation), then you just need to install the packages and configure the system. Then use the ESP either as /boot directly or mount it at /boot/efi (if you want to ensure that kernels remain on a posix filesystem). Then follow the wiki about how to install a UEFI bootloader.
I think that if you are going to use UEFI and dual boot with windows, using a boot manager might be the better option. These basically provide a menu of boot options but rely on an external mechanism to load the kernel and initramfs. In the case of Linux, that external functioanlity is provided by the kernel itself and its feature known as efistub. But a boot manager is able to boot any *.efi application, and when windows is installed in UEFI mode, it follows those rules and creates itself an efi application to boot from.
Offline
Is Windows booting in UEFI mode?
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
Yes, Windows is booting in UEFI mode.
So you recommend that I don't use grub? If I am going to use a boot manager, can I just use the built-in GUI one? (the one I can use a mouse in to choose USB/CD/etc.). If so, How would I make that come up by default on startup? Else, i suppose I would use gummiboot. However, am i able to install a program(like gummiboot) from the portable usb arch?
Also, are you saying that I need to install the OS first and then do all this?
So to do the EFIStub method you are suggesting, I need to run the following to register the efi entry(taken from the wiki):
# efibootmgr -c -d /dev/sdX -p Y -l /EFI/arch/vmlinuz-arch.efi -L "Arch Linux (EFISTUB)" -u "$(cat /proc/cmdline)"
but filling in appropriate values of course.
But where does the .efi come from? I understand where it is supposed to go, but don't i have to copy vmlinuz.efi, initramfs-arch.img, and initramfs-arch-fallback.img from somewhere?
Offline
Which version of Windows do you have on your machine? If it is Wndows 8 then you will presumably be using Secure Boot? If so you will need to turn that off in the BIOS before setting up arch for the dual boot. Also I believe that you need to turn off "fastboot" in Windows 8 (a kind of hibernate) otherwise this can cause dual boot problems as well.
Mike C
Offline
It is 8. And I have already disabled secure boot and fastboot. My only real problems now are knowing exactly how all the steps fit together in the installation process. While booted, should I install arch to the proper partitions and without retarting, then install the boot manager and setup the efistub? Or is this a part of the installation process?
Offline
It is 8. And I have already disabled secure boot and fastboot. My only real problems now are knowing exactly how all the steps fit together in the installation process. While booted, should I install arch to the proper partitions and without retarting, then install the boot manager and setup the efistub? Or is this a part of the installation process?
It is possible to set up the boot manager during the install - but you do need to read as much as possible about how to do it - there are options between the various UEFI bootloaders - including grub, and also rEFInd and once you have chosen which you will use then make sure you read up about your chosen one. In the Beginner's Guide there is some detail about some of the options but not too much about rEFInd - so you need to read Rod Smith's excellent web pages on the topic if you choose that as your method. Also the issue of UEFI is still dependent on which motherboard you have, and different implementations of the UEFI BIOS code behave differently - with some being buggy. efibootmgr does not always put the correct entries into the NVRAM in your hardware, and you may need to boot a usbkey and write the correct entries using the EFI shell with CLI commands. However because UEFI is very different from the legacy BIOS techniques most people are used to it is quite a learning curve. It took me quite a while to read everything I needed - but you will find if you use rEFInd in particular that the author is very helpful on this forum and will, if you provide well written questions containing useful information about your system, offer guidance to get you going.
It is also possible to fix up an install where the bootloader has not been installed properly also. This is done by booting the install media and then chrooting into the installed environment, from where you can run commands to fix the boot files, and write NVRAM entries for example, as well as write new initramfs files if they were not completed during the initial install. If those steps are re-done correctly it is perfectly possible to fix an install that went wrong presuming that those issues are the only problems that need fixing!
I hope this helps.
Last edited by mcloaked (2013-10-10 18:18:59)
Mike C
Offline
@OP,
Everything you need to get started is in the Beginners' Guide. You are asking people to repeat here what is covered there and you are getting fragmentary answers in response.
Provided Windows is using EFI mode and you've disabled Secure Boot and fastboot, you are good to go.
If you run into problems, people will be more than happy to help but right now you are just asking us to give you answers which are well covered in the wiki. The Beginners' Guide covers installing the system and installing and configuring a boot loader/manager. Please make use of a resource the community puts a great deal of effort into maintaining.
For example, the section of the Beginners' Guide on For UEFI motherboards covers 2 of the options (gummiboot and grub). A more comprehensive list of options is at UEFI Bootloaders. (This includes coverage of rEFInd.) UEFI provides an overview of UEFI.
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
I apologize if my questions are repetitive. I understand that much of this is covered in the WIki and I have done my best to read all its sections pertinent to my situation. So any questions I've asked are things I didn't understand or find on the Wiki.
Additional Questions:
1. My EFI partition is currently 260MB. Is that big enough for a windows entry, and a linux kernel(and anything else required for the stub)? because I cannot seem to resize the partition.
2. Should my / and /var partitions also be fat32(like the efi partition)? or can/should they be something else?
Offline
OK. Your first question is reasonable. This is probably the only question you've asked in this thread which you may not have been able to easily answer by searching and reading the wiki.
In answer to that question: That will be big enough, I think. Since Windows created it, there's not much you can do. It is possible to avoid this but I wouldn't bother, personally. Just go with it. Ignore the wiki claim that the partition must be at least 512 MiB. Your system doesn't need that else it wouldn't be working already. You have plenty of room, I think. If you ever need more, you can use a boot manager which allows you to load kernels from other partitions, like rEFInd.
Your second question is not reasonable. Please read the wiki. See https://wiki.archlinux.org/index.php/File_Systems which is linked from the Beginners' Guide. The short answer to your question is "No, they should not. Yes, they should be something else." Fat 32 will not work. Read the information and choose an appropriate file system. There are several good options - which of those you choose is a matter of your needs and preferences.
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
1. My EFI partition is currently 260MB. Is that big enough for a windows entry, and a linux kernel(and anything else required for the stub)? because I cannot seem to resize the partition.
In theory, 260MB is big enough for most ESPs. The problem with an ESP this small is that some EFIs have buggy FAT drivers that tend to do weird things with FAT32 partitions smaller than 512MiB. If you're unlucky enough to have such an EFI, you can run into weird problems like a boot loader failing to read some of its support files but finding others just fine. (I've seen this myself.) If you've got such an EFI, the solutions are to use FAT16 (which is a technical violation of the EFI spec and gives the Windows installer fits, but usually works fine otherwise) or increase the ESP's size to 512MiB or more. The latter option can be accomplished by creating a new ESP and deleting the old one, but that will leave 260MB of disk space unused -- unless you can find some other use for a small partition. (Maybe you could turn it into a Linux /boot partition, for instance.)
One other potential problem with a small ESP is that if you store your kernels on the ESP (say, because you're using gummiboot), you can run out of space if you also store many Linux kernels (say, if you're booting two or three Linux distributions, each of which stores several kernels). A 260MB ESP should be big enough for Arch's needs plus those of Windows, though.
2. Should my / and /var partitions also be fat32(like the efi partition)? or can/should they be something else?
No, those need to use a Linux filesystem, like ext3/4fs, ReiserFS, XFS, JFS, or Btrfs.
Offline
If I would like to use rEFInd, do I HAVE to have the kernel in a directory on the EFI partition? I have heard that rEFInd could auto-detect boot stubs on other partitions as long as they were compatible file systems(GPT/fat). Is this true? Isn't that the way to do it so that I don't have to recopy the kernel to the EFI partition every time I update it? Or will it only auto-detect within the EFI partition subdirectories?
Offline
If I would like to use rEFInd, do I HAVE to have the kernel in a directory on the EFI partition? I have heard that rEFInd could auto-detect boot stubs on other partitions as long as they were compatible file systems(GPT/fat). Is this true? Isn't that the way to do it so that I don't have to recopy the kernel to the EFI partition every time I update it? Or will it only auto-detect within the EFI partition subdirectories?
You don't have to have the kernel in the ESP - for example in my case I have my esp as /boot/efi/EFI which is in the partition /boot/efi which is a VFAT partition as required. My /boot is a subdirectory of / which is an ext4 partition (my root partition)
In order to allow rEFInd to read the files within the ext4 /boot partition you just need the ext4 driver which is part of the rEFInd package file set.
Hence in each of the two directories I have the following files:
$ ll /boot
total 20248
drwxr-xr-x 3 root root 4096 Jan 1 1970 efi
-rw-r--r-- 1 root root 14080029 Oct 6 21:16 initramfs-linux-fallback.img
-rw-r--r-- 1 root root 2788054 Oct 6 21:16 initramfs-linux.img
-rw-r--r-- 1 root root 265 Feb 2 2013 refind_linux.conf
drwxr-xr-x 2 root root 4096 Jul 29 19:50 syslinux
-rw-r--r-- 1 root root 3849232 Oct 5 20:24 vmlinuz-linux
and
$ ll /boot/efi/EFI/
total 24
drwxr-xr-x 4 root root 4096 Feb 4 2013 boot
drwxr-xr-x 2 root root 4096 Sep 12 18:18 fonts
drwxr-xr-x 2 root root 8192 Sep 12 18:18 icons
drwxr-xr-x 4 root root 4096 Feb 9 2013 refind
drwxr-xr-x 3 root root 4096 Feb 1 2013 tools
with the ext4 driver as
$ ll /boot/efi/EFI/refind/drivers_x64/
total 32
-rwxr-xr-x 1 root root 31872 Sep 12 18:18 ext4_x64.efi
and also
$ ll /boot/efi/EFI/boot/drivers_x64/
total 32
-rwxr-xr-x 1 root root 32352 Feb 4 2013 ext4_x64.efi
With this set up pacman updates to the kernel put the files into /boot and refind sees them without any further adjustment and the system boots just fine. If rEFInd has an update then there is usually a comment during the update about copying the appropriate files to your boot area.
I did have a lot of help from srs5694 in getting my system set up back in early 2013, but since then it has worked flawlessly for UEFI boot through many new kernel updates. However it is a good idea to read all the available help files about how to set it up.
Mike C
Offline
I thought the icons and fonts directories needed to be under the refind directory? That's where mine are and it seems to work...
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
I don't have the fonts in my refind dir:
ls /boot/efi/EFI/refind/
drivers_x64 icons refind.conf refind_x64.efi
so the only place was as I posted previously! Maybe it works either way!
Last edited by mcloaked (2013-10-14 10:39:14)
Mike C
Offline
Actually, I have a feeling the fonts directory isn't actually necessary unless you object to the built-in default. So it might not matter in that sense.
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
Actually, I have a feeling the fonts directory isn't actually necessary unless you object to the built-in default. So it might not matter in that sense.
This is partially correct. rEFInd has a built-in font that it uses by default. If you object to that font, you can set another one via the "font" option in refind.conf. The fonts directory included in the rEFInd package includes a two sample fonts at various sizes. You don't need to copy the whole directory to the ESP even if you want to use one of these fonts, though; you need only copy the one font that you do want to use. You could also create your own font, as described on the rEFInd theming page.
Offline
I have successfully dual-booted Windows 8 and Arch on UEFI !!!
Thanks everyone for your help in this. I really appreciate your time.
Offline
Pages: 1