Fedora 15 auf MacBook 5,1 allein installieren

9 minute read Published:

Dieser Artikel stammt aus meinen früheren Wordpress-Instanzen und steht hier aus Gründen der Nostalgie.

Aus der Zeit, als ich Apple noch für toll und besser als M$ hielt, stammt mein MacBook 5,1. Es handelt sich um ein Core 2 Duo-Gerät im 13″ Unibody-Gehäuse. Ich habe darauf schon länger Fedora 14 am laufen aber heute habe ich es mit Fedora 15 installiert und dabei die brach liegende Mac OS X Installation in 50 GB zusätzlichen Speicher für mein Linux verwandelt.

Ich habe auf dem Gerät die x86-Variante von Fedora 15 installiert. Diese ist mittels

PAE in der Lage, die 4 GB installierten Arbeitsspeichers zu verwalten. Ich hatte vorher die 64 Bit-Variante installiert. Allerdings hatte ich das Gefühl, dass diese bei 4 GB realen Speicher nicht wirklich besser performt. Meinungen?

Ich habe alle Schritte mit der 32bit-DVD vollzogen. Soweit ich weiß, haben die Live-CDs keine EFI-Unterstützung. Die beschriebenen Schritte sind aber für 64bit analog.

Hier erstmal ein paar Hardwaredaten:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$ lspci
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 Device 0a98 (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 IDE interface: nVidia Corporation MCP79 SATA 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)
1
2
3
4
5
6
7
8
9
10
$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 005: ID 05ac:8507 Apple, Inc. Built-in iSight
Bus 004 Device 002: ID 0a5c:4500 Broadcom Corp. BCM2046B1 USB 2.0 Hub (part of BCM2046 Bluetooth)
Bus 003 Device 002: ID 05ac:8242 Apple, Inc. IR Receiver [built-in]
Bus 003 Device 003: ID 05ac:0237 Apple, Inc. Internal Keyboard/Trackpad (ISO)
Bus 004 Device 003: ID 05ac:8213 Apple, Inc.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz
stepping        : 6
cpu MHz         : 1596.000
cache size      : 3072 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm dts tpr_shadow vnmi flexpriority
bogomips        : 4775.92
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz
stepping        : 6
cpu MHz         : 1596.000
cache size      : 3072 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
apicid          : 1
initial apicid  : 1
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm dts tpr_shadow vnmi flexpriority
bogomips        : 4776.03
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

Die Installation auf dem MacBook verlief wie von Fedora gewohnt, ohne Probleme. DVD rein, ALT-Taste beim Booten gedrückt halten und wenn der EFI-Boot-Manager die Boot-Optionen darstellt die DVD mit dem schönen Titel „Windows“ auswählen.

Bei der Installation muss man eigentlich nur beim Partitionieren aufpassen. Ich habe die Partitionen manuell angelegt und dabei folgendes Schema vergeben:

Device Mount-Punkt Größe Bemerkung
/dev/sda1 /boot/efi 200MB Die habe ich als einzige Partition nicht gelöscht und von OS X übernommen. Enthält die EFI-Firmware
/dev/sda2 /boot 500MB Eine unverschlüsselte Fedora-Boot-Parition, groß genug für Preupgrade
/dev/sda3 VG 320GB Den restlichen Platz habe ich für eine LVM-Volume-Group vergeben, die ich verschlüsselt habe.
lv_swap swap 8GB Der SWAP liegt auf der verschlüsselten VG, damit beim Schlafmodus keine Anwendungsdaten unverschlüsselt auf dem Rechner liegen.
lv_root / 285GB Die Root-Partition

Über den Sinn und Unsinn die Root-Partition noch in eine /home, /usr, etc. zu zerteilen lässt sich streiten. Ich habe für mich die Erfahrung gemacht, dass ich bei Desktop-„Upgrade“-Installationen gerne die meisten Konfigurationen im Home-Verzeichnis lösche, das gleiche für die meisten System-Konfigurationen. Meist bin ich dann schneller mit einem Komplett-Backup. Außerdem entdecke ich so regelmäßig neue Features, die ich bei einem automatischen Update übersehen hätte.

Danach habe ich die Installation weiteres Nachdenken abgeschlossen und den Rechner neu gestartet. Jetzt kam die Ernüchterung. Ein blinkender Ordner mit einem Fragezeichen signalisierte mir, dass das System kein Betriebssystem vorgefunden hat.

