Wie installiere ich Apps nach einer Neuinstallation auf Snow Leopard und halte das MacBook dennoch in einem Zustand vor dem ersten Start?

8

Ich verkaufe mein 2007 White MacBook.

In Übereinstimmung mit vielen Vorschlägen, die ich online gesehen habe, habe ich das Laufwerk sicher gelöscht und eine Neuinstallation durchgeführt, bin jedoch auf ein Problem gestoßen.

Die Maschine wurde mit OS X 10.4 Tiger geliefert, aber seitdem habe ich sie auf Leopard und dann auf Snow Leopard aktualisiert.

Idealerweise möchte ich dem neuen Besitzer das neue MacBook-Erlebnis mit dem sich drehenden Begrüßungstext geben, aber ich möchte sie auch auf den neuesten Schneeleoparden kleben. Das Problem ist, dass bei einer Neuinstallation von Snow Leopard auf dem Computer nicht die iLife-Anwendungen vorhanden sind (diese befinden sich auf den Original-Tiger-Installationsdisketten).

Gibt es eine Möglichkeit, die iLife-Apps dort zu installieren, ohne ein Konto auf dem Computer einrichten zu müssen?

Wenn nicht, was ist das Beste? Das Einrichten eines Kontos würde ich lieber nicht tun (ich weiß, ich würde mich ärgern, wenn ich ein gebrauchtes MacBook kaufen würde und es bereits ein Konto enthält). Auf der anderen Seite scheint es auch ein bisschen schlecht zu sein, Tiger zu installieren und ihnen die Upgrade-Festplatten zu geben.

Irgendwelche Vorschläge bitte?

Danke im Voraus.

Follow-up:
Alle folgenden Antworten waren sehr informativ, klar erklärt und wahrscheinlich gleich effektiv. Ich habe diejenige ausgewählt, die meinen Umständen am besten entspricht, aber hoffentlich werden sie alle zukünftigen Lesern dieser Frage von Nutzen sein. Vielen Dank an alle, die dazu beigetragen haben.

Darren Greaves
quelle

Antworten:

7

Zwei Dinge - wenn Sie die Grundlagen einer Unix-Shell-Syntax nicht kennen (ein Leerzeichen an der richtigen Stelle ist wichtig, Interpunktion wie / matter), führen Sie Schritt 2 nicht aus, es sei denn, Sie können es sich leisten, alles erneut zu installieren - den rmBefehl ist unversöhnlich - lösche die falsche Datei oder das falsche Verzeichnis mit rm -rfund der Mac bootet nicht. Sie können sicherer sein, indem Sie den srmBefehl anstelle von verwenden, rmund die Dateien werden langsam vernichtet. Ich verwende sie srm -sz -rfanstelle von rm -rfunten, um sie einmal zu vernichten und dann auf Null zu setzen (was letztendlich zwei Durchgänge und dann ein Löschen bedeutet - viel sicherer für meine Bedürfnisse und nicht so langsam wie die Standardeinstellung 35 vor dem Löschen überschreiben)

  1. Stellen Sie sicher, dass die Person, die das Gerät kauft, weiß, wofür sie Wiederherstellungsdisketten erhält. Es ist wirklich schön, ein Testkonto zu erstellen, um alle Updates auszuführen, anstatt ihnen die Snow Leopard-Diskette zu übergeben.

  2. Richten Sie Ihren Snow Leopard Mac so ein, dass Sie ein Administratorkonto mit dem Namen test ohne Kennwort hinzufügen und alle anderen Konten mit dem Testkonto löschen. Starten Sie im Einzelbenutzermodus neu, indem Sie command+ gedrückt halten, sund geben Sie diese genau ein:

    / sbin / mount -uw /
    cd / var / db
    srm .AppleSetupDone
    cd dslocal / node / Default / users
    srm test.plist
    CD / Benutzer
    rm-rf test
    Halt

Sie können jetzt den Mac starten, um die Wiedergabe des Setup-Begrüßungsfilms zu sehen, und den Assistenten einige Schritte in Verwendung von command+ beenden, qwenn er anfängt, Namensfragen zu stellen, und er wird heruntergefahren, ohne dass ein Konto erstellt wird, aber alle Anwendungen erhalten bleiben. Es werden Ihre WLAN-Einstellungen gespeichert. Löschen Sie diese Einstellungen, bevor Sie mit Schritt 2 beginnen, oder verwenden Sie Ethernet / ein sicheres öffentliches WLAN, um Updates auszuführen, wenn Sie sich darüber Sorgen machen.

bmike
quelle
Nachdem ich alle Optionen abgewogen habe, habe ich mich für diesen Ansatz entschieden. Vielen Dank für den Tipp, alle Updates auszuführen und die Befehle übersichtlich zu gestalten.
Darren Greaves
Tolles Feedback hier und mit Hobs 'robusterem (und komplizierterem) Skript. Ich habe mich viele Male darauf verlassen, um eine Maschine für einen neuen Benutzer aufzufrischen.
bmike
7

