OS X von einem bootfähigen USB-Stick installieren

Erst vorgestern konnte ich einem gebeutelten Mac-Nutzer, welcher seine Systemplatte im Rechner zerschossen hatte, damit aushelfen, ihm einen bootfähigen USB-Stick so zu formatieren, dass er von diesem wieder ein frisches OS X Mavericks auf seinem Computer installieren kann. Im Internet gibt es inzwischen viele Seiten auf denen diese Vorgehensweise dazu bereits dokumentiert ist, aber der Vollständigkeit halber will ich mir das auch noch einmal notieren. Innerhalb von sechs Monaten ist das inzwischen aber auch schon das zweite Mal, wo ich diese Dienstleistung erfolgreich für andere erbringen konnte. – Ungeachtet um welches Release es sich dabei handelte.

Als erstes muss man sich mit seiner Apple-ID über den Mac App Store die gewünschte OS X Version herunterladen. Es gibt dabei die Empfehlung, dass man dieses Unternehmen eigentlich nicht für andere Nutzer machen sollte, da die eigene Apple-ID im Installer gespeichert wird. Dies war mir bisher allerdings nicht bewusst. Ich traue denen zu – und hoffe auch – dass wenn diejenigen, welchen ich damit ausgeholfen habe, meine ID ihnen über den Weg läuft, sie sie ignorieren und durch eine andere ersetzen.
Ist der Download fertig, bereitet man seinen USB-Stick, welcher über mindesten 8 GB Kapazität verfügen sollte, idealerweise mit dem grafischen Festplattendienstprogramm (Disk-Utility) vor. Im Karteireiter „Partition“ wählt man das Layout „1 Partition“, gibt dem Volume vielleicht noch einen passenderen Namen wie zum Beispiel „Stick“ und legt dieses mit dem Format „Mac OS Extended (Journaled)“ an. Man sollte dabei darauf achten, dass man vorher unter „Optionen“ die GUID-Partitionstabelle vorausgewählt hat. Mit „Anwenden“ wird der USB-Stick dann tatsächlich wie gewünscht formatiert.
Nun scheiden sich die Wege. Man kann den Installer auch mittels dem grafischen Disk-Utility auf den USB-Stick verfrachten. Dies birgt aber bei der späteren Mac OS X Installation auf den Computer einige Nachteile, welche wiederum auch nur erst wieder im Anschluss behoben werden können. So würde FileVault und die Funktion „Find my Mac“ erst einmal nicht verfügbar sein.
Eleganter ist es daher, den Kopierprozess mit einem einzigen Befehl im Terminal abzuarbeiten.:

sudo /Applications/Install\ OS\ X\ Yosemite.app/Contents/Resources/createinstallmedia --volume /Volumes/Stick/ --applicationpath /Applications/Install\ OS\ X\ Yosemite.app/ --nointeraction
  • Mit /Applications/Install\ OS\ X\ Yosemite.app/Contents/Resources/createinstallmedia wird im Installer-Paket das eigentliche Unix-Kommando ausgeführt.
  • Durch –volume /Volumes/Stick wird das Ziel-Volume übergeben. Also unser vorformatierter USB-Stick.
    Mit –applicationpath /Applications/Install\ OS\ X\ Yosemite.app teilt man mit, wo der Mavericks-Installer liegt. Dies Pfadangabe ist bereits bekannt.
  • Die Option –nointeraction sorgt schließlich dafür, dass der Befehl ohne weitere Rückfragen ausgeführt wird. Man muss sich also bewusst sein, dass hier mit Root-Rechten ein Volume ohne Sicherheitsabfragen gelöscht wird.

Jetzt ist der USB-Stick fertig. Bei eingesteckten Stick wird durch das Gedrückt Halten der „alt“-Taste während des Rechnerneustarts dieser als zu bootendes Volume dargestellt und man kann mit seinem Clean-Install beginnen.
Das Verfahren lässt sich natürlich auch auf die anderen Versionen von Mac OS X anwenden. Es ist dabei lediglich darauf zu achten, dass diese andere Namen im Installer tragen.

Alte Revisionen von WordPress-Einträgen löschen

Wenn man in WYSIWYG-Editor einen Beitrag bearbeitet, so erzeugt WordPress standardmäßig alle 60 Sekunden eine neue Revision. Auf Dauer kann dies zu überflüssigen Einträgen führen, welche die Datenbank sehr stark anwachsen lässt und in ihrer Performance beeinträchtigt. Im WordPress selber gibt es aber leider keine Möglichkeit, dies einzustellen und zu begrenzen. Durch folgende zusätzliche Einträge in die wp-config.php lässt sich das Verhalten dennoch steuern.

Mit

define('WP_POST_REVISIONS', 3);

wird definiert, wie viele Revisionen in der Datenbank maximal gespeichert werden sollen. Man kann aber anstatt der Zahl auch ein false als Variable einsetzen. Dann werden natürlich keine Einträge erzeugt.

