Instalator zawiesza się na „czekaniu na zakończenie innych instalacji”, mimo że nie trwają żadne inne instalacje


38

Ostatniej nocy przed pójściem spać rozpocząłem instalację podglądu programisty Xcode 4. Kiedy się obudziłem, pojawiła się informacja, że ​​najpierw zamknij Xcode (doh!). Zrobiłem to, ale jakikolwiek skrypt, który wyświetlił komunikat, wydawał się zawiesić, ponieważ komunikat (nie dający się skasować) nie zniknie, a instalator nie będzie postępował.

Po wymuszonym zamknięciu aplikacji instalatora powyższy komunikat nadal był wyświetlany, więc ponownie uruchomiłem komputer MacBook Pro, a następnie ponowiłem próbę instalacji. Tym razem nawet się nie uruchomi, zamiast tego pokaże jeden z pasków aktywności w paski cukierków i komunikat:

Oczekiwanie na zakończenie innych instalacji

W tym momencie jestem zakłopotany. Żadne inne instalacje nie są w toku, więc musi być trochę artefaktu z przerwanej instalacji, która zabrudza prace. Ale co?


Może zabrzmi to trochę szalenie, ale w przeszłości stwierdziłem, że zamknięcie symulatora iPhone'a może odblokować te instalacje. Podejrzewam, że istnieje jakaś blokada, która pozwala tylko jednemu instalatorowi na raz, a symulator iPhone'a blokuje tę blokadę, aby mógł instalować aplikacje we własnej przestrzeni. Pamiętaj, że symulator iPhone'a po prostu uruchamia zwykłe aplikacje Intel, ale z innym ABI i jest zamknięty w chrootowanym środowisku podobnym do iOS, więc myślę, że współdzieli blokadę instalacji z systemem operacyjnym
Shayne

Odpowiedzi:


41
  1. sudo rm /private/var/db/mds/system/mds.install.lock
  2. restart

Możliwe, że poprzednia instalacja zawiesiła się, a zamek nigdy nie został wyczyszczony.


3
to dziwne, ile razy muszę tu odnosić się do mojej odpowiedzi ... to taka tępa ścieżka.
bluesmoon

3
Rzeczywiście tępy. Pracował dla mnie bez konieczności ponownego uruchamiania - wielkie dzięki.
funroll

1
Plik został nazwany po prostu mds.lockdla mnie, ale poza tym działało to bez ponownego uruchamiania, dzięki!
mVChr

7
Miałem zarówno mds.lockjak i mds.install.loc, które usunąłem, ale dodatkowo rozwiązanie @ tantrix ( sudo killall -1 installd) było potrzebne, aby uniknąć ponownego uruchomienia.
Erik Kaplun,

Uwaga: pracował dla mnie bez ponownego uruchomienia
Daniel

44

Kiedy nastąpi instalacja, installduruchamia się demon . Zabicie resztek installdpowinno pozwolić na kolejną instalację (i zabije wszystkie nowe, które czekają na zakończenie nieistniejącej). Więc,

sudo killall -1 installd

Fajnym aspektem tego jest to, że nie musisz restartować.


1
Dzięki. W przygotowaniu były dwie instalacje. Oba zakończyły się zaraz po tym poleceniu
Sayka

Dzięki, to powinna być właściwa odpowiedź
Arthur Guiot

2

Miałem ten sam problem bez wyraźnego powodu i znalazłem kilka rozwiązań sugerujących usunięcie niektórych plików - ale nic nie pomogło (przynajmniej nie wystarczyło). Ostatecznie wymusiło to zamknięcie instalatora za pomocą monitora aktywności, a następnie zrestartowanie komputera Mac i po ponownym uruchomieniu instalacja zakończyła się pomyślnie.


0

Po prostu sprawdź, czy żadne aplikacje nie pobierają aplikacji z App Store, ponieważ pobierałem iMovie w tle i nie zauważyłem tego później. Następnie właśnie anulowałem instalację iMovie, a drugą instalację pobrałem w ciągu kilku sekund.


-1

Czy na komputerze jest poprzednia instalacja Xcode? Jeśli tak, może powinieneś najpierw spróbować go odinstalować. Powodzenia..


6
Zła rada - Apple nawet wyraźnie zezwala na istnienie wielu instalacji Xcode. Widzę, że twoja odpowiedź była pierwsza, więc zgadywałeś, a ja tylko mówię: odinstalowanie innego oprogramowania w OSX zwykle nie jest rozwiązaniem - jest to sprzeczne z Windows, gdzie była to raczej reguła.
SuperTempel,

-1

Kiedy próbuję: sudo killall -1 installd Potrzebuję hasła, aby kontynuować. Również monitor aktywności może wyłączyć wszystkie inne instalatory działające w taki sposób, jak dla mnie działało ...

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.