Wie komplett ausgeworfenes Volume erkennen?

roedert

roedert

Aktives Mitglied
Thread Starter
Dabei seit
05.01.2011
Beiträge
12.146
Reaktionspunkte
3.314
In einem Shellscript schalte ich nach einem CCC-Backup die USB-Platte vie schaltbarer Steckdose aus. Doch wie erkenne ich wann das Volume komplett ausgeworfen ist?
CCC wirft das Zielvolume am Ende selbst aus, dann wird das Icon der Festplatte heller und es dauert noch unterschiedliche Zeit bis das Volume komplett ausgeworfen und das Icon verschwunden ist.
Ein gemountetes Volume sehe ich natürlich im mount-Befehl, aber sofort nach Auslösen des unmount wird es nicht mehr aufgelistet.
Ich muss aber mit dem Ausschalten noch warten bis das Auswerfen komplett abgeschlossen ist und das Icon auch wirklich verschwunden ist.
 
guck doch mit diskutil list statt mount nach, ob es noch da ist …

sonst bleibt ja noch einige minuten zu warten bevor der strom ausgeschaltet werden kann …
 
  • Gefällt mir
Reaktionen: roedert
...nicht die Lösung, aber ein Tipp in die richtige Richtung ;)
Mit "diskutil list" sehe ich alle angeschlossenen Platten - unabhängig ob gemounted oder nicht. Einen mount-Status sieht man da nicht.
Aber mit "diskutil info /Volumes/xyz" komme ich evtl. weiter.

Klar kann man auch eine feste Zeit warten, allerdings kommt es ja ab und an mal vor dass das Auswerfen eines Volumes abgebrochen wird weil es wohl gerade verwendet wird (evtl Spotlight?) Und dann würde ich es mit einer festen Wartezeit trotzdem "hart" abschalten obwohl es noch gemounted ist.
 
Ich richte mich immer danach, wann das Icon aus dem Finder verschwunden ist. Wo ist das Problem?
 
Wo ist das Problem?
Dass ein Script das den Strom ausstellt nicht einfach "sehen" kann, wann das icon verschwunden ist.
(Ich hab es aber auch erst überlesen - dachte der Strom wird von hand abgestellt)

Ich würde eine feste zeit warten und dann einfach nochmal prüfen, ob die platte wirklich ausgeworfen wurde.
Wenn das auswerfen fehlschlägt sollte sie sich ja wieder am System "melden"
 
Evtl. könntest du die Disk mit diskutil auswerfen anstatt mit CCC, vielleicht wartet das Kommando, bis das Auswerfen erfolgt ist (bin aber nicht sicher, müsstest du ausprobieren).
 
Ich würde auch versuchen dass auswerfen über das Betriebssystem zu initiieren.
Dann sollte es doch eine Rückmeldung an das System (Exit-Code) geben, ob es erfolgreich war.
Das könntest du dann auswerten.
 
  • Gefällt mir
Reaktionen: roedert und dg2rbf
Da müsste sich doch was machen lassen per Bilderkennungssoftware :)
Evtl. könnte man auch noch einen Deep Learning Algorithmus programmieren, der erkennt, wenn die externe Festplatte keine Geräusche mehr von sich gibt ;)
 
@roedert
diskutil info + Volumename funktioniert nur, solange das Volume gemountet ist. Danach gibts einen Fehler (weil "offline"). Am besten du benutzt den disk identifier.
BTW wie macht sich denn diese programmierbare Steckdosenleiste bei dir? Die Rezensionen sind ja gemischt.
 
diskutil info + Volumename funktioniert nur, solange das Volume gemountet ist.
Stimmt, bin dann zu "diskutil info -all | grep -A1 <VolumeName>" gewechselt. Musste über Volumename gehen, weil mir nur der im Script als Variable zur Verfügung steht.
Das liefert schön Mounted yes oder no. Was es liefert wenn der unmount angestossen, aber noch nicht abgeschlossen ist, hatte ich aber auch nicht getestet.

Habe nun ProjectBuilder's Tipp umgesetzt und lasse das Script selbst statt CCC den Unmount machen. Das sieht ganz gut aus.

BTW wie macht sich denn diese programmierbare Steckdosenleiste bei dir? Die Rezensionen sind ja gemischt.
Die Teile tun was sie sollen - habe diese schon lange im Einsatz. Die beigelegte Software selbst nutze ich eh nicht. Die einzelnen Steckdosen sind um 90 Grad gedreht angeordnet und haben genügend Platz dass die Steckernetzteile nebeneinander reinpassen ... bei einer Mehrfachsteckdose ja auch nicht selbstverständlich. Die Steckernetzteil kommen übrigens bei mir immer mit einem Pinfix-Adapter in die Steckdosen ... ist ein guter Tipp für alle und sollte eigentlich bei den Netzteilen Pflicht sein ... endlich straffer Sitz und nix wackelt!

https://www.amazon.de/dp/B003AGPPYM
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: tocotronaut und TGY
Du kannst das mit einem Applescript checken.

Code:
set diLi to list disks
if "nameOfTheDisk" is not in diLi then beep
 
*gelöscht*
 
Zuletzt bearbeitet:
Hättest du denn Eingangspost gelesen, wüsstest du worum es geht ;)
Mit deinem mount wäre ich ja wieder genau am Anfang!

Bereits da habe ich festgestellt, dass mount nichts bringt, da das Laufwerk im mount-Befehl bereits verschwunden ist obwohl der Auswurfvorgang noch nicht komplett beendet ist.

Ob die Mount-Info in diskutil hilfreicher ist, habe ich nicht weiter verfolgt, da ich den unmount jetzt selbst im Script mache statt CCC dies zu überlassen.
 
Na ja, eben. mount/umount macht das ja schon richtig. Bei meinen dm-crypt/btrfs auf dem Linux SelbstbauNAS dauern die Befehle abhängig vom Cache und Füllegrad schon einige Sekunden bis der Prompt sich zurückmeldet.
Scheint ja dann eher die CCC Implementierung zu sein die das async macht (vielleicht wegen der GUI wie du schon beschrieben hast).
 
  • Gefällt mir
Reaktionen: mausfang
Zurück
Oben Unten