Sie könnten iLife definitiv installieren, in den Einzelbenutzermodus booten, das Benutzerkonto über diesen Superuser-Link löschen (ebenfalls unten, und dies im Einzelbenutzermodus tun) und dann im Einzelbenutzermodus einfach eingeben, rm /var/db/.AppleSetupDonewas wie ein Kippschalter ist der Mac, um vom ersten Start an zu starten.

#!/bin/bash

# cf. http://www.macos.utah.edu/documentation/authentication/dscl.html

if [[ "$(/usr/bin/whoami)" != "root" ]]; then printf '\nMust be run as root!\n\n'; exit 1; fi

OPATH=$PATH
export PATH=/usr/bin:/usr/sbin:/bin:/sbin

OIFS=$IFS
export IFS=$' \t\n'

declare sudo=/usr/bin/sudo

printf "\e[1mDelete user account\e[m: "
read user

if [[ -z "$user" ]]; then printf '\nNo user specified! Please, try again!\n\n'; exit 1; fi

# make sure the user exists
usertest="$(/usr/bin/dscl . -search /Users name "$user" 2>/dev/null)"

if [[ -z "$usertest" ]]; then printf "\nUser does not exist: $user\n\n"; exit 1; fi 


# get user's group memberships
groups_of_user="$(/usr/bin/id -Gn $user)"

if [[ $? -eq 0 ]] && [[ -n "$(/usr/bin/dscl . -search /Groups GroupMembership "$user")" ]]; then 
   # delete the user's group memberships
   for group in $groups_of_user; do
      $sudo /usr/bin/dscl . -delete "/Groups/$group"  GroupMembership "$user"
      #$sudo /usr/sbin/dseditgroup -o edit -d "$user" -t user "$group"           
   done
fi


# delete the user's primary group
if [[ -n "$(/usr/bin/dscl . -search /Groups name "$user")" ]]; then
   $sudo /usr/sbin/dseditgroup -o delete "$user"
fi

# if the user's primary group has not been deleted ...
if [[ -n "$(/usr/bin/dscl . -search /Groups name "$user")" ]]; then
printf "
   \e[1mWarning\e[m:
   The group memberships of the user \e[1m$user\e[m have been deleted\x21
   groups_of_user: $groups_of_user
   The user's primary group \e[1m$user\e[m, however, has not been deleted\x21
   Please, try again\x21
   Exiting ...\n
"
  exit 1
fi


# find the GeneratedUID of the user and remove the password hash file 
# from /private/var/db/shadow/hash/<GeneratedUID>
# sudo ls -a /private/var/db/shadow/hash
# sudo ls -l /private/var/db/shadow/hash/<GeneratedUID>

guid="$(/usr/bin/dscl . -read "/Users/$user" GeneratedUID | /usr/bin/awk '{print $NF;}')"

if [[ -f "/private/var/db/shadow/hash/$guid" ]]; then
   $sudo /bin/rm -f /private/var/db/shadow/hash/$guid
fi


# delete the user
$sudo /usr/bin/dscl . -delete "/Users/$user"

# make a backup
if [[ -d "/Users/$user" ]]; then
   $sudo /usr/bin/ditto -rsrc -c -k "/Users/$user" "/Users/${user}-archive-$(/bin/date).zip"
fi

# remove the user's home directory
if [[ -d "/Users/$user" ]]; then
   $sudo /bin/rm -rf "/Users/$user"
fi

export IFS=$OIFS
export PATH=$OPATH

exit 0
ConstantineK
quelle
Vielen Dank für die Informationen - ich werde die andere vorgeschlagene Option ausprobieren, werde dies aber versuchen, wenn diese fehlschlägt.
Darren Greaves
Viel Glück! Lassen Sie uns wissen, wie es geht.
ConstantineK
Wenn dieses Skript in Snow Leopard im Einzelbenutzermodus gestartet wird, funktioniert es für mich nicht - es besagt, dass der Benutzer nicht vorhanden ist.
Ivan X
Dann existiert root aus irgendeinem Grund nicht, wenn / usr / bin / dscl ausgeführt wird. -search / Benutzername "$ user" (wobei $ user root ist). Das ist ziemlich komisch.
ConstantineK
2

Installieren Sie Tiger wie gewohnt, starten Sie dann die Snow Leopard-Installations-CDs und führen Sie eine Upgrade-Installation durch, ohne das interne Laufwerk zu starten und ein Benutzerkonto zu erstellen.

Cajunluke
quelle
Das klingt ein bisschen einfacher als die vorgeschlagene Bereinigungsoption, also probieren Sie es aus - danke.
Darren Greaves
Es ist auch ganz einfach, einen Testbenutzer zu löschen. Ich werde eine Antwort geben, um zu behandeln, dass dies viel einfacher ist als das obige Skript, das etwas gründlicher ist, aber dass eine zusätzliche Überprüfung und Hinterlegung einer Sicherungskopie eines "leeren" Home-Ordners in der von Ihnen beschriebenen Situation nicht gerechtfertigt ist.
bmike