Mein neuer alter Maccy, oder: ein (fast) neues MacBook für unter 500€

Sonntag, 19.3.2017, 10:17 > da]v[ax

Im Gegensatz zu den meisten Apple-Anwendern bin ich eher ein late adopter. Mein MacBook Pro vom Frühling 2009 hatte bis vor Kurzem noch OS X 10.8 (Mountain Lion) installiert und selbst das gar nicht mal so lange. Allerdings hatte ich zunehmend das Problem, dass immer mehr Programme zu mir sagten "sorry, auf diesem alten Mist gedeihen wir nicht mehr". Erst machte Little Snitch 4 die Grätsche, dann erwischte es Chrome und vor einigen Wochen wollte mir dann auch Firefox keine Updates mehr gönnen. Damit war es dann soweit: Maccy brauchte eine Updatekur mit möglichst neuem OS und wahrscheinlich auch einem kleinen Performancekick.

Leider fährt Apple die unsägliche Politik, so viel Hardware wie nur irgend möglich verkaufen zu wollen - so bekommt man z.B. im App-Store nur noch das allerneueste macOS (derzeit 10.12 Sierra), das natürlich auf meinem 8-jährigen Recken nicht mehr laufen wollte.

Was folgte, war eine mittelgroße Odyssee, an deren Ende ein fast neuer Rechner mit SSD und OS X 10.11.6 (El Capitan) stand. Die Reisekosten beliefen sich dabei bisher auf deutlich unter 500 Euro. Und das kam so:

Ich wollte das neue Betriebssystem nicht einfach über das vorhandene System drüber bügeln, sondern eine saubere Neuinstallation durchziehen ohne den ganzen Rattenschwanz an Datenmüll zu behalten. Generell kann man sich dabei an diese Anleitung halten. Zunächst einmal sollte man sich

Das gesamte System klonen:

Anmerkung vorweg: wer sich (wie ich) eine neue Festplatte ins MacBook einbauen möchte, kann diesen Schritt überspringen und sich statt dessen die bisherige Festplatte in ein solches externes Gehäuse stecken. Davon kann man im Katastrophenfall dann wieder booten und alles ist gut.

Als Profi geht man immer davon aus, dass etwas schief gehen könnte und trifft entsprechende Vorkehrungen. In unserem Fall bedeutet das, sich einen kompletten, bootbaren(!) Klon der Festplatte zu erzeugen. Das geht mit Carbon Copy Cloner oder mit Super Duper. Beide Programme kosten ein bisschen Geld, das aber wirklich gut investiert ist. Ich hatte mich für Carbon Copy Cloner entschieden und damit ist das Klonen der Festplatte ein Kinderspiel. Alles, was man dazu benötigt, ist eine externe USB-Festplatte mit mindestens so viel Platz, wie die in eurem Mac verbaute hat.

Anschließend testet man, ob man von diesem Klon auch booten kann. Dazu startet ihr den Rechner neu und haltet währenddessen ALT gedrückt. Gegebenenfalls müsst ihr das Firmwarepasswort eingeben (das ihr hoffentlich kennt, sonst könnt ihr es eventuell mit diesem Hack ermitteln), dann könnt ihr die externe Festplatte als Bootmedium auswählen.

Pro-Tipp: ich hatte komplett vergessen, meine GPG-Keys zu sichern. Zum Glück hatte ich noch einen 2. Rechner, wo sie ebenfalls drauf waren. Wer sich den Schock ersparen will, exportiert sich die Keys direkt aus EnigMail...

Wenn ihr also von der externen Festplatte korrekt booten könnt, kann es losgehen. Ihr bootet erstmal wieder von der regulären Festplatte, denn nun müsst ihr euch

Einen Installer-USB-Stick erzeugen:

  1. “Install OS X El Capitan” von Apple herunterladen ist leider nicht ganz so einfach. Entweder ihr habt das schon einmal getan, dann findet ihr das im App-Store in eurer History und alles ist gut. Falls ihr das aber noch nie getan habt, gibt es leider nur eine Möglichkeit, an den Installer zu kommen: ihr kennt jemand, der diesen Installer mal per App-Store erworben habt. Der kann ihn für euch herunterladen. Ja, willkommen in der Apple-Welt. Da das Betriebssystem nichts kostet und der Installer auch nicht an eine Apple-ID gedongelt ist, ist der ganze Spaß tatsächlich legal. Dank meiner geliebten Leserschaft bin ich so zu dem 6.2GB großen Installer gekommen (besten Gruß an Andreas, du hast mir echt geholfen!).
  2. Nun müsst ihr “Install OS X El Capitan” nach /Applications kopieren
  3. Per Disk Utility einen USB Stick mit “Mac OS X Extended (Journaled)” formatieren und dabei “Untitled” benennen (siehe http://osxdaily.com/2012/01/04/format-an-external-hard-drive-or-usb-flash-drive-for-mac-os-x/)
  4. Ein Terminal öffnen und den Installer mit folgendem Befehl auf den Stick kopieren:

    sudo /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ OS\ X\ El\ Capitan.app

    nach der Eingabe eures Passworts sollte das dann so aussehen:

    Ready to start.
    To continue we need to erase the disk at /Volumes/Untitled.
    If you wish to continue type (Y) then press return: Y
    Erasing Disk: 0%... 10%... 20%... 30%...100%...
    Copying installer files to disk...
    Copy complete.
    Making disk bootable...
    Copying boot files...
    Copy complete.
    Done.

(siehe https://support.apple.com/en-us/HT201372 und http://www.macworld.com/article/2981585/operating-systems/how-to-make-a-bootable-os-x-10-11-el-capitan-installer-drive.html)

Das ganze dauert etwa ne Viertelstunde (oder so) und dann ist gut. Natürlich testet ihr, ob ihr davon booten könnt, ne?

Nun sind alle Voraussetzungen geschaffen. Der nächste Schritt bei mir war der

Einbau einer SSD in das MacBook:

Ich habe mir eine Samsung Pro 850 mit 512GB gegönnt. Um sie einzubauen, könnt ihr einfach dieser Anleitung folgen. Ganz wichtig sind die 4 Schrauben an der Festplatte, die von der alten an die neue Festplatte übertragen werden müssen, damit das Ding stabil im Gehäuse verankert ist.

Als nächstes wollt ihr

Das Betriebssystem vom USB-Stick auf die neue SSD installieren:

Ihr startet den Rechner mit eingestöpseltem USB-Installer-Stick und haltet wieder ALT gedrückt. Nun könnt ihr den Installer-Stick auswählen. Einige Rödelei später (je nach Stick kann das schon mal 5 Minuten dauern) begegnet ihr dem Installer. Allerdings könnt ihr das OS noch nicht direkt auf die SSD installieren, weil sie nicht formatiert ist! Das geht aber auch, und zwar so:

  • Disk Utility auswählen
  • Festplatte anwählen
  • Erase klicken
  • “Macintosh HD” bietet sich als Name an
  • OS X Extended (Journaled) als Format wählen
  • GUID Partition Map als Schema wählen
  • und ERASE

Nun könnt ihr diese Festplatte als Installationsmedium anwählen. Der Installationsprozess dauert summa sumarum eine Stunde. Zwischendurch “hängt” der Prozess sehr lange bei “noch eine Sekunde”. Keine Panik! Öffnet die Konsole per CMD-L und lasst euch per CMD-3 alles anzeigen. Ihr werdet sehen, dass der Installer sich selbst überprüft. Das dauert seine Zeit. Einfach machen lassen!

Ich persönlich habe mich gegen solchen Kram wie Location Services und Feedback an Apple entschieden, aber das müsst ihr selber entscheiden. Auch das Sign-In per Apple-ID habe ich erstmal bleiben lassen.

Während der Installation solltet ihr euch einen User “admin” erzeugen und nach dem ersten Anmelden sofort einen neuen User ohne Admin-Rechte anlegen, mit dem ihr in Zukunft arbeitet. Profis fügen diesen User anschließend den sudoers hinzu (damit sie sudo ausführen können), und zwar so:

  • Terminal öffnen
  • sudo visudo
  • runterscrollen bis zum Abschnitt:
    # User privilege specification
    root ALL=(ALL) ALL
    %admin ALL=(ALL) ALL
  • den Cursor unterhalb der Zeile %admin ALL=(ALL) ALL bewegen
  • Taste A drücken um zu editieren
  • euren neu angelegten Benutzer eintragen:
    Benutzer ALL=(ALL) ALL
  • vi verlassen, dazu erst : drücken und dann wq eingeben, damit die Datei auch geschrieben (w) und vi anschließend beendet wird (q)

Damit sind wir eigentlich fertig. Ihr habt nun ein altes MacBook mit einem (fast) neuen Betriebssystem und einer deutlich schnelleren Festplatte. Kosten bisher: knapp 250 Euro für die SSD-Platte und 40 Euro für Carbon Copy Cloner. Nun könnte man noch einen neuen Akku kaufen (ca. 100 Euro) und vielleicht etwas mehr Speicher einbauen (nochmal ca. 70 Euro), dann wären wir bei knapp 500 Euro Gesamtkosten.

Was nun folgt, ist die Kür.


Eine Personal Firewall installieren und wundern...

Ich schwöre auf Little Snitch, die ich mir auch direkt wieder installiert habe (ich hatte sogar eine Lizenznummer für die neueste Version, ich weiß selber gar nicht mehr, wieso eigentlich. Ich hatte mir die “alte” Version (V2) gekauft, die “neue” (V3) lief nicht mehr unter Mountain Lion. Trotzdem hatte ich schon eine Seriennummer für die neue Version parat und konnte also direkt damit loslegen, diversen Services und Daemons das Nach-Hause-Telefonieren zu unterbinden (z.B. SpotlightNetHelper, Stocks, storeaccountd, akd, nsurlsessiond, com.apple.geod.xpc, mapspushd). Keine Ahnung, welche Services ich damit jetzt kaputt gemacht habe, aber das wird sich ja noch zeigen ;)

Im Laufe der Zeit wurden es mehr und mehr Meldungen. Eine Websuche brachte mich zu diesem Forum, wo es so aussieht, als wüsste niemand so richtig, what the fuck eigentlich abgeht, aber ganz an Ende postet jemand diesen Link:

Ever wonder what all those system processes are doing? So did I...

I recently picked up Little Snitch and I've had a fun time watching all the traffic that one little MacBook can send! I wasn't satisfied to just filter my user-level programs -- why should I trust a system process when it could be hijacked just like any user process? (For example, see this mDNSResponder vulnerability from June of this year that allows for arbitrary code execution. Yikes!)

So, I decided I would actually bother to investigate what all those different system-owned processes and daemons did. I've had some adventures selectively enabling and disabling services with launchctl, running processes through dtruss, Wireshark, and other tracing tools, and occasionally breaking my computer along the way.

Here's what I've found on some of the processes you might have noticed if you ever disabled the protected rules..

Damit wurde ich schon deutlich klüger (so sehr, dass ich mir das gerade mal dezentral gesichert habe), aber da werden immer noch lange nicht alle nach-Hause-telefonierenden Prozesse gelistet. Hallo? Apple? Was geht?

Ein paar mehr Infos:
http://www.westwind.com/reference/OS-X/background-processes.html
http://apple.stackexchange.com/questions/240108/what-is-the-akd-process-and-do-i-need-to-allow-it-to-connect-to-the-internet


TRIM für die SSD aktivieren:

Was ist TRIM? Siehe hier. Ich hatte mich wie gesagt für eine Samsung Pro 850 entschieden. Laut der verlinkten Seite hat die unter Linux wohl Probleme mit TRIM, aber das scheint ein reines Linux-Problem zu sein und unter OS X nicht aufzutreten. Nach diesem Heise-Kommentar habe ich mich beherzt entschlossen, es zu wagen.

Dazu im Terminal diesen Befehl eingeben:

sudo trimforce enable

und fertig.


Den nervigen Startup-Sound deaktivieren:

Habe ich leider nicht hinbekommen. Das hier funktioniert nicht und das hier war mir zu kompliziert. Naja, es gab ja noch genügend andere Baustellen.


Spotlights Kommunikationsdrang bändigen

Die systeminterne Suche “Spotlight” kommuniziert munter mit der halben Welt. Bei mir nicht mehr :-)


Drag-Lock fürs Trackpad:

Als Trackpad-User habe ich mich an “Drag-Lock” gewöhnt (das hier), welches in El Capitan ein bisschen versteckt ist:

  • System Preferences -> Accessibility -> Trackpad Options -> Enable Dragging with Lock

  • Kleinere Icons auf dem Desktop:

    Die Desktop-Icons sind für meinen Geschmack viel zu riesig. Also:

    • Klick auf den Desktop
    • Im Menu -> View -> Show View Options
    • Den Slider für “Icon Size” entsprechend anpassen (ich habe 32x32 eingestellt)

    VeraCrypt:

    Als ich VeraCrypt starten wollte, poppte mir eine Warnmeldung entgegen von wegen: läuft nicht. Schockschwerenot! Es stellte sich heraus, dass VeraCrypt erstmal FUSE for macOS benötigt, also flugs installiert und dann lief es wieder.


    Firefox mit allen Bookmarks und Addons zum Laufen kriegen:

    • Applications/Firefox vom Klon kopieren
    • einmal starten und wieder beenden
    • im Klon Users/[User]/Library/Application Support/Firefox/Profiles genau angucken und das “neueste” Profilverzeichnis entsprechend auf die neue Festplatte kopieren
    • anschließend das Profil in die Datei Users/[User]/Library/Application Support/Firefox/Profiles/profiles.ini eintragen:

      [Profile1]
      Name=[Benutzername]
      IsRelative=1
      Path=Profiles/[Name des kopierten Profils]
      Default=1

    • Firefox-Profilmanager starten, dazu im Terminal folgendes eingeben:

      /Applications/Firefox.app/Contents/MacOS/firefox-bin -P

    • das richtige Profil auswählen und BINGO.

    Allerdings verhinderte Firefox dann immer das Herunterfahren des Rechners. Warum? Weil BetterPrivacy immer die FlashCookies killen wollte, allerdings war noch gar kein Flash installiert, also gab es auch kein Flash-Cookie-Verzeichnus und alles ging in die Hose. Har har. Lösung vorerst: BetterPrivacy deaktiviert.


    Verhindern, dass Firefox eure SSD zerstört:

    Es stellte sich vor einiger Zeit heraus (http://www.spiegel.de/netzwelt/web/ssds-firefox-schreibt-mehrere-gigabyte-pro-tag-a-1114379.html), dass Firefox und Chrome viel zu viele Schreibvorgänge auf der Festplatte durchführen. Das tun sie, weil sie alle 15 Sekunden eure komplette Surfsession speichern, damit sie sie in Falle eines Absturzes wieder herstellen können. Völliger Overkill und schlecht für SSDs, also geben wir in der Adresszeile about:config ein, suchen nach dem Schlüssel browser.sessionstore.interval und ändern den Wert von 15000 (= 15 Sekunden) auf 900000 (= 15 Minuten)


    Thunderbird zum Fliegen kriegen:

    • Applications/Thunderbird vom Klon kopieren
    • Users/[User]/Library/Thunderbird vom Klon in den entsprechenden Ordner kopieren
    • EnigMail (GPG Verschlüsselung) startet beim ersten TB-Start automatisch einen Wizard
    • alles wieder beim Alten

    Software von “fremden” Entwicklern zulassen:

    Als ich zum ersten Mal GIMP starten wollte, meldete El Capitan:

    “GIMP” can’t be opened because it is from an unidentified developer.

    Your security preferences allow installation of only
    apps from the Mac App Store and identified
    developers.

    Har har. Die sichere Methode ist, eine solche App per Rechtsklick -> Open zu öffnen und dabei dann das Öffnen zu erlauben. Wer es hardcore will, geht nach System Preferences -> Security & Privacy und stellt Allow apps downloaded from: Anywhere ein.


    GIMP benötigt ewig zum Laden:

    Beim ersten Start braucht GIMP ewig und drei Tage während “Looking for data files (fonts)”. Da kannste nix machen, deal with it.


    Autokorrektur in Textedit unterbinden:

    Wenn ich etwas hasse, dann sind es Programme, die glauben, besser als ich zu wissen was ich schreiben will. Diese Unart hat jetzt auch in Textedit Einzug gehalten und lässt sich folgendermaßen deaktivieren:

  • Edit -> Spelling and Grammar -> Unselect “Correct Spelling Automatically”

  • Terminal zeigt “unknown[MAC ADRESSE]” anstelle eines Computernamens:

    Ich hatte unter System Preferences -> Sharing -> File Sharing anstelle von “admin’s Macbook Pro” ein schlichtes “Maccy” eingegeben, aber das hat mir den Computernamen total zerfickt, so dass im Terminal stand:

    unknown[MAC ADRESSE]

    und auch File Sharing meinte, unter diesem tollen Namen könne man nun meinen Rechner ansprechen.

    Fuck.

    Wie immer bei Apple: keine Antwort im Apple-Forum. Bei StackOverflow fand ich zunächst das hier, was ich aber wir mal schön bleiben ließ.

    Es sieht so aus als würde mein Router diesen Hostnamen vergeben und die Lösung lautet:

  • sudo scutil --set HostName “Maccy”
  • That did the trick for the terminal, aber auch erst nach einem Reboot. Unter File Sharing blieb noch unknown[MAC ADRESSE] stehen, das ging aber im Laufe der Zeit irgendwann von alleine weg...


    Character Accent Menu deaktivieren:

    Als ich eine Mail mit dem Inhalt “Generation SCUUUUUUUUUUUUUM!” schreiben wollte, poppte mir nach SCU ein komisches Menu auf, das mir diverse U-Varianten anbot.

    Stellt sich heraus, dass sich das Ding “Accent Menu” nennt und mal wieder nur per Terminal deaktiviert werden kann:

  • defaults write -g ApplePressAndHoldEnabled -bool false

  • Eigene Icons (*.icns) erstellen:

    Ich wollte schon lange die Desktop-Icons meinem geliebten Atari-TOS-Wallpaper anpassen. *.icns-Dateien erstellt man am Besten mit dem Freewaretool namens img2incs, das einfach nur perfekt ist. Icon in einem Grafikprog eurer Wahl pixeln, in img2icons ziehen, abspeichern, fertig.


    Ich denke, das sollte fürs erste genügen. Tipps und Anregungen wie immer gerne in die Kommentare.