@MacAlzenau:
Ah, den Finder mit einem Link auszutricksen, darauf bin ich nicht gekommen. Lass mich testen... nope. Geht nicht. Da lässt dich der Finder nicht hin. Man kommt scheinbar nur über das Terminal hin.
@knoedeli:
Wir sind uns im Klaren, dass folgendes
nicht ungefährlich ist und dass die Daten auf der Platte, die wir "nullen" werden, danach unwiderruflich weg sind, ja?
Ok, hier kommt deine Anleitung:
Die Befehle für das Terminal solltest du, wie gesagt, doppelt auf Richtigkeit überprüfen. Ausgeführt werden sie durch die Eingabetaste (Return).
Bitte erst durchlesen und dann erst durchführen.
Lass dich durch das "$>" in manchen der unteren Code-Abschnitte nicht verwirren, das ist nur meine Eingabe. Bei dir müsste das irgendwie so aussehen:
macname:~ benutzername$
Wenn dich die Anleitung erschlägt, ähm, dann lass es lieber bleiben.
1. Wirf zunächst alle eingebundenen Laufwerke, USB-Sticks, DMGs und sonstige Images aus und, im Falle von Laufwerken, nach dem Auswerfen auch ausstecken.
Steck einfach alles aus, was du jetzt nicht brauchst (Tastatur, Maus und Monitor, falls extern, brauchst du

).
2. Öffne das Terminal (zu finden unter /Programme/Dienstprogramme/Terminal)
3. Gib folgendes ein:
Das wird dir etwas in der Art zeigen:
Code:
$> diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *320.1 GB disk0
1: EFI 209.7 MB disk0s1
2: Apple_HFS Macintosh-HD 309.6 GB disk0s2
Merke dir, wie viele Einträge der Form
/dev/disk# dir
diskutil angezeigt hat.
4. Nun steckst du die problematische Platte ein. und gibst nochmal den Befehl ein
Nun müsste noch ein
/dev/disk#-Eintrag dazugekommen sein. Sieht dann in etwa so aus:
Code:
$> diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *320.1 GB disk0
1: EFI 209.7 MB disk0s1
2: Apple_HFS Perseus-HD 309.6 GB disk0s2
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *1.1 GB disk1
1: DOS_FAT_32 VERBATIM 1.1 GB disk1s1
Den neuen
/dev/disk#-Eintrag, in meinem Fall ist das
/dev/disk1, den musst du dir merken. Brauchen wirst du gleich die Zahl am Ende, in meinem Fall wäre das die 1.
Es muss bei dir nicht
/dev/disk1 sein (aber wahrscheinlich ist es das). Es ist einfach nur der Eintrag, der bei Schritt 3. nicht da war. OK?
Im folgenden werde ich nur noch von
/dev/disk# schreiben, wobei # für die entsprechende Nummer steht.
Nicht, dass einer auf die Idee kommt die Befehle rauszukopieren und Mist baut...
Merke dir hier auch: # ist
auf keinen Fall 0 (null).
/dev/disk(null) ist die Platte, wo dein System drauf ist. Da willst du
nicht mit
dd ran!.

