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?

clozach
źródło
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.

bluesmoon
źródło
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ć.

tantrix
źródło
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.

patrickq
źródło
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.

Siano
źródło
-1

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

rabidmachine9
źródło
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 ...

Ian Phillips
źródło