• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Wie spielt man die gptsync.efi richtig ins System?

kami83

Braeburn
Registriert
09.01.11
Beiträge
43
Hi,

so ich weiß das sda der Live-USB Stick ist. sdc ist meine SSD interne Festplatte und zu sdb finde ich nix. Da vermute ich mal das es der SD-Card Slot des Macbook ist. Der ist aber leer.

Gruß kami
 

Rastafari

deaktivierter Benutzer
Registriert
10.03.05
Beiträge
18.150
Dann benutzt du jetzt den Bootloader auf dem Live-Stick, um damit das fertig installierte OS auf der HD zu booten.
Aus diesem laufenden System heraus (es wird sich plötzlich auf 'sda' befinden) wiederholst du die Bootloader-Installation (vermutlich ein GRUB2 Loader?? ich benutze kein gentoo, also ...)
Dann wird das klappen.

(Alternativ dazu müsstest du im Installationssystem -sofern das bei gentoo angeboten wird- noch vor der eigentlichen Bootloader Installation die automatisch generierte /boot/grub/device.map editieren und das SSD-Festplattengerät dort von 'sdc' auf 'sda' abändern, und die anderen Einträge rauswerfen. Und die Installation dann auch auf diesem "getürkten" /dev/sda ausführen lassen.)
 

kami83

Braeburn
Registriert
09.01.11
Beiträge
43
Hi,

genauso sieht das aus. Ich boote mit dem Linux-Live-USB in das fertige Linux System.
Aber nun nochmal einen Step zurück. Ich habe ja refit so installiert wie du gesagt hast. Ich habe nun in refit wenn ich auf das Partitionstool gehe folgenden Output:

Code:
rEFIt - Partitioning Tool
       
       Starting gptsync.efi
       
       Current GPT partition table
       # Start LBA End LBA   Type
       1        40    409639 EFI System (FAT)
       2    409640 195722135 Apple RAID (Offline)
       3 195722136 196991671 Mac OS X Boot       
       4 196993024 234932223 Basic Data
       5 234932224 236976127 Linux Swap
       
       Current MBR partition table
       # A Start LBA End LBA   Type
       1           1    236978175 EE EFI Protective
 
       Status: MBR table must be updated.
       
       Proposed new MBR partition table
       # A Start LBA End LBA   Type
       1        40    409639 EE EFI Protective
       2    409640 195722135 AC Apple RAID
       3 195722136 196991671 AB Mac OS X Boot       
       4 * 196993024 234932223 Linux

Sollte ich das machen?

Muss ich da noch was anpassen?

Nächste Frage ist dann, wenn ich in das Live-Linux boote, mounte ich die Platte ja als chroot.
Mein devices.map sieht so aus:

Code:
(fd0)   /dev/fd0
(hd0)   /dev/sda
(hd1)   /dev/sdc

mein menu.lst so:

Code:
default 0
timeout 30
#splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title Gentoo Linux 2.6.24-r5
root (hd1,3)
kernel /boot/kernel-2.6.39.1 root=/dev/sdc4

und ich versuche über die Grub-console den bootloader zu installieren. Dafür sage ich folgendes:

Code:
    GNU GRUB  version 0.97  (640K lower / 9216K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename. ]

grub> root (hd1,3)
 Filesystem type is ext2fs, partition type 0x83

grub> setup (hd1,3)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd1,3)"... failed (this is not fatal)
 Running "embed /boot/grub/e2fs_stage1_5 (hd1,3)"... failed (this is not fatal)
 Running "install /boot/grub/stage1 (hd1,3) /boot/grub/stage2 p /boot/grub/menu.lst "... succeeded
Done.

grub>

Aber irgendwie kriege ich dann beim Booten aus refit immer nur den Fehler:

No bootable device -- inser boot disk and press any keyNo bootable device -- insert boot disk and press any key

Vielen Dank für Hilfe.

Gruß kami
 

Rastafari