Und mit

define('AUTOSAVE_INTERVAL', 300);

wird der Zeitintervall in Sekunden gesetzt, in der eine neue Revision gespeichert wird. In meinem Fall also immer nach 5 Minuten.

Sollten sich in der Datenbank bereits eine menge Einträge mit früheren Artikelrevisionen befinden, so kann man die auch manuell heraus löschen. Am besten aber vorher ein Backup der Datenbank erstellen, so kann man bei Problemen nach dem löschen diese wieder in ihrem Ursprungszustand wieder herstellen. Über PHPMyAdmin kann man auch mit folgendem Befehl die unnötigen Einträge löschen.:

DELETE FROM wp_posts WHERE post_type="revision";

Als Alternative dazu gibt es aber diverse PlugIn’s, welche für einem dies sehr zuverlässig und sicher erledigen.

Update 10. Mai 2020 18:30 Uhr:

Im Rahmen einer Weiterbildung hatte ich im Jahr 2017 einen sechsmonatigen Kurs für den Einstieg in SQL. Dieser brachte mir das grundsätzliche Verständnis von Datenbanken und einfache SQL-Statements in Übungen bei.
Darauf aufbauend habe ich in meinem DokuWiki einen Seite erstellt, welche die derzeitig nötigen SQL-Statements behandelt, die zur Pflege dieses WordPress-Blogs nötig sind.

Link: Praktische Anwendung von SQL-Statements bei WordPress (eigenes DokuWiki)

Autostart von irssi in einer screen-Session

Wenn man bestimmte Skripte oder andere Sachen automatisiert mit dem Systemstart zum rollen bringen will, so lassen sich diese in die Datei /etc/rc.local einbinden.

sudo -u $username screen -d -m -U -S irssi irssi

Egal ob Änderungen in der Datei vorgenommen werden oder auch nicht, am Ende muss in der letzten Zeile immer „exit 0“ stehen!

Da ich diese Konfiguration das erste Mal auf einem Raspbian zum starten bringen wollte, musste ich zu meinem Entsetzen feststellen, dass auf diesem standardmäßig erst einmal kein sudo installiert ist. Ist zwar kein Problem, weil lässt sich ja nach installieren, aber ich war schon erstaunt.

Automatische iCloud-Speicherung von Dokumenten verhindern

Wie sich heraus gestellt hat, speichern Programme mit iCloud-Anbindung auf dem Macintosh jedes noch ungesicherte Dokument ungefragt in diese hoch. Dies möchte man verhindern – gerade wenn man Dokumente soweit vertraulich behandeln möchte, dass sie selbst auf verschlüsselten Diensten von Dritten nichts zu suchen haben. Da es keine Möglichkeit in der GUI vom Mac OS X gibt dies zu verhindern, muss man folgenden Befehl auf der Kommandozeile absetzten.

defaults write NSGlobalDomain NSDocumentSaveNewDocumentsToCloud -bool false

Nach dem Beenden und erneutem Öffnen, speichern Programme mit iCloud-Unterstützung die neu angelegte Dokumente dann wieder lokal im Verzeichnis des jeweiligen Nutzers unter folgender Ordner-Struktur:

/Users/<Benutzername>/Library/Containers/<Ordnername_Applikation>/Data/Library/Autosave Information/

Möchte man hingegen das vorherige Verhalten mit der iCloud-Anbindung wieder zurück haben, reicht es den selben Befehl nur mit einem true am Ende aus zu führen.

Alternativ kann man sein Nutzungsverhalten in Bezug von Dokumentenverwaltung aber auch so einstellen, dass man auf die iCloud völlig verzichtet, oder nur einen selber gehosteten Dienst nutzt auf dem auch selbst administrativen Zugang hat.

Quelle des Tip bei Mac OS X Hints

Saubere MacPorts

Nach Jahren der Updaterei und neues Mac OS X Betriebssystem hinüber bügeln, tut es einfach mal gut, alle Programme via MacPorts mal zu deinstallieren und wieder neu zu installieren. Dabei werden automatisch alle Versions-Leichen, welche nicht mehr benötigt werden und Bibliotheken die einst mal mit installiert wurden weil ich Programm XY mal kurz ausprobiert habe, mit gelöscht.
Anbei eine Liste von Programme, die ich standartmässig auf einem Mac installiere:

sudo port -v -fp uninstall installed && sudo port -v install erlang gnupg2 irssi mc minicom mtr py27-ipython py-pip py-serial py-py2app nmap rtmpdump simh tcpdump tcpflow tmux w3m watch wget

Danach klappt’s auch wieder mit den Verlinkungen sauber.

Update:

Anmerkung vom Clemens:

In diesem Kontext auch hilfreich: wiederholt sudo port uninstall leaves ausführen. Das gleiche mit ein bisschen mehr Toolchain drumrum: sudo port install port_cutleaves; port_cutleaves.