View previous topic :: View next topic |
Author |
Message |
hcaulfield57 Tux's lil' helper
Joined: 13 Mar 2012 Posts: 148
|
Posted: Sun Apr 21, 2013 4:25 am Post subject: Gentoo Install MacBook 5,1 |
|
|
Hello everyone. I tried installing Gentoo on to my Macbook. I mounted the EFI partition (/dev/sda1 in Linux) as /boot and placed my kernel in that partition as well. I had trouble installing Grub Legacy and Grub2, so I'm trying to use rEFInd as my boot loader. I have the following in my refind.conf:
Code: |
menuentry "Gentoo Linux" {
icon \EFI\refind\icons\os_gentoo.icns
loader \linux
options "root=/dev/sda3"
}
|
It shows up in rEFInd's menu, but it doesn't work. The root filesystem is on /dev/sda3 by the way. I'm really not sure what I'm doing, the Macbook's partitions are really confusing me. _________________ "To design the perfect anti-Unix, make all file formats binary and opaque, and require heavyweight tools to read and edit them." - The Art of Unix Programming |
|
Back to top |
|
|
khayyam Watchman
Joined: 07 Jun 2012 Posts: 6227 Location: Room 101
|
Posted: Sun Apr 21, 2013 3:57 pm Post subject: Re: Gentoo Install MacBook 5,1 |
|
|
hcaulfield57 wrote: | It shows up in rEFInd's menu, but it doesn't work. The root filesystem is on /dev/sda3 by the way. I'm really not sure what I'm doing, the Macbook's partitions are really confusing me. |
hcaulfield57 ... I can think of two reason for it not loading:
1). Your missing support for efi/efi_stub .... the following need to be enabled.
CONFIG_EFI=y
CONFIG_RELOCATABLE=y
CONFIG_FB_EFI=y
CONFIG_EFI_PARTITION=y
CONFIG_EFI_VARS=m
CONFIG_EFI_STUB=y
2). your hitting the eboot.c bug in current 3.8.x kernel. The fix is to copy eboot.c from a 3.7 kernel (the linked file is from 3.7.10) replace the one in arch/x86/boot/compressed/ ... and rebuild.
Also, if you used vmlinuz-<version>.efi rEFInd will autodetect the kernels, so no need for a menuentry, you can then use {ESP}/refind_linux.conf with any options for the kernel, ie:
Code: | "Gentoo Linux" "ro acpi_backlight=vendor rootfstype=ext4"
"Gentoo Test" "foo" |
With this method there is no need to update the conf, and the most recent modified *.efi would be the default.
HTH & best ... khay |
|
Back to top |
|
|
Hu Moderator
Joined: 06 Mar 2007 Posts: 21624
|
Posted: Sun Apr 21, 2013 5:03 pm Post subject: |
|
|
In case khayyam's advice does not help: OP - please elaborate on "it doesn't work". Do you mean that, as khayyam suspects, the Linux kernel is not found and/or not started? Do you mean that Linux began executing, but failed to boot? If so, how far did it progress? In what way did the boot fail? |
|
Back to top |
|
|
hcaulfield57 Tux's lil' helper
Joined: 13 Mar 2012 Posts: 148
|
Posted: Sun Apr 21, 2013 9:50 pm Post subject: |
|
|
Thanks for the help guys I finally got it to work. What I did was put /boot onto my root partition /dev/sda3 and mounted the EFI partition on /boot/efi, I then was able to install Grub2, through the use of the following command:
Code: |
grub2-install --target=x86_64-efi --efi-directory=/boot/efi --recheck
|
rEFInd recognizes Grub2 and now I can chainload and boot into my kernel. I'm sure there are better ways to do this, avoiding the need for Grub2, but as this works for now, I'm content with the solution. My only problem so far, is that I cannot get the internet to work, either ethernet or wireless. `ifconfig` only reveals lo0 and nothing else is recognized. Any help with internet would be much appreciated.
My kernel .config is:
http://bpaste.net/show/El0aX2O2T8JzSlIFAnyK/
And lspci reveals:
Code: |
00:00.0 Host bridge: NVIDIA Corporation MCP79 Host Bridge (rev b1)
00:00.1 RAM memory: NVIDIA Corporation MCP79 Memory Controller (rev b1)
00:03.0 ISA bridge: NVIDIA Corporation MCP79 LPC Bridge (rev b2)
00:03.1 RAM memory: NVIDIA Corporation MCP79 Memory Controller (rev b1)
00:03.2 SMBus: NVIDIA Corporation MCP79 SMBus (rev b1)
00:03.3 RAM memory: NVIDIA Corporation MCP79 Memory Controller (rev b1)
00:03.4 RAM memory: NVIDIA Corporation MCP79 Memory Controller (rev b1)
00:03.5 Co-processor: NVIDIA Corporation MCP79 Co-processor (rev b1)
00:04.0 USB controller: NVIDIA Corporation MCP79 OHCI USB 1.1 Controller (rev b1)
00:04.1 USB controller: NVIDIA Corporation MCP79 EHCI USB 2.0 Controller (rev b1)
00:06.0 USB controller: NVIDIA Corporation MCP79 OHCI USB 1.1 Controller (rev b1)
00:06.1 USB controller: NVIDIA Corporation MCP79 EHCI USB 2.0 Controller (rev b1)
00:08.0 Audio device: NVIDIA Corporation MCP79 High Definition Audio (rev b1)
00:09.0 PCI bridge: NVIDIA Corporation MCP79 PCI Bridge (rev b1)
00:0a.0 Ethernet controller: NVIDIA Corporation MCP79 Ethernet (rev b1)
00:0b.0 SATA controller: NVIDIA Corporation MCP79 AHCI Controller (rev b1)
00:10.0 PCI bridge: NVIDIA Corporation MCP79 PCI Express Bridge (rev b1)
00:15.0 PCI bridge: NVIDIA Corporation MCP79 PCI Express Bridge (rev b1)
02:00.0 VGA compatible controller: NVIDIA Corporation C79 [GeForce 9400M] (rev b1)
03:00.0 Network controller: Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller (rev 01)
|
I'm unsure what I'm missing. _________________ "To design the perfect anti-Unix, make all file formats binary and opaque, and require heavyweight tools to read and edit them." - The Art of Unix Programming |
|
Back to top |
|
|
khayyam Watchman
Joined: 07 Jun 2012 Posts: 6227 Location: Room 101
|
Posted: Sun Apr 21, 2013 11:53 pm Post subject: |
|
|
hcaulfield57 wrote: | Code: | 00:0a.0 Ethernet controller: NVIDIA Corporation MCP79 Ethernet (rev b1)
03:00.0 Network controller: Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller (rev 01)
|
|
hcaulfield57 ... the b42 kernel driver for BCM4322 requires the firmware cut ... I'm not sure which of net-wireless/bcm43xx-fwcutter or net-wireless/b43-fwcutter is used, I believe for the bcm43xx from sys-kernel/linux-firmware its the latter. So, along with the driver the firmware is required.
There is also the broadcom-sta driver from broadcom, but as I understand it (and a search of the forums will probably clarify) this is the least prefer ed option.
I'm not sure where brcmsmac/brcmfmac fits in to this picture, as I understood it this was a kernel driver provided by broadcom, but I don't see it listed in your .config for some reason. Perhaps someone with a similar card with chirp in and clear up any of the above.
For the MCP79 you don't have ethernet enabled in your config ... the driver is CONFIG_FORCEDETH which is under -> Device Drivers -> Network device support -> Ethernet driver support -> NVIDIA devices
best ... khay |
|
Back to top |
|
|
DONAHUE Watchman
Joined: 09 Dec 2006 Posts: 7651 Location: Goose Creek SC
|
Posted: Mon Apr 22, 2013 1:02 am Post subject: |
|
|
http://linuxwireless.org/en/users/Drivers/b43 says some bcm4322 are not supported, some partially, some completely. You might want to run lspci -nn and check the pciid against the chart. _________________ Defund the FCC. |
|
Back to top |
|
|
hcaulfield57 Tux's lil' helper
Joined: 13 Mar 2012 Posts: 148
|
Posted: Mon Apr 22, 2013 5:54 am Post subject: |
|
|
Thanks again for the help guys. What I've done so far, got the internet working. It wasn't a driver issue, it was an issue that udev-200 caused, so I upgraded to eudev (which I use normally), and now the ethernet works. I still cannot get wireless to work though. I tried b43-firmware, and dmesg tells me that the version of the firmware is too new. I must either use different firmware or upgrade my kernel. I tried the former route first, installing b43-fwcutter and following the directions on http://linuxwireless.org/en/users/Drivers/b43 . This did not work, trying to activate the device (wlan0) still fails and dmesg complains. So I decided to try and install a newer kernel. Trying with Linux 3.7.10, which is stable kernel right now. However, SPL fails to compile, and since the majority of my filesystem is on ZFS (/home,/var,/usr, and so forth), this makes this kind of a show stopper for me. No idea why it won't compile, since it compiles on my desktop find, which is running the same kernel. I have no idea why this has to be so overcomplicated.
EDIT: I got SPL and ZFS to compile on Linux 3.7.10, it was a known bug, I discovered the answer here. Presumably my WiFi is working now. I was able to scan and connect to a network, I can't actually test it though, because where I am requires you to log on through a web browser, which I don't have at the moment. Once I test at home, I will mark this as solved. Thanks for all the help guys. _________________ "To design the perfect anti-Unix, make all file formats binary and opaque, and require heavyweight tools to read and edit them." - The Art of Unix Programming |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|