deaktivierter Benutzer
Registriert
10.03.05
Beiträge
18.150
Ich habe nun in refit wenn ich auf das Partitionstool gehe folgenden Output
Status: MBR table must be updated.
Sollte ich das machen?
Nein.
Das Tool versucht eine Hybrid-Partitionstabelle zu erzeugen wie man sie für den Betrieb eines Windows Systems zwingend brauchen würde.
Erstens ist das gar nicht notwendig denn der Linux Kernel (ab 2.4.???) kann recht gut mit der GPT-Partitionstabelle leben. Genauer gesagt: Wenn er eine vorfindet, zieht er sie einer evtl. zusätzlich auch noch vorhandenen "hybriden" MBR-Tabelle vor. (Das Verhalten ist in diesem Fall also fast das gleiche wie unter OS X).
Ein Problem mit den GPT-Partitionen gibt es allerdings während des Bootvorgangs mit dem bei dir noch eingesetzten Grub-Legacy (0.97), weil der mit einer GPT-Tabelle noch rein gar nichts anfangen kann. (GRUB2 kann dagegen die GPT lesen und man kann dort selbst entscheiden welche der Tabellenformen verwendet werden soll. GRUB2 kann notfalls auch die althergebrachte Apple-Partitionierung "APM" oder "BSD-Slices" verwenden).
Zweitens wären die vorgeschlagenen Werte für deine individuelle Konfiguration absolut nicht sinnvoll gewählt.

Muss ich da noch was anpassen?
Ja und nein.
Ich rate dazu die Partitionierung nochmal etwas zu verfeinern um auf die später mit Sicherheit mal kommende Installation eines aktuellen GRUB-2 Loaders besser vorbereitet zu sein. Dazu ist noch eine weitere kleine Hilfspartition anzulegen.
(Freien Platz dafür hast du jedenfalls noch genügend, die bereits eingerichteten Bereiche brauchst du deswegen nicht mehr zu verändern.)
Dieser Feinschliff lässt sich auch zusammen mit Grub-Legacy einsetzen um den Bootvorgang etwas robuster zu gestalten. Allerdings muss man das komplett manuell einrichten, denn weder das Gentoo-Installationssystem noch die alte GRUB-Shell erwarten sowas.

Nächste Frage ist dann, wenn ich in das Live-Linux boote, mounte ich die Platte ja als chroot.
Nein, du mountest sie beim booten als ganz normales Root-FS.
("chroot" dient nur der vorübergehenden Simulation eines anderen Root-FS in einem bereits laufenden System.)

mein menu.lst so:
...
title Gentoo Linux 2.6.24-r5
root (hd1,3)
kernel /boot/kernel-2.6.39.1 root=/dev/sdc4
Tja, das wurde automatisiert erstellt und ist unbrauchbar. Das wirst du editieren müssen. Aber das kommt erst später.
Damit du richtig solide Qualitätsarbeit nach "Rasta-Norm 08/15" einsacken kannst :) ...
...brauche ich noch eine kleine Information über die Binaries, die Gentoo für sein GRUB-Paket (selbst) compiliert hat.
Falls du diese Aktion mit den Loadern aus einer anderen Distri nachvollziehen willst, musst du die entsprechend geänderten Werte verwenden.
(Nur als kleiner Hinweis für andere, die das gerne nachmachen möchten...)
Was ich bräuchte, wären die genauen Dateigrössen des bei dir installierten GRUB.
Also ein:
Code:
ls -lAR /boot/grub
...und zwar in deinem bereits installierten Gentoo auf der HD. (Das Live-System enthält nicht unbedingt die selben Dateiversionen, also aufpassen.)
Vor allem die Grösse von "stage2" wäre wichtig, wenn ich mich recht erinnere müssten das so um die 150 bis 200 KB sein, right?

Aber irgendwie kriege ich dann beim Booten aus refit immer nur den Fehler:
No bootable device -- inser boot disk and press any key
Das ist einfach zu erklären: Die Setup-Routine hat es nicht geschafft, den notwendigen Ladecode im MBR zu platzieren bzw ihn mit korrekten Parametern zu patchen. Kein Drama.
 

kami83

Braeburn
Registriert
09.01.11
Beiträge
43
Hi,

gerne hier hast den Output.

