Kernel zerschossen - wiederherstellung ?

U

uwolf

Aktives Mitglied
Thread Starter
Dabei seit
26.09.2006
Beiträge
883
Reaktionspunkte
195
Hallo.

Nein, es ist (noch) nicht passiert, aber falls ...

Unter Linux konnte ich mehrere Kernels installieren, wenn mein neuer nicht ging haben ich halt den alten ausgewählt.

Wenn ich wirklich was falsch gemacht habe (z.B. inittab), dann konnte ich noch von einer Rettungs-CD booten und alles reparieren.

Gibt es was vergleichbares für OS X ?
Wenn nein, dann wäre ja jeder Versuch Darwin neu zu kompilieren und zu benutzen ein russisches Roulette.

Gruß
Uwe
 
du kannst den darwin kernel nicht wirklich für os x neu kompilieren und nutzen ;)
speziell für intel hält apple ein paar sachen zurück wegen der hacks...
 
Das geht so nicht, die Frage ist aber auch: Warum würde man das machen wollen? Man kann ein Darwin Kernel zumindest für PPC kompilieren, aber ich sehe da nur akademischen Nährwert.

Der Unterschied zu Linux ist, dass man das bei "normaler Arbeit" nicht muss: Darwin arbeitet mit Kernel Extensions, und die kann ich abschalten wenn sie Ärger machen. Ausserdem kann ich die zur Laufzeit zum Kernel dazuladen, also so lange die noch nicht fertig sind lade ich die ohnehin nicht beim Systemstart. Ich glaube bei Linux muss man da immer den kompletten Kern neubauen.

Vielleicht kann man auch ein anderes Kernel auswählen, aber ich -- als Entwickler von Kernel Extensions -- habe da nie die Notwendigkeit gesehen.

Alex
 
uwolf schrieb:
Wenn nein, dann wäre ja jeder Versuch Darwin neu zu kompilieren und zu benutzen ein russisches Roulette.
Nur so aus Interesse… ich kenn mich damit überhaupt nicht aus: Was würde es einem denn theoretisch bringen, den Kernel zu rekompilieren bzw. welche Anwendungen würden sich daraus ergeben?

Ansonsten kannst du, wenn du mal was zerbröselt hast, mit der OS X DVD alles wieder in den Ursprungszustand bringen ohne deine Daten und Einstellungen zu verlieren.
 
das ist halt der unterschied zwischen monolithischen linux und dem mach mikro-kernel (ok, xnu soll ja auch monolitisch bzw hybrid aus mikro und monolith sein) ;)
 
oneOeight schrieb:
das ist halt der unterschied zwischen monolithischen linux und dem mach mikro-kernel (ok, xnu soll ja auch monolitisch bzw hybrid aus mikro und monolith sein) ;)

Genau. In einem monolithischen Kernel (z.B. IRIX, ich glaube Linux auch) muss man den Kernel für einige Dinge neu bauen, dazu gehören auch viele Treiber. IRIX musste man beispielsweise neu kompilieren, um einen neuen Eingabetreiber einzubinden.

Die Apple Mach Implementation -- die Basis von xnu -- ist kein ganz reines Microkernel wie Mach 3, aber nah dran. Insb. gibt es zwischen den Teilen, die in einem echten Microkernel im Userspace leben würden, klare Schnittstellen und klar definierte Aufgabenbereiche.

Unter Darwin kann ich wirklich die allermeisten Treiber -- egal wie kompliziert -- bei Bedarf laden, und muss sie nicht ins Kernel selbst einbinden.

Alex
 
Naja, die Zeiten des wirklichen monolitischen Kernels sind bei Linux vorbei. Inwzischen ist da auch alles über Kernel-Module gelöst, die man nachladen und wieder entfernen kann.

Wer es allerdings braucht, kann bei Linux immer noch seinen ganz speziellen Kernel bauen.

Unabhängig davon, bei Mac OS X bringt es nichts sich OpenDarwin zu installieren. Denn damit ist man genauso weit wie bei GNU/Linux und man muss sich einen Window-Manager heraussuchen und installieren und so weiter. Denn der von Mac OS X geht nicht. Dieser ist verschlüsselt und signiert und man muss wissen wo der Schlüssel hinterlegt ist. Vor kurzem gab es zwar im Netz einen Hinweis wo die ganzen Informationen dazu zu finden sind. Aber das werde ich jetzt hier nicht ausbreiten. Außerdem habe ich es ehrlich gesagt auch wieder vergessen.
 
Also, im Prinzip geht das, theoretisch.

Allerdings kann muss man dafür auf die Platte des Rechners zugreifen können -- wenn ich das richtig verstanden habe.

Sonst natürlich geht es mit einem modifizierten Bootloader.

Alex
 
Hi,

below schrieb:
Genau. In einem monolithischen Kernel (z.B. IRIX, ich glaube Linux auch) muss man den Kernel für einige Dinge neu bauen, dazu gehören auch viele Treiber. IRIX musste man beispielsweise neu kompilieren, um einen neuen Eingabetreiber einzubinden.
Also soweit mir das bekannt ist, muss man bei IRIX nur den Kernel neu binden lassen, da die einzelnen Quellen schon vorkompiliert mitkommen. Auf Serversystemen hat man ja üblicherweise gar keinen Compiler, und trotzdem kann man hier zum Beispiel IPv6 recht einfach hinzufügen.

cu
 
sECuRE schrieb:
Also soweit mir das bekannt ist, muss man bei IRIX nur den Kernel neu binden lassen, da die einzelnen Quellen schon vorkompiliert mitkommen.

Rischtisch! Ist schon so lange her, da hab ich war verwechselt.

Alex
 
Zurück
Oben Unten