Wie werfe ich mein externes Laufwerk aus, wenn mein Mac wegen Spotlight ablehnt?

Ich habe eine externe Festplatte an meinen Mac angeschlossen. Jetzt möchte ich es auswerfen. Aber mein Mac weigert sich hartnäckig und sagt, dass eine Anwendung möglicherweise die Festplatte verwendet.

Ich habe weder eine App gestartet noch eine Datei von der Festplatte geöffnet.

Ich habe die App  What's Keeping Me? heruntergeladen und installiert. Diese App ist ganz nett. Sie sagt mir, dass der Prozess  mdsmeine Festplatte verwendet.

Ich habe den Prozess  mdsund mehrere Prozesse beendet  mdworker. Diese sind für Spotlight. Aber solche Prozesse werden wieder hervorgebracht.

Wie kann ich meine Festplatte von meinem Mac auswerfen?

Ich habe Mac OS X 10.6.8.

Funktioniert es, einfach auf das Ende der Prozesse zu warten? Ich habe festgestellt, dass dies in der Praxis für mich funktioniert.
Das hat bei mir funktioniert ... sudo killall mdsdann ziehen Sie das Laufwerk schnell in die Spotlight-Datenschutzliste (in den Spotlight-Einstellungen).

Antworten (10)

Sie können versuchen, es über die Befehlszeile zu unmounten:

diskutil unmount /Volumes/MountPoint

oder mit Gewalt:

diskutil unmount force /Volumes/MountPoint

Wenn es immer noch fehlschlägt, überprüfen Sie, was Ihre Festplatte verwendet:

sudo fs_usage -w -f filesys | grep Volumes

Oder verwenden Sie lsof:

sudo lsof | grep Volumes

(Einige Prozesse werden nur angezeigt, wenn lsof als Administrator ausgeführt wird.)


Um temporäres Spotlight zu deaktivieren, führen Sie Folgendes aus:

sudo mdutil -a -i off

Dann sudo mdutil -a -i onwieder aktivieren.


Andere hilfreiche Apps: Whats Keeping Me .

Ich habe gerade herausgefunden, dass Spotlight (mds, mds_store, mdworker) nicht aufgelistet wird, wenn ich es lsofals Benutzer ausführe. Funktioniert jedoch sudo lsof | grep Volumesgut. ("Whats Keeping Me" hat ein Kontrollkästchen "Als Administrator".)
5 Jahre später ist das, was mich hält, veraltet, fs_usagefunktioniert aber großartig!
Simple diskutil unmount forcehat in meinem Fall gut funktioniert, danke!

Deaktivieren Sie einfach die Indizierung für das Laufwerk und löschen Sie den Inhalt des Journals auf dem Volume. Öffnen Sie dazu das Terminal und geben Sie den folgenden Befehl ein:

sudo mdutil -Ei off "/Volumes/Name_of_Drive"

Sie müssen dieses Verfahren als Administrator ausführen. Geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden. Ein Neustart könnte nötig sein.

Alternativ können Sie, wie von Simon White vorgeschlagen, einfach den Computer herunterfahren und dann das Laufwerk entfernen. Der Vorbehalt ist jedoch, dass das Laufwerk mit der Indizierung beginnt, wenn es wieder verbunden wird.