Code:
# ls -lAR /boot/grub
/boot/grub:
total 488
drwxr-xr-x 3 root root   4096 Sep  4 11:22 boot
-rw-r--r-- 1 root root    197 Sep  4 11:38 default
-rw-r--r-- 1 root root     45 Aug 31 19:18 device.map
-rw-r--r-- 1 root root   8772 Sep  4 13:38 e2fs_stage1_5
-rw-r--r-- 1 root root   7932 Sep  4 13:38 fat_stage1_5
-rw-r--r-- 1 root root   7184 Sep  4 13:38 ffs_stage1_5
-rw-r--r-- 1 root root    582 Sep  4 10:17 grub.conf
-rw-r--r-- 1 root root   7192 Sep  4 13:38 iso9660_stage1_5
-rw-r--r-- 1 root root   8644 Sep  4 13:38 jfs_stage1_5
lrwxrwxrwx 1 root root      9 Aug 31 19:18 menu.lst -> grub.conf
-rw-r--r-- 1 root root   7380 Sep  4 13:38 minix_stage1_5
-rw-r--r-- 1 root root   9760 Sep  4 13:38 reiserfs_stage1_5
-rw-r--r-- 1 root root  33856 Sep  4 13:38 splash.xpm.gz
-rw-r--r-- 1 root root    512 Sep  4 13:38 stage1
-rw-r--r-- 1 root root 107736 Sep  4 13:38 stage2
-rw-r--r-- 1 root root 107736 Sep  4 11:38 stage2.old
-rw-r--r-- 1 root root 107736 Sep  4 13:38 stage2_eltorito
-rw-r--r-- 1 root root   7452 Sep  4 13:38 ufs2_stage1_5
-rw-r--r-- 1 root root   6804 Sep  4 13:38 vstafs_stage1_5
-rw-r--r-- 1 root root   9576 Sep  4 13:38 xfs_stage1_5

/boot/grub/boot:
total 4
drwxr-xr-x 2 root root 4096 Sep  4 11:29 grub

/boot/grub/boot/grub:
total 220
-rw-r--r-- 1 root root    197 Sep  4 11:29 default
-rw-r--r-- 1 root root     45 Sep  4 11:22 device.map
-rw-r--r-- 1 root root   8772 Sep  4 11:29 e2fs_stage1_5
-rw-r--r-- 1 root root   7932 Sep  4 11:29 fat_stage1_5
-rw-r--r-- 1 root root   7184 Sep  4 11:29 ffs_stage1_5
-rw-r--r-- 1 root root   7192 Sep  4 11:29 iso9660_stage1_5
-rw-r--r-- 1 root root   8644 Sep  4 11:29 jfs_stage1_5
-rw-r--r-- 1 root root   7380 Sep  4 11:29 minix_stage1_5
-rw-r--r-- 1 root root   9760 Sep  4 11:29 reiserfs_stage1_5
-rw-r--r-- 1 root root    512 Sep  4 11:29 stage1
-rw-r--r-- 1 root root 107736 Sep  4 11:29 stage2
-rw-r--r-- 1 root root   7452 Sep  4 11:29 ufs2_stage1_5
-rw-r--r-- 1 root root   6804 Sep  4 11:29 vstafs_stage1_5
-rw-r--r-- 1 root root   9576 Sep  4 11:29 xfs_stage1_5

die menu.lst habe ich schon angepasst die ist nicht original. aber sie funktioniert halt nicht.

Sag mal hast du irgendwie ICQ oder IRC würde gerne mal nun kurz das direkt durchsprechen??

Gruß kami
 

kami83

Braeburn
Registriert
09.01.11
Beiträge
43
Hallo,

ich hoffe du hast noch ein paar Tipps für mich, was ich jetzt weitermachen kann. Die zusätzliche Bootpartition werde ich sicher noch einrichten. Kann man nicht auch gleich Grub2 für alles nehemen und darüber Lion udn Linux booten? Wäre das vielleicht schneller? Oder wie richte ich das jetzt ein auf meinem Rechner? Habe jetzt inzwischen Grub2 unter Gentoo auch installiert. Aber immer noch dasselbe Problem.

Gruß kami
 

Rastafari

deaktivierter Benutzer
Registriert
10.03.05
Beiträge
18.150
Etwas Gelduld bitte. Die Anleitung wird ein "Mehrzeiler". :)
 

kami83

Braeburn
Registriert
09.01.11
Beiträge
43
Hi,

na dann warte ich doch gerne. Aber bin sehr gespannt wie es weitergeht. Will das unbedingt zum Laufen haben :)

Gruß kami
 

kami83

Braeburn
Registriert
09.01.11
Beiträge
43
Hi Rastafari,

ich bin echt gespannt. Hast du schon eine Hilfe oder Infos für mich, wie ich das richtig Installieren kann? Kann ich nicht GRUB2 verwenden auch wenn ich FileVault2 drauf habe und dann direkt über Grub2 ins System booten?

Vielen Dank für die Hilfe.

Gruß kami
 