*
5. Nun musst du die Platte
unmounten (
nicht auswerfen, also auch nicht abstecken). Mit folgendem Befehl:
Code:
diskutil umountDisk /dev/disk1
Sowas muss dabei rauskommen:
Code:
$> diskutil umountDisk /dev/disk1
Unmount of all volumes on disk1 was successful
Kam was anderes raus? Hör hier auf.
6. Jetzt kommt
dd zum Einsatz. Du hast dir ja die Nummer # aus 4. gemerkt, ne? Die braucht du jetzt.
Nochmal: Vorsicht! Die Daten auf der Platte sind dann weg!
Folgendes kopierst du dir hier raus und fügst es in bspw. TextEdit (/Programme/TextEdit) ein:
Code:
DD_OF_RDISK="#"
DD_OPTS="bs=1m count=1"
function dd_watch(){
unset DD_OF_RDISK DD_OPTS
if [ -z $1 ] || [ "x$1" == "x0" ]
then
echo "DD_OF_RDISK DARF NICHT LEER ODER 0 SEIN"
echo "ABGEBROCHEN. DRUECKE DIE EINGABETASTE."
return 255
fi
if mount|grep -q /dev/disk${1}s
then
echo "/dev/disk${1} DARF NICHT GEMOUNTET SEIN"
echo "ABGEBROCHEN. DRUECKE DIE EINGABETASTE."
return 255
fi
alias q='killall dd;unalias q;echo "WIRD ABGEBROCHEN..."'
dd if=/dev/zero of=/dev/rdisk$1 $2 conv=notrunc& local dd_pid=$!
if [ -z $dd_pid ] || ! ps -p $dd_pid 1>&2>/dev/null;
then
killall dd
unalias q
echo "KANN DD NICHT ÜBERWACHEN"
echo "ABGEBROCHEN. DRUECKE DIE EINGABETASTE."
return 255
fi
while ps -p $dd_pid 1>&2>/dev/null
do
kill -SIGINFO $dd_pid 2>&1
echo ""
sleep 5
done
unalias q
echo "FERTIG. DRUECKE DIE EINGABETASTE."
}
alias q='killall dd;unalias q;echo "WIRD ABGEBROCHEN..."'
clear
dd_watch "$DD_OF_RDISK" "$DD_OPTS"& # --> DRUECKE DIE EINGABETASTE <--
Du musst in der ersten Zeile das # durch die entsprechende Zahl aus Schritt 4. ersetzen.
Wenn es nicht gleich losläuft, musst du noch die Eingabetaste drücken.
7. Schritt 6. wird nur den Anfang der Platte plätten. Versuche danach, die Platte mit dem Festplattendienstprogramm zu partitionieren.
Geht's? Dann bist du hier fertig.
8. Wenn sich die Platte nicht partitionieren ließ, kannst du noch versuchen, sie in einen pseudo-Neuzustand zu versetzen, in dem du in TextEdit in der zweiten Zeile das
durch
ersetzt.
Dann machst gibst du noch folgenden Befehl ein
Code:
diskutil info /dev/disk#|grep Total
Kommt sowas raus:
Code:
$> diskutil info /dev/disk1|grep Total
Total Size: 1.1 GB (1050934784 Bytes) (exactly 2052607 512-Byte-Blocks)
Kopier dir das irgendwohin. Die Byte-Angabe ist die interessante.
Dann Dann führst du 6. mit dem veränderten Wert für DD_OPTS nochmal aus. Das wird aber einige (einige!) Zeit dauern. Kannst über Nacht laufen lassen.
dd sollte eigentlich aussteigen, wenn es die Platte nicht beschreiben kann, diese also fehlerhaft ist.
Am Ende wird
dd müsste dann sowas dastehen:
Code:
1003+0 records in
1002+1 records out
1050934784 bytes transferred in 60.895453 secs (17258017 bytes/sec)
Siehst du die Bytes-Angabe? Das vergleichst du mit dem, was du dir mit
diskutil info /dev/disk#|grep Total rauskopiert hast. Stimmen die Werte nicht überein, ist
dd ausgestiegen.
Aber eigentlich müsste da auch dick und fett ein Fehler ausgegeben werden.
Falls dem so ist, besorg dir 'ne neue Platte (bzw. geh sie umtauschen).
Kein fehler? Dann versuch nochmal mit dem Festplattendiensprogramm zu partitionieren.
Geht's immer noch nicht? Tja dann von mir zumindest auch der Tipp mit neue platte bzw. umtauschen. Evtl. ist die Platte zwar nicht wirklich defekt, aber die Wahrscheinlichkeit ist extrem hoch und weiterzumachen nimmt wahrscheinlich mehr Zeit in Anspruch, als sich eine neue Platte zu "erarbeiten", wenn du verstehst, was ich meine.
Außerdem hast du geschrieben, dass da Backups drauf sollen. Backups auf zickende Platten sind so oder so keine gute Idee.
EDIT:
Zu 8. habe ich vergessen folgendes zu erwähnen:
Wenn du den "langen Lauf", solltest du ihn einsetzen, abbrechen möchtest, tippe ein kleines(!) "q" (wie "quit"), gefolgt von der Eingabetaste, dann wartest du, bis "FERTIG" ausgegeben wird. Dann wurde alles abgebrochen.
* dd fasst ein gemountetes device so oder so nicht an, aber je nach dem, wie und v.a. von wo dd eingesetzt wird, kann man sogar das System plätten. Grund genug, darauf so rumzureiten. Man weiß ja nie...