Es reicht aus, den Vorgang einfach zu stoppen. sudo mdutil -i off "/Volumes/Name_of_Drive"( -Elöscht und baut den Index neu auf). Es sollte beim nächsten Mounten des Laufwerks erneut mit dem Scannen beginnen. Um das Scannen dieses Laufwerks dauerhaft zu deaktivieren, verwenden Sie -d( sudo mdutil -d "/Volumes/Name_of_Drive"). Sehen Sie sich all diese Argumente und mehr an, indem Sie sie mdutilin Ihre Befehlszeile eingeben.
Der Tipp hat mir gefallen, aber schlagen Sie bitte nicht vor, nach dem Befehl zu beenden ... Ich habe es nicht bemerkt und den Verlauf der Ausgabe verloren, den ich dort hatte.
@njboot - Nein. Der Befehl "Verlauf" gibt mir nur den Verlauf der eingegebenen Befehle, er gibt mir nicht ihr Ergebnis zurück.
Nachdem ich den mdutil-Befehl ausgegeben hatte, konnte ich die Festplatte immer noch nicht auswerfen. Also habe ich auch "sudo killall mds" ausgegeben, und damit hat es funktioniert.
"Einfach"? Wer ist Ihr Publikum? Vielleicht ist es nicht einfach, einen zufälligen Befehl in ein Terminal einzugeben. *nix verschleiert jedes Werkzeug in bedeutungslosen Haufen von Zeichen. Wie wäre es mit "Einfach 'man mdutil', oh, wow: "Der mdutil-Befehl ist nützlich, um die Metadatenspeicher für gemountete Volumes zu verwalten." Oh, jetzt Google-Metadaten ... Nichts Einfaches daran.
@iJames Leute wollen Antworten. Ich habe eine Antwort gegeben. Meine Antwort funktioniert. Wenn sie mehr darüber erfahren möchten, was es tut, können sie dies tun. Ich verstehe den Sinn deines Kommentars nicht.
@njboot Danke der Nachfrage. Ich bin grundsätzlich gegen die Verwendung von "einfach" in jeder Software-Support- oder Dokumentationsdiskussion. Es schmälert nur den Leser, der keine solide Grundlage hat. Es ist schlimmer, wenn eine Befehlszeile mit einer Reihe von Schaltern etwas potenziell unsicheres, dauerhaftes und schwer rückgängig zu machendes macht. Daher muss eine gründlichere Antwort mit mehr Klarheit über das Risiko in Betracht gezogen werden. Plakate sollten davon ausgehen, dass der Anforderer sehr wenig weiß. Ich hoffe, das verdeutlicht, was ich oben sagen wollte. Faustregel: Wenn du denkst, es ist einfach, ist es nicht...
Diese Antwort ist gefährlich, da sie jemanden versehentlich dazu verleiten könnte, die Festplatte zu LÖSCHEN, anstatt sie einfach auszuwerfen. -1.
Hallo @user1258361, dieser Befehl löscht keine Festplatte, aber er entfernt gespeicherte Spotlight-Datenbanken. Diese können einfach neu generiert werden, da dies immer dann geschieht, wenn ein neues Betriebssystem oder Update einen Datenbankneuaufbau auslöst.

Oft finde ich, dass es mds ist, das mich daran hindert, ein Volume abzumelden.

sudo killall mds

Versuchen Sie dann (schnell), das Volume erneut auszuwerfen.

In meinem Fall mounte ich das Hauptvolume eines anderen Mac auf meinem aktuellen Mac. Ich möchte Spotlight nicht deaktivieren, da ich möchte, dass die Indizierung fortgesetzt wird, wenn das externe Volume an den anderen Mac zurückgegeben wird (als Startvolume).

Interessant. Vielleicht ist das "schnell" der Schlüssel!
Danke! Dies ist die einzige Antwort, die für mich funktioniert hat, außer dem erzwungenen Auswurf, was ich nicht tun möchte.

Sie können versuchen, den Finder zu beenden, das hat bei mir funktioniert. Der Finder hing am USB-Laufwerk, also wurde das Beenden erzwungen und neu gestartet, was auch immer das Hängen war.

wie würde man das machen? Sucher beenden erzwingen?
Option+Befehl+ESC !
Aber kann das im Spotlight-Fall meiner Frage funktionieren?
Bei Catalina hat das bei mir funktioniert.

Um zu verhindern, dass Spotlight das Laufwerk indiziert, erstellen Sie in TextEdit eine Klartextdatei ohne Inhalt, nur den Titel .metadata_never_index, und speichern Sie sie extern. Deaktivieren Sie die Erweiterung "txt" verwenden ... und sagen Sie TextEdit, dass Sie sie mit einem Punkt am Anfang speichern möchten (was sie unsichtbar macht).

Ich bin mir nicht sicher, ob das jetzt aufhören wird, aber es wird es in Zukunft verhindern.

Alternativ können Sie dieses Applescript in eine App umwandeln, um das Auswerfen zu erzwingen [mit den üblichen Vorbehalten beim erzwungenen Auswerfen ...] ... Dank an The MacTipper Blog

    property show_credits : true

set the_volumes to do shell script "ls /Volumes/"
tell application "Finder" to set the_HD to path to home folder as string

set ejectable_volumes to {}
repeat with i in (every paragraph of the_volumes)
    if the_HD does not start with i then
        set end of ejectable_volumes to (i as string)
    end if
end repeat
if (count of items of ejectable_volumes) is 0 then
    tell me to activate
    display dialog "Sorry, but there are no ejectable volumes."
else if (count of items of ejectable_volumes) is 1 then
    tell me to activate
    set the_result to item 1 of ejectable_volumes as string
    display dialog ("Eject \"" & the_result & "\"?") buttons {"No", "Yes"} default button 2 cancel button "No"
    set the_path to quoted form of ("/Volumes/" & the_result as string)
    do shell script "hdiutil eject -force " & the_path
else
    tell me to activate
    set the_result to choose from list ejectable_volumes with prompt "Please choose a volume to eject (You can select multiple items):" with multiple selections allowed
    if the_result is not false then
        repeat with j in the_result
            set the_path to quoted form of ("/Volumes/" & j as string)
            do shell script "hdiutil eject -force " & the_path
        end repeat
    end if
end if

if show_credits is true then
    tell me to activate
    set the_credits to button returned of (display dialog "This applescript brought to you by The MacTipper Blog.\n\nhttp://mactipper.com" buttons {"Don't Show Again", "Visit TMB", "OK"} default button 3) as string
    if the_credits is "Don't Show Again" then
        set show_credits to false
    else if the_credits is "Visit TMB" then
        open location "http://mactipper.com"
    end if
end if
Danke schön. Aber ... "um das Auswerfen zu erzwingen [mit den üblichen Vorbehalten beim erzwungenen Auswerfen ...]" Das ist besorgniserregend. Wenn ich zugestimmt hätte, das Risiko einzugehen, die Festplatte zu beschädigen, würde ich sie einfach ausstecken.
Setzen Sie dann das No-Spotlight-Flag und warten Sie, bis es angezeigt wird, und beenden Sie die Indizierung.
Oder Sie können sudo diskutil unmountDisk force /Volumes/Name_of_Volumevom Terminal aus rennen, um dies zu erzwingen. Dieses Skript ist nicht erforderlich.
@NicolasBarbulesco Das sind nicht die gleichen. Das gewaltsame Aushängen eines Volumes ist nicht dasselbe wie das Ziehen des Steckers. Im letzteren Fall trennen Sie das Gerät plötzlich physisch von der Stromversorgung, was, wie man sich vorstellen kann, Schäden an einer Magnetplatte verursachen kann, die sich mit mehreren K U/min dreht. Im ersten Fall zwingen Sie das Gerät einfach dazu, das Volume abzumelden. Die Festplatte dreht sich dann ordnungsgemäß herunter, und Sie ziehen den Stecker wie gewohnt. Es ist viel sicherer.
diskutil@njboot - Ich habe deinen Befehl nicht ausprobiert . Aber ich habe das Äquivalent mit dem Festplatten-Dienstprogramm versucht - ohne Erfolg.
Das @NicolasBarbulesco-Festplattendienstprogramm bietet die Option "Erzwingen" nicht an - nur das Gegenstück zur Befehlszeile. Auf jeden Fall schlage ich vor, den in meiner obigen Antwort aufgeführten Befehl auszuprobieren, bevor Sie fortfahren. Prost.
@njboot - Das ist interessant. Welche Risiken bestehen beim Zwangsausstoß mit Ihrem Kommando?

Wenn Sie ein Laufwerk aus irgendeinem Grund nicht trennen können, können Sie den Computer einfach herunterfahren. Wenn der Computer ausgeschaltet ist, können Sie das Laufwerk sicher trennen. Starten Sie dann den Computer. Dadurch können Sie das Laufwerk nicht nur sicher trennen, sondern auch sicherstellen, dass der mds-Prozess neu gestartet wird, falls er tatsächlich hängen bleibt.

Wenn Sie entschieden haben, dass Sie Spotlight nicht mit diesem Laufwerk verwenden möchten, müssen Sie das Laufwerk nur zur Registerkarte „Datenschutz“ im Bereich „Spotlight“ der Systemeinstellungen hinzufügen, damit es nicht mehr indiziert wird. Spotlight ignoriert das Laufwerk.

Alternativ, wenn Sie Spotlight auf diesem Laufwerk verwenden möchten, ist das Erstellen eines Index, wenn der Computer das Laufwerk zum ersten Mal sieht, ein notwendiges Übel. Sobald der Index erstellt ist, wird er bei jeder Änderung an jeder Datei aktualisiert, sodass Sie nicht erneut warten müssen. Aber wenn Sie im Spotlight-Menü keinen Fortschrittsbalken sehen, hängt mds wahrscheinlich. Fahren Sie in diesem Fall einfach den Computer herunter und trennen Sie Ihr Laufwerk.

Sicherlich kann ich den Mac herunterfahren. Aber das ist keine Option.
Mir gefällt die Idee, dass Spotlight meine Festplatte kennt. Aber ich habe versucht, Spotlight dazu zu bringen, meine Festplatte für den Moment zu ignorieren. Über die Systemeinstellungen → Spotlight. Dies hat nicht funktioniert: "Unmöglich wegen eines unbekannten Fehlers." Tolle Fehlermeldung! Apple muss einen Überläufer von Micro$oft angeheuert haben! Ich habe auch versucht, die Zeit wirken zu lassen. Ich ging zur Arbeit und ließ Spotlight den ganzen Tag über die Festplatte indizieren. Am Abend kam ich zurück und das Problem war immer noch dasselbe.
Ich denke eigentlich, dass das Problem darin besteht, dass mdsdas System dem System entweder nicht mitteilt, dass es mit dem Laufwerk fertig ist, oder es nicht beendet, nachdem es fertig ist, und dadurch das Laufwerk hält, bis der Prozess irgendwie beendet wird (wie ein Herunterfahren). Wenn ich sehe mds, dass die CPU nicht verwendet wird, während ich behaupte, das Laufwerk zu verwenden, erzwinge ich das Auswerfen des Laufwerks.
@bauerMusic - Wie "erzwingen Sie das Auswerfen des Laufwerks"?
@NicolasBarbulesco Das 'Force Eject Drive' ist eine Option, die das System nach einer Weile anbietet. Wenn Sie versuchen, das Laufwerk auszuwerfen, sollte es heißen: „Versuch, Ihr Laufwerk auszuwerfen“ (oder ähnlich) und nach etwa einer Minute (erfolglos) ein weiteres Popup-Fenster anzeigen, das eine Option zum Erzwingen des Auswerfens enthält.

Dieses Problem ist auf Catalina wieder aufgetaucht und nichts davon hat funktioniert. Im Moment erzwinge ich das Auswerfen und ziehe das Laufwerk trotzdem, wenn es sich dagegen sträubt.

Es ist eine schreckliche Lösung, aber ich sehe nicht, wie es das Risiko senkt oder Zeit spart, anstatt den festgefahrenen Prozess zu beenden und möglicherweise Daten zu lesen oder zu schreiben.

Eine weitere einfache Möglichkeit besteht darin, sie über die Festplatten-Dienstprogramme auszuwerfen.

Hast du die Kommentare in Tetsujins Antwort gelesen? Das Festplatten-Dienstprogramm bietet die Option "Erzwingen" nicht an
Probier es einfach. Ein einfaches Auswerfen über Disk Utilities funktioniert immer, wenn ein externes Laufwerk jeglicher Art nicht ausgeworfen wird, weil es "in Gebrauch" ist.
Ich habe versucht, das Laufwerk mit dem Festplattendienstprogramm auszuwerfen. Aber das hat nicht funktioniert.
Tut mir leid, das zu hören. Das Festplatten-Dienstprogramm wirft auf meinem Gerät, das auf 10.7.5 läuft, problemlos nicht mountbare "in Gebrauch"-Festplatten aus. Sie könnten sich DiskWarrior ansehen.
Aus irgendeinem Grund hat die Verwendung des Befehls zum Unmounten des Festplattendienstprogramms bei mir auf einer Problemfestplatte funktioniert.
Das Festplatten-Dienstprogramm bietet die Force-Option.Usage: diskutil u[n]mount [force] MountPoint
Obwohl es heute nur mit "Auswerfen" im Festplatten-Dienstprogramm nicht ausgeworfen wurde, gab es mir einen sehr nützlichen Hinweis. Während ich dachte, dass Spotlight die Festplatte indiziert, teilte mir das Festplatten-Dienstprogramm mit, dass „Time Machine disk 3“ nicht ausgeworfen werden konnte, da sie derzeit von „1Password mini“ verwendet wird .

Sie können Spotlight mitteilen, dass dieses Laufwerk niemals indiziert werden soll, und Sie müssen sich darüber keine Gedanken machen.

In den Systemeinstellungen von 10.11 gibt es einen Eintrag für „Spotlight“, der eine Registerkarte namens „Datenschutz“ hat. Klicken Sie auf „+“, wählen Sie Ihr Laufwerk aus und Sie sind fertig. Schließen Sie einfach die Systemeinstellungen, warten Sie ein paar Sekunden, bis das System das Update bemerkt, und Sie sollten in der Lage sein, es auszuwerfen. Jetzt beginnt es nicht mit der Indizierung der Festplatte, wenn Sie das nächste Mal eine Verbindung herstellen, sodass Sie das Problem in Zukunft nicht mehr haben werden.

Das habe ich versucht. Das hat nicht funktioniert. Siehe meinen Kommentar hier: apple.stackexchange.com/questions/142459/…

Ich räumte die Tausende von CDs und DVDs auf, die sich im Laufe der Jahrzehnte angesammelt hatten, und eine blieb im externen Mac Apple „Superdrive“ stecken. Ich habe alle Tricks ausprobiert, um es auszuwerfen, einschließlich Neustart. Dann würde das Betriebssystem nicht einmal anzeigen, dass das externe Laufwerk existiert. Es gab online viele Vorschläge, wie man die DVD auswirft, und ich habe die meisten ausprobiert – die extremsten zum Schluss aufgespart, was darin bestand, das Gehäuse mit einem Schlitzschraubendreher aufzuhebeln.

Meine Lösung bestand darin, den USB-Anschluss des Laufwerks vom Mac zu trennen und ihn an einen Windows 7-Laptop anzuschließen. Der Laptop hat den richtigen Treiber gefunden und die Disc automatisch ausgeworfen. Ich habe diese Lösung im Mac-Support-Forum gepostet, aber sie haben sie entfernt, weil "der Beitrag keine technische Frage war".

Ich denke, die Ironie, dass Windows 7 ein „Superdrive“ repariert, war zu viel für sie.