Rastafari

deaktivierter Benutzer
Registriert
10.03.05
Beiträge
18.150
Das sind Diskussionen unter völlig Ahnungslosen.
Bei der Vorstellung, irgend etwas davon könne sich evtl. in meinem Langzeitgedächtnis festsetzen, wünsche ich mir eine "secure delete" Funktion für die grauen Zellen.

Ich verstehe ein wenig deine Ungeduld, aber bitte halte dich mit irgendwelchem Gebastel zurück. Ich möchte die Beschreibung so verfassen, dass auch ein wenig Hintergrundinfo dabei rüberkommt um anderen so die Möglichkeit geben, die Vorgehensweise zu adaptieren. Ich fang schon mal an und stelle Teil 1 hier rein, das hilft dir zwar noch nicht aber du kannst dich ja schon mal ein wenig reinlesen.

hast du irgendwie ICQ oder IRC
Eher würde ich mir rostige Nägel ins Knie schlagen lassen, sobald ich daran auch nur denke. Und zwar so viele wie nötig sind, bis dieser Schmerz aufhört.

kann ich nicht auch direkt alles aus grub2 booten?
Natürlich. Was anderes macht refit ja auch nicht, als an GRUB zu übergeben (wenn du dort ein Linux oder Windows auswählst).

vielleicht ist es dann einfacher wenn ich Refit einfach weglasse?
Wenn du dich das fragst, wozu hast du's dann überhaupt haben wollen?
rEFIt ändert an der ganzen Grub/Linux-Installationsprozedur genau ---> gar nichts.

Egal, letz tu it.

1)
Zunächst einmal bootest du OS X von einem externen Medium.
Version ist egal, jedes System ab 10.4.8 würde genügen, sofern es auf diesem Rechner nur läuft. Die Recovery-Partition geht aber nicht als Startvolume - es sei denn du hast eine auf einem externen Medium eingerichtet (oder einer zweiten internen HD). Wichtig ist dass der Start von einem anderen Gerät stattfindet.

Dort öffnest du ein Terminal.
(Wenn du dafür ein vollständiges externes System benutzt, sind alle schreibend wirksamen Befehle mit zusätzlichem "sudo" auszuführen. Das minimale Installationssystem auf DVD/RecoveryHD braucht das nicht, da bist du sowieso schon 'root'.)

2)
Zur Sicherheit verifizierst du erst mal, ob deine interne HD (wie zu erwarten) die Zuordnung "/dev/disk0" besitzt. Das ist fast immer so, aber eben nur fast. Du möchtest nicht auf ein falsches Gerät zugreifen:
Code:
diskutil list
Falls doch was anderes verwendet wird kannst du ruhig weitermachen, halt einfach nur mit einem entsprechend korrigierten Wert.

3)
Dann müssen erst sämtliche geladenen Volumes von der HD deaktiviert werden.
Nachdem das erfolgreich war, kannst du die bestehende GPT-Partitionierung anzeigen lassen:
Code:
diskutil unmountDisk disk0

gpt -r show /dev/disk0
Dort sollte jetzt am Ende der HD zwischen der letzten Partition und der Backup-Partitionstabelle ein noch freier Bereich von 2015 Sektoren zu sehen sein. Der bietet sich wie ein ofenfrisches Brötchen dafür an, den GRUB Loader da rein zu pflanzen.
Der ganze Trick dabei ist, hierfür eine eigene Partition (mit einer eigens dafür reservierten Typbezeichnung) zu erstellen, die anstatt eines aktivierbaren Dateisystems nur das nackte Ladeprogramm enthält.
Nochmals ganz langsam: Keine Formatierung, nix lesbares, nur der nackte Code.
Das aber an einer Stelle an der man ihn ganz simpel lokalisieren kann, und an der er auch nicht unabsichtlich durch was anderes überschrieben wird. Mounten kann man diese Partition hinterher nicht, aber das ist auch gar nicht so beabsichtigt.
Wählt man hierfür den richtigen Partitionstyp (der als kryptische GUID zu definieren ist), dann wird ein später mal zu installierender GRUB-2 das automatisch erkennen und sein eigenes Ladeprogramm ganz von selbst dort platzieren, wenn man ihn "in den MBR" installiert. Einen Grub-Legacy muss man noch ausdrücklich dazu überreden, dort Platz zu nehmen.

Die freien 2015 Sektoren sind zum Schweinefüttern genug für diese "BIOS Boot Partition".
Ein wenig "Padding" davor und danach darf schon auch sein, also kommt sie mit diesem Befehl hier grade richtig zu liegen:
Code:
gpt add -i 6 -b 236976136 -s 2000  \
  -t "21686148-6449-6E6F-744E-656564454649" /dev/disk0;
Kleine Anmerkung für Nachahmer:
'gpt' weigert sich das zu tun, sofern es irgendwelche kollidierenden Einträge in der MBR-Tabelle gibt. Die MBR-Tabelle muss vor der Bearbeitung in ihren Normalzustand versetzt werden, in dem es nur einen einzigen Schutzeintrag gibt. Erst nachdem alle Änderungen an der GPT abgeschlossen sind, können -und müssen- die MBR-Einträge wieder synchronisiert werden.


4)
Dann folgt ein kleiner, eher "kosmetischer" Akt. Die Partition möchte gerne einen eigenen, beschreibenden Namen bekommen. Da nach jeder Änderung der Partitionierung (wie gerade eben) der Dienst "diskarbitrationd" getriggert wird und sofort wieder alle erkennbaren Volumes mountet, müssen sie dazu erst wieder deaktiviert werden.
Code:
diskutil unmountDisk disk0

gpt label -i 6 -l "BIOS Boot Partition" /dev/disk0

diskutil unmountDisk disk0

5)
Da hier ein kritisches Stück Programmcode abgelegt werden soll ist es eine gute Idee, erst mal den gesamten Partitionsbereich mit Nullen zu überschreiben. Es darf nämlich unter keinen Umständen passieren, dass später evtl. noch herumliegender "Garbage" zusammen mit dem Code eingelesen und fehlinterpretiert wird. Das könnte durchaus passieren, da der MBR-Code nicht bytegenau, sondern rein blockorientiert arbeitet. Vorsicht ist die Schwiegermutter im Porzellanfachgeschäft.
Code:
dd if=/dev/zero of=/dev/disk0s6

diskutil unmountDisk disk0
Und weil wir grade dabei sind, werden auch gleich noch evtl. übriggebliebene Reste von unbrauchbarem MBR-Ladecode eliminiert. Ich brauche wohl nicht zu erwähnen, dass du dich bei solchen Luftangriffen besser nicht vertippst.
Code:
dd if=/dev/zero of=/dev/disk0 conv=notrunc bs=1 count=446

diskutil unmountDisk disk0
Bei dieser Gelegenheit drücken wir uns jetzt noch eine kleine Korinthe durch den anatomischen Südpol.
Linux verlangt das zwar nicht, aber jede via BIOS gebootete HD sollte eine Datenträger-ID für Windows NT besitzen. Hierfür darfst du dir selbst zwei beliebige alphanumerische Zeichen ausdenken, die sich wiederholen sollten. (Microsoft spricht zwar nur von einem 32-bittigen Zähler, aber Kombinationen die nicht nach dem beschriebenen Schema erstellt wurden haben sich schon oft als seltsame Ursache erwiesen, die den NT Kernel beim Boot einfrieren lässt. Das Mirakel der "illegalen" Werte kennt nur MS allein.)
Wichtig ist, dass die Kennung jeder deiner HDs individuell sein und bleiben muss.
Beispiel:
Code:
echo  "GaGa"  |  \
   dd of=/dev/disk0 conv=notrunc bs=1 count=4 seek=440

diskutil unmountDisk disk0

6)
Jetzt kommt der vergnügliche Teil, es wird Zeit sich die MBR-Partitionierung schön zu reden.
Wie schon mal erwähnt, das ist nur für das alte Grub-Legacy nötig, der neuere bräuchte das nicht mehr. (Dafür ist dieser erheblich schwieriger zu konfigurieren, wenn man seine Menüdatei manuell erstellen muss, die fällt um einiges komplexer aus.) Ratsam ist es in jedem Fall das trotzdem zu erledigen, denn zB auch die Lader von diversen verfügbaren Live-Systemen könnten diese Hilfestellung noch benötigen (und ein Windows sowieso).

Zunächst einmal ein kleines "Do & don't do" für solche "hybriden" MBR-Tabellen. Drei Teile:
a) Was im MBR unbedingt vorhanden sein muss
b) Was dort vorhanden sein kann/soll
c) Was dort keinesfalls vorhanden sein darf

--- 2 B continued ---
 

kami83

Braeburn
Registriert
09.01.11
Beiträge
43
Hallo,

ich wollte auch nicht stressen. Freu mich sehr über eine qualifizierte Anleitung. Vielleicht habe ich es nur falsch verstanden oder noch nicht gesehen, aber warum kann man GRUB2 nun nicht einfach direkt als Bootloader für LION und Linux einsetzen und refit ganz weglassen?
Außerdem wie ist das mit der Wiederverwendbarkeit nach einem Lion update? Muss ich da alles neu machen?
Und warum ist das so kompliziert, wenn doch im Inet einfach nur gesagt wird, es reicht den Grub in den Sektor der Platte zu schieben? Jeder USB-Stick wird doch auch so einfach gebootet? Wo ist da das Problem?

Vielen dank.

Gruß kami
 

Rastafari

deaktivierter Benutzer
Registriert
10.03.05
Beiträge
18.150
warum kann man GRUB2 nun nicht einfach direkt als Bootloader für LION und Linux einsetzen
Weil der für den Start von OS X erforderliche XNU Lader von GRUB2 so dermassen buggy ist, dass man ihn nicht mal annähernd als verwendbar einstufen kann. Der Start eines Darwin-Kernels via Grub endet mit sehr hoher Wahrscheinlichkeit nur in einem Freeze/Reboot oder einem sehr früh eintretenden Kernel-Trap (der kleine Bruder der Kernel-Panik).
Und bei verschlüsselten Partitionen (FileVault) steht er dann völlig aussen vor, da geht gar nichts.

Ein Mac startet beim Power-On immer zunächst im EFI Modus auf, das ist seine native Firmwareumgebung. Ein OS X wird direkt in diesem Modus mittels eines dazu passenden EFI-Laders gebootet ("/System/Library/CoreServices/boot.efi")
Wenn dagegen ein "Legacy OS", d.h. ein BIOS-gestütztes System, die gespeicherte Vorauswahl ist (oder überhaupt kein geeignetes EFI-System gefunden werden konnte), dann kann und wird EFI erst mal ein integriertes Kompatibilitätsmodul nachladen, den sog. "CSM BIOS Layer".
Ab diesem Zeitpunkt wird der Rechner sich verhalten wie ein althergebrachtes BIOS System, und aus diesem Modus gibt es kein zurück in die EFI-Umgebung mehr ohne den Rechner neu zu starten. In diesem BIOS-Modus durchläuft das System alle Schritte nochmals die nach dem Herdware- und RAM-Test folgen, allerdings etwas anders, eben so wie das nun mal bei BIOS geschieht. Und da auch der Grub Lader selbst auf BIOS aufsetzt, kann er erst jetzt geladen werden und seine Arbeit beginnen. Problem: Im BIOS Modus funktionieren keine EFI Lader mehr.
Um zu diesem Zeitpunkt doch noch ein OS X aus dem Grub Menü heraus zu starten bräuchtest du also die weitere Unterstützung einer zusätzlichen Emulationsschicht, die erneut ein EFI simuliert... also eine Emulation innerhalb einer anderen Emulation...
Man kann solche Versuche mit zwei Worten beschreiben: "Hirnfick, verblödeter!"

Es gibt in GRUB2 einen speziellen Befehl um doch noch in OS X zu starten. Der nennt sich zB:
Code:
appleloader HD
...und bewirkt im Prinzip nichts anderes als einen erneuten Reboot. Von hinten von der Niere über die Schulter schräg nach unten ins Kinn geschossen, aber: "Best Solution".

und refit ganz weglassen?
Wer zum Geier hat dir erzählt dass du refit unbedingt bräuchtest?
Das Teil macht die Auswahl nur hübscher und -weil grafisch- mehr "mac-like", sonst gar nix.
Du brauchst nur im bereits in der Hardware vorhandenen Bootmanager die Option "Windows" zu wählen, dann landest du im Grub-Menü und kannst zwischen deinen eingerichteten "Legacy" Betriebssystemen auswählen.
Dass unter dem generischen Festplattensymbol irrtümlicherweise "Windows" statt "GRUB" steht und dort kein aparter dumm rumsitzender Tux zu sehen ist, ist ein rein kosmetisches Ding das du halt ignorieren musst, das ist alles.

Außerdem wie ist das mit der Wiederverwendbarkeit nach einem Lion update? Muss ich da alles neu machen?
Ein erst mal installierter Grub wird so lange existieren, bis du ihn mit was anderem überschreibst. OS X wird das niemals tun, es sei denn du löschst vorsätzlich die gesamte HD (aber "Windows Setup" oder ein Linux OS-Installer schon, und zwar ohne Skrupel und Pardon).

Und warum ist das so kompliziert, wenn doch im Inet einfach nur gesagt wird, es reicht den Grub in den Sektor der Platte zu schieben?
Im Internet wird viel gesagt. Chemtrails, Erdstrahlen, ehrliche Politiker...
Einen Grub Loader an einen bestimmten Ort zu kopieren genügt in keinem Fall. Es ist immer erforderlich, ihn mit den korrekten Zielparametern zu individualisieren und an die Gegebenheiten des Mediums anzupassen.
D.h. eine "einfache Kopie" kann nur dann erfolgreich verlaufen, wenn jemand anders diese Konfiguration bereits vorweg genommen hat und der Lader auf einem Medium installiert wird, dessen Layout fest vorgegeben und daher schon vorab bestens bekannt ist.
Das ist bei einem sowieso komplett zu löschenden USB Stick machbar, bei einer bereits wahlfrei und individuell konfigurierten HD auf keinen Fall.

Jeder USB-Stick wird doch auch so einfach gebootet? Wo ist da das Problem?
BIOS-gestützte Bootloader brauchen spezielle, proprietäre, streng hardwaregebundene und lizenzpflichtige BIOS-AddOns, um mit USB Medien zusammenzuarbeiten. Ohne solche BIOS-Zusatzmodule (die mit dem quelloffenen Konzept von EFI lizenztechnisch nicht vereinbar sind) ist ein Start von USB technisch komplett unmöglich.
Würdest du gerne für deinen Mac ca. 20 bis 35 Euro mehr bezahlen, nur um auch ein anachronistisch BIOS-gebundenes Linux von USB starten zu können? Für eine unscheinbare Software, die für nichts anderes gut ist? (so wie du das beim Kauf eines "normalen" PC unwissentlich tust?)
 

kami83

Braeburn
Registriert
09.01.11
Beiträge
43
Hi,

vielen Dank, das erklärt einiges aber einen Punkt habe ich noch nicht ganz verstanden, wenn ich einen USB-Stick habe den Refit booten kann, warum kann ich den dort installierten Bootloader nicht auch genauso für Linux Gentoo verwenden. ALso was ich damit meine, jede x-beliebiges Linux Image kann ich auf einen USB-Stick spielen und booten und unter den vielen Guides im Inet sieht es ja total simpel aus mal eben Linux auf ein Macbook zu spielen nur warum ist das bei mir so kompliziert?

Aber ich will dich nicht aufhalten, nimm dir lieber die Zeit deinen Guide zu ende zu schreiben. Der sieht nämlich schon echt gut aus :)

Gruß kami
 

Rastafari

deaktivierter Benutzer
Registriert
10.03.05
Beiträge
18.150
warum ist das bei mir so kompliziert?
Weil du nicht von CD, sondern von einem USB Gerät installiert hast, wobei der Kernel vermutlich ein ISO-Image benutzt und dazu ein CD-Gerät im RAM nur simuliert hat. (Wobei der Umstand dass das überhaupt gebootet hat, sowieso schon als reiner Glücksfall anzusehen ist.)
Dadurch hast du das Installationssystem mit einer völlig "verdrehten" BIOS-Reihenfolge der Geräte verwirrt.
Der Lader, den du schon (irgendwo) installiert hast, sucht ganz einfach nach dem falschen Gerät (falls die erste Stufe des Laders nicht ebenfalls schon nicht gefunden wird, je nachdem wo der jetzt tatsächlich steckt).
 

kami83

Braeburn
Registriert
09.01.11
Beiträge
43
Hi,

ich bin nun einen Schritt weiter. Ich habe mit gptsync meinen MBR wie von refit gefordert, geupdatet. Dadurch kann er nun super von der Linux Partition ohne Probleme booten. Was nun nicht mehr klappt, ist von externen Medien zu booten. Er erkennt einen USB-Stick zwar und zeigt Ihn auch im Menü an. Aber wenn ich ihn zum Booten auswähle, dann geht dies nicht und er bootet immer die Linux Partition. Außerdem findet auhc Grub den USB-device nicht, wenn ich Ihn per chainloading versuche anzusprechen.

Gruß kami