OS X 10.11 zerschieĂźt Recovery-System des Backups
Da El Capitan eine Datei falsch benennt, starten mit der OS-X-Wiederherstellung ausgerüstete Time-Machine-Backups nicht mehr im Recovery-Modus. Anwender können sich aber selbst helfen.
OS X El Capitan patzt bis hin zur aktuellen Version 10.11.2 bei der Time-Machine-Sicherung der Recovery-Partition. Dadurch sind Nutzer unter Umständen nicht mehr in der Lage, den Mac vom Wiederherstellungs-System der Backup-Platte zu starten. Das Apple-Logo beim Booten verwandelt sich nach kurzer Zeit in einen durchgestrichenen Kreis und der Computer fährt nicht hoch.
Time Machine sichert seit OS X 10.7 Lion zusätzlich zu den System- und Nutzer-Dateien eine Kopie der Recovery-Partition auf ein lokal per Kabel angebundenes Backup-Medium. Damit lässt sich ein Mac auch dann im Wiederherstellungsmodus booten, wenn man eine neue und somit leere Festplatte eingebaut hat und zudem die Internetwiederherstellung nicht nutzen kann. Voraussetzung ist, dass die Sicherung der "Systemdateien und -programme" nicht in die Time-Machine-Ausschlussliste aufgenommen wurde.
Fehlbenennung seit El Capitan
Die dafür nötigen Dateien speichert Time Machine in dem versteckten Unterordner "/Backups.backupdb/.RecoverySets/0/com.apple.recovery.boot" des Backup-Mediums. Vor El Capitan befindet sich dort unter anderem die Datei "kernelcache". Seit 10.11 heißt sie jedoch "prelinkedkernel". Problematisch ist, dass OS X beim Starten in "com.apple.Boot.plist" nachschlägt, welche Kernel-Datei es verwenden soll. Und hier steht weiterhin der alte Name "kernelcache", weshalb der Bootvorgang abbricht.
Wir konnten das Problem auf mehreren Macs unterschiedlichen Alters feststellen. Es ist aber nicht ganz auszuschließen, dass nur bestimmte Modelle betroffen sind. Unklar bleibt, wann genau Time Machine die Recovery-Partition auf Backup-Medien überhaupt aktualisiert. Die meisten von uns untersuchten Macs haben auch nach dem Recovery-Update von 10.11.2 das Wiederstellungssystem des Backups bis heute nicht aktualisiert – es blieb auf dem Stand von OS X 10.10.2 oder 10.10.3. Welche Version vorliegt, verrät die Datei "SystemVersion.plist" im Ordner "com.apple.recovery.boot".
Zum Nachvollziehen des Bugs mussten wir die Aktualisierung des Recovery-Systems erzwingen. Dazu haben wir den versteckten Ordner ".RecoverySets" gelöscht, das Backup-Medium aus den Time-Machine-Einstellungen entfernt, Time Machine deaktiviert und den Mac neu gestartet. Nach dem Reaktivieren legte OS X bei einer der nächsten Sicherungen die fehlerhafte Kopie der aktuellen Recovery-Partition des Macs an.
Recovery-System reparieren
Vorab: Da moderne Macs mit der regulären Recovery-Partition und der Internetwiederherstellung bereits hinreichend abgesichert sind (Details zu den Modellen bei Apple), empfiehlt sich der folgende Tipp nur für Mac-Nutzer, die auf Nummer Sicher gehen und nicht warten wollen, bis Apple den Fehler beseitigt. Auch ohne die aufgeführten Schritte lassen sich Macs aus dem Time-Machine-Backup vollständig wiederherstellen.
Damit das Backup-Medium wieder bootet, öffnen Sie zunächst im Finder den Ordner "Backups.backupdb". Führen Sie nun den Befehl "Gehe zum Ordner" im Gehe-Zu-Menü aus (Shift+Cmd+G) und tippen dort ".RecoverySets" ein. Nach dem Klick auf Öffnen befinden Sie sich innerhalb des versteckten Ordners. Dort sehen Sie in der Regel einen Unterordner mit dem Namen "0" – manchmal aber auch eine andere Zahl. Darin befindet sich der Ordner "com.apple.recovery.boot" mit der Datei "com.apple.Boot.plist". Öffnen Sie nun über Spotlight das Dienstprogramm "Terminal" und fügen Sie dort folgenden Code ohne Zeilenschaltung und ohne Betätigung der Return-Taste ein. Beachten Sie, dass am Ende ein Leerzeichen steht:
sudo sed -i '' 's/kernelcache/prelinkedkernel/g'
Anschließend ziehen Sie die Datei "com.apple.Boot.plist" vom Finder in das Terminal-Fenster, woraufhin der bereits eingefügte Befehl um den Pfad der Datei ergänzt wird. Nach Bestätigen mit Return müssen Sie abschließend Ihr Admin-Kennwort eingeben.
Mit dem Sudo-Kommando weist man das Terminal an, den Befehl "sed" mit erweiterten Rechten auszufĂĽhren. "sed" ist im Prinzip ein Suchen-Ersetzen-Befehl fĂĽr das Terminal, der in diesem Fall in der Plist-Datei den falschen Dateinamen durch den richtigen ersetzt.
Nach dieser Prozedur sollte das Backup-Medium wieder booten. Um das zu prüfen, starten Sie den Mac mit gedrückter Alt-Taste neu und wählen im Boot-Menü Ihr Backup-Laufwerk aus.
Update 16.12.15, 19:00 Uhr: Wir hatten zunächst den Tipp gegeben, die Datei "prelinkedkernel" in "kernelcache" umzubenennen. Um etwaige Probleme mit einem zukünftigen Update von Apple zu umgehen, wurde die Reparatur-Anleitung überarbeitet. Anwender, die zuvor die Umbenennung durchgeführt haben, sollten diese rückgängig machen und den Terminal-Befehl ausführen. (wre)