Glücklicherweise fand ich die Lösung in zwei Bordmitteln, namentlich parted und gptsync. Was war passiert? Das Installationsprogramm von Fedora hat die Angewohnheit, der Partition mit dem Boot-Loader das Merkmal „bootbar“ zu verschaffen. Diese Markierung ist wichtig für Systeme mit einem BIOS, also nicht für EFI-Systeme, weil das BIOS so feststellt wo sich Betriebssysteme befinden. Bei EFI gibt es allerdings nur ein zu bootendes System, und das ist EFI selbst. Findet der Rechner nun zwei bootbare Partitionen auf einer Platte, dann steigt er aus.

Die Lösung besteht also darin, der Partition /boot das Merkmal bootbar zu entziehen. Zusätzlich müssen die Änderungen, welche in Linux gemacht wurden, auf dsa GPT-Partitionsschema übertragen werden.

Da das System nicht bootet und kein rEFIt installiert ist, muss das mit dem Rettungs-System auf der Fedora DVD gemacht werden. Lege dazu die DVD erneut ein und wähle „Rescue installed system“. Folge den Anweisungen auf dem Bildschirm, bis du eine Bash hast (Enter, Enter, Enter, … 😉 ).

Ich hatte dabei das Phänomen, dass die DVD nicht mehr zum Booten zu Verfügung stand. Die Lösung bestand darin, den PRAM zu zappen, also den Rechner auszuschalten, einzuschalten und dann gleichzeitig die Tasten ALT-CMD-P-R gedrückt zu halten, bis zweimal der Startton ertönt ist.

Nun führe die folgenden Befehle aus:

1
2
3
4
$ parted /dev/sda
(parted) toggle 2 boot
(parted) quit
$ gptsync /dev/sda

Achtung! Die 2 in „toggle 2 boot“ ist die zweite Partition, also in meinem Fall /dev/sda2. Welche das bei dir ist, erfährst du mit

1
2
3
4
5
6
7
8
9
10
$ parted /dev/sda print
Model: ATA FUJITSU MHZ2320B (scsi)
Disk /dev/sda: 320GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End    Size   File system  Name                  Flags
1      20.5kB  210MB  210MB  fat32        EFI System Partition  boot, hidden
2      211MB   735MB  524MB  ext4                                        boot
3      735MB   320GB  319GB

Die zweite Partition ist eben jene „/boot“, und nach dem Befehl von oben verschwindet unter „Flags“ der Bereich boot.

Nach einem Neustart sollte nun endlich Linux starten. Allerdings ist nach dem Neustart lange ein grauer Bildschirm zu sehen. Nach einiger Zeit übernimmt dann GRUB das Kommando und der Bildschirm wird schwarz oder blau.

Ab hier ist es wieder einfacher.

Erstmal habe ich alle Updates installiert und neu gestartet:

1
2
3
4
5
$ yum update

...

$ reboot

Dann habe ich das RPMfusion-Repository hinzugefügt:

1
su -c 'yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm'

Anschließend habe ich die proprietären Treiber für den WLAN-Chipsatz und die Grafikkarte installiert:

1
$ yum install kmod-nvidia kmod-wl xorg-x11-drv-nvidia-libs

Damit der nvidia-Treiber nicht mit dem nouveau-Treiber kollidiert, musste ich noch als root folgendes ausführen:

1
$ dracut -f /boot/initramfs-$(uname -r).img $(uname -r)

Das war es auch schon mit der Hardware. Alles andere bis auf die Tastaturbeleuchtung funktioniert Out-of-the-Box. Selbst die Webcam, bisher immer ein Krampf, tut fein ihren Dienst.

Ich hatte unter KDE noch das Problem, das nach der nvidia-Installation die Schriften komisch aussahen. Das konnte ich dann aber beheben, indem ich unter Systemeinstellungen -> Erscheinungsbild -> Schriften die DPI-Zahl auf 96 dpi gezwungen habe.

Eine Sache noch: Neuerdings kann man in KDE unter Keyboard Apple MacBook Keyboard (intl) auswählen. Damit bekommt man dann unter Fedora die gleichen Keybindings wie unter Mac OS X, also bspw. ALT-L für ein „@.