Czasami wolumin odmawia wysunięcia, ponieważ używa go jakiś program.
Niestety Finder nie podaje tożsamości ani nie rozwiązuje problemu.
Jak więc rozwiązać ten problem w czysty sposób, bez użycia terminala?
Korzystając z terminala, mogę znaleźć sposób na jego wysunięcie, ale nie jest to niezawodne.
sudo lsof | grep volumeName
z pewnością daje pewne informacje, ale nie mam ochoty zabijać przypadkowych procesów w celu odmontowania woluminu. Ponadto nie wszyscy chcą uruchamiać polecenia w terminalu.
Nie chcę też wymuszać wysuwania głośności. Myślę, że nie powinniśmy zmuszać do wyrzucania, gdy początkowo nie uruchomiliśmy programu blokującego wolumin.
Często zaangażowanymi procesami są: mds
i notifyd
.
Zabijanie mds
nie gwarantuje, że wyrzucenie objętości będzie możliwe. mds
proces zostaje odrodzony po zabiciu i kontynuuje zapobieganie wysunięciu dysku.
Zauważyłem również, że mds
można uruchamiać i używać plików, i nadal nie zapobiegam wysunięciu woluminu, więc nawet nie jestem pewien, że to mds
wina.
źródło
lsof
a następnie zabijanie kłopotliwych procesów jest w rzeczywistości kanonicznym sposobem rozwiązania tego problemu (i wszystkie narzędzia, które pozwalają ci wymusić wysunięcie dysku, również to robią), więc nie jestem pewien, jakiego rodzaju problemem jesteś próbuję rozwiązać tutaj. Czy możesz spróbować sformułować swoje pytanie bardziej szczegółowo?Odpowiedzi:
Znalazłem to rozwiązanie, które już dzisiaj działa niezawodnie kilka razy.
Proces, który w moim przypadku był odpowiedzialny za niepowodzenie wyrzucenia, był:
SystemUIS
(jak widać wtop
terminalu), co jest w rzeczywistościSystemUIServer
.Oto jak zabić go bez terminala: uruchom Monitor aktywności, znajdź
SystemUIServer
(wpisz interfejs w prawym górnym polu wyszukiwania) i zatrzymaj go lewym górnym przyciskiem (przycisk zatrzymania).źródło