You are not logged in.
Hi,
I've installed rEFInd on my Mac OS partition using the install.sh script. rEFInd boots without any issues. However, I was unable to boot the Arch Linux installer through any means of which I could think. I tried three ways: archlinux-2013.06.01-dual.iso on USB, archlinux-2013.03-4-archboot-dual.iso on USB and archlinux-2013.06.01-dual.iso on a DVD+R DL. For either of the USB images, rEFInd did recognize them as a legacy OS, but when I tried to boot them, it gave me some error about the Mac's EFI having poor support for legacy OSes from external drives. As for the DVD, it wasn't recognized at all.
I have an iMac7,1 with a 64-bit 2.8 GHz Core 2 Duo ("Extreme") CPU.
I hope there is a solution to this. Thanks in advance for any help you may be able to provide.
Note: I cross-posted this to rEFInd's forum because I'm not sure whether it's a rEFInd or Arch issue.
Offline
Offline
Thanks for the link, WonderWoofy. However, I'm not aware of any way to create a labelled filesystem in Mac OS without having to set up an entire Linux virtual machine just for that.
Offline
Thanks for the link, WonderWoofy. However, I'm not aware of any way to create a labelled filesystem in Mac OS without having to set up an entire Linux virtual machine just for that.
Really?
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
Thanks! I was now able to install it. However, I now have trouble booting after creating a /boot/refind.conf file:
rEFInd - Booting OS
Starting vmlinuz-linux
Using load options 'root=/dev/mapper/lvmpool-slash cryptdevice=PARTUUID=7678874f-238e-4b4d-a4dd-3e08e3178f29:crypt rootfstype=ext4 ro initrd=\initramfs-linux-fallback.img'
Error: Device Error while loading vmlinuz-linux
* Hit any key to continue *
I wrote all those settings in my config file except the initrd, which it must have assumed. I have no idea why it chose the fallback or why it's marked with a \, since none of my filesystems are FAT or NTFS. I'm using LVM inside a LUKS partition.
Offline
EFI uses backslashes '\' as its directory markers. And, if you didn't specify the initramfs, you need to
All the best,
-HG
Offline
Thanks. I just tried initramfs=/boot/initramfs-linux.img and initrd=/boot/initramfs-linux.img (one at a time) and I got the same error with both. I'm probably doing something wrong…sorry for the noob questions!
Edit: I tried changing PARTUUID= to /dev/disk/by-partuuid/, but it didn't help. Same error.
Last edited by Kudu (2013-06-16 18:28:20)
Offline
You shouldn't need the /boot, as efi paths are relative to bootthe ESP (see cfr's comment below). Try initrd=/initramfs-linux.img
All the best,
-HG
Last edited by HalosGhost (2013-06-16 20:39:59)
Offline
EFI paths are relative to the root of the EFI partition. Standardly, that means relative to /boot/efi but it might be relative to /boot if that's where you mount your ESP.
Did you follow the Beginners' Guide to set up rEFInd? If not, try that.
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 did follow the Beginners' Guide, but it states that there's no need to copy files to the ESP because rEFInd should automatically detect the necessary files in the /boot partition. Besides, I have rEFInd installed on my Mac OS system partition as opposed to an ESP, which is what the rEFInd developer recommends. Therefore, I think I need to set things up relative to my /boot partition.
Last edited by Kudu (2013-06-16 21:09:33)
Offline
Have you copied the relevant driver for rEFInd? If you do not have the files on the ESP/MacOS partition (whereever rEFInd itself is), you need to make sure the driver for the appropriate filesystem is available.
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, I copied the entire drivers_x64 folder to /EFI/refind/drivers.
Offline
I thought that you had installed rEFInd on the OS X partition rather than the EFI partition?
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 did. /EFI is on the system partition, it isn't a special mount point for the ESP.
Offline
So what error are you getting now?
Post the config files you have for rEFInd and fstab.
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
Thanks! I was now able to install it. However, I now have trouble booting after creating a /boot/refind.conf file:
rEFInd - Booting OS Starting vmlinuz-linux Using load options 'root=/dev/mapper/lvmpool-slash cryptdevice=PARTUUID=7678874f-238e-4b4d-a4dd-3e08e3178f29:crypt rootfstype=ext4 ro initrd=\initramfs-linux-fallback.img' Error: Device Error while loading vmlinuz-linux * Hit any key to continue *
The error message being reported is the text returned by some system calls for an error code number returned by the EFI to rEFInd. Chances are "Device Error" means code #7, EFI_DEVICE_ERROR, which is (very briefly) described here:
The physical device reported an error while attempting the operation.
This suggests a hardware problem, although I wouldn't rule out a firmware bug or a problem with a driver. I'm doubtful that fiddling with configuration files will have any effect. Some things you might try include:
Run a SMART test on your hard disk to ensure that it's OK. If the SMART test reveals any problems, replace the hard disk.
Remove any unnecessary EFI drivers from the "drivers", "drivers_x64", or "drivers_ia32" subdirectories of the rEFInd installation directory.
Run fsck on the partition on which the Linux kernel resides.
If the Linux kernel is on a separate /boot partition, back it up, create a fresh filesystem on that partition, and restore the files. You might consider using a different filesystem, too (and changing the EFI driver, if necessary).
Check to see if updated firmware is available for your computer, and if so, install it.
Offline
Are you trying to just boot into the installer on your Mac? Why don't you just pop the dvd in your Mac, reboot it while pressing the alt button which takes you to Macs boot manager. Once there the Arch disk should show up with 2 disks, Windows and EFI. Just chose EFI and your computer will boot the install dvd where you can start to install Arch.
Offline
Are you trying to just boot into the installer on your Mac? Why don't you just pop the dvd in your Mac, reboot it while pressing the alt button which takes you to Macs boot manager. Once there the Arch disk should show up with 2 disks, Windows and EFI. Just chose EFI and your computer will boot the install dvd where you can start to install Arch.
No. The OP is now trying to boot the installed system. Please read the thread!
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
Thanks, guys.
I ran a short S.M.A.R.T. test and it passed.
I removed all the drivers from rEFInd's driver folder except the one for ext4.
I created a new ext4 filesystem for /boot, restored the files and ran fsck on it for good measure.
No new EFI firmware appears to be available for my computer.
I'm still getting the annoying Device Error. Maybe I should try using a different filesystem for /boot. Which one would you suggest?
Last edited by Kudu (2013-06-18 01:21:32)
Offline
Try using FAT on /boot, since that's supported by all EFI implementations natively. You'll give up symbolic links and other Linux/Unix-specific features, but they aren't really needed on /boot, at least not with Arch. If you really want Linux/Unix features, try ReiserFS.
Actually, before you do this, could you do a dd backup of your /boot partition (as in unmounting /boot and then doing "dd if=/dev/sda3 of=boot-image.img", changing "/dev/sda3" as necessary), compress the backup, and get a copy to me? (E-mail might be OK, but a file sharing service would be better.) If the problem is reproducible on other computers, that might enable me to track down a bug in the ext2/3 or ext4 driver. If I can't reproduce the problem with your /boot partition, then that means it's a firmware bug or some sort of interaction, which will be harder for me to fix.
Last edited by srs5694 (2013-06-18 01:54:29)
Offline
EDIT: Ignore me. Follow the advice above.
Last edited by cfr (2013-06-18 01:55:16)
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
Thanks for the help. I migrated my /boot partition to a FAT32 filesystem. However, when I try to boot it from within rEFInd, this message is displayed:
rEFInd - Booting OS
Starting vmlinuz-linux
Using load options 'root=/dev/mapper/lvmpool-slash initrd=\initramfs-linux.img cryptdevice=/dev/disk/by-partuuid/7678874f-238e-4b4d-a4dd-3e08e3178f29:crypt rootfstype=ext4 ro'
_
and it just hangs there. srs, I'll send you the ext4 /boot image as soon as I can boot my system, which will make it easier for me to send it.
Offline
@Kudu, OSX has most of the main commands that Linux has. In fact, the default shell (last I checked) was bash. It certainly has dd, so you could definitely dd the /boot partition into a file pretty easily.
Offline
Kudu,
Try using unjournaled HFS+ for /boot. Since you're on a Mac, you should not install rEFInd's HFS+ driver. Using HFS+ is unorthodox, I know, but it may work better than FAT for you. (I have problems loading Linux kernels from FAT partitions on my ancient 32-bit Mac, but others don't seem to have that problem, so I assumed it was a quirk of my old model. The system just hangs, much as you've described. HFS+ works fine for me, though, so maybe it will for you, too.)
Offline
Thanks a lot for the help, guys. I ran "mkfs.hfsplus /dev/sdb1" from inside my Arch partition (using arch-chroot on archiso) and copied my previous /boot content to it. However, the result is the same as for FAT32: it hangs on this:
rEFInd - Booting OS
Starting vmlinuz-linux
Using load options 'root=/dev/mapper/lvmpool-slash initrd=/initramfs-linux.img cryptdevice=/dev/disk/by-partuuid/7678874f-238e-4b4d-a4dd-3e08e3178f29:crypt rootfstype=ext4 ro'
_
I removed all the drivers from /EFI/refind/drivers on my Mac OS partition. By the way, Mac OS and Linux are on separate drives, both external, if that makes a difference.
Last edited by Kudu (2013-06-18 17:23:20)
Offline