Gdy Twój Mac działa bardzo wolno i nie ma żadnej oczywistej przyczyny, problem może być spowodowany procesami mdworker i mds w systemie OS X. Oto rozwiązanie, którego potrzebujesz, aby odzyskać szybkość swojego Maca.
Jest to działający przykład tego, co może pójść nie tak z Twoim Maciem i jak rozwiązać problem. Godzinę temu mój Mac przestał działać, ale teraz wszystko wróciło do normy. Chcesz wiedzieć, jak to zrobiłem? Czytaj dalej. (Linki partnerskie w tym artykule.)
Problem polegał na tym, że Mac działał powoli. Nie było źle, ale trochę denerwowało mnie oglądanie wirującej piłki plażowej w miejscu, w którym powinna znajdować się mysz.
A potem prawie całkowicie się zatrzymał. Mac ledwo nadawał się do użytku, a przełączanie z jednego okna do drugiego trwało 30 sekund. Kliknięcie menu powodowało, że pojawiało się ono dopiero po 20 sekundach. Kliknij przycisk i nic się nie stanie przez 20 lub 30 sekund. To było jak pływanie przez melasę.
To było prawie, ale nie całkiem niemożliwe, aby korzystać z komputera Mac. Po prostu trwało to wieczność, aby zrobić cokolwiek, bez względu na to, jak proste. W takiej sytuacji należy uruchomić Monitor Aktywności w folderze Applications/Utilities.
Porzucenie kilku aplikacji, zamknięcie kilku okien i otwarcie Monitora Aktywności zajęło trochę czasu, ponieważ Mac prawie przestał odpowiadać, ale w końcu się otworzył.
Problemy z mdworkerem i procesem mds
Problem można było zaobserwować w zakładce Memory, gdzie mdworker zużywał 2,23 GB pamięci, 1.72 GB pliku swap, 2,33 GB pamięci skompresowanej, a wykres ciśnienia pamięci był całkowicie czerwony.
Czerwony wykres ciśnienia pamięci oznacza, że nie ma już pamięci, która mogłaby zostać wykorzystana do jakichkolwiek działań, a komputer Mac jest bardzo zajęty wymienianiem pamięci na dysku, kompresowaniem jej i żonglowaniem nią.
Proces mdworker jest wykorzystywany przez Spotlight, a _spotlight można zobaczyć w kolumnie User w Monitorze Aktywności. Oprócz 2,23 GB na górze, dalej w dół znajdowało się jeszcze kilka procesów mdworker zużywających 37 – 45 MB. Ponadto istnieją procesy mds, które również są powiązane z mdworker i one również zużywały pamięć.
To wszystko było zdecydowanie za dużo jak na 4 GB MacBooka Pro.
Problem mógł się nasilić po podłączeniu dwóch dysków USB i pamięci flash USB. Spotlight po prostu oszalał, próbując wszystko zaindeksować i Mac się zatrzymał.
Powiązane: Best tips and tricks for Spotlight searches in OS X
Stop Spotlight
Rozwiązaniem, choć nie idealnym, jest wyłączenie Spotlight, ponieważ Spotlight uruchamia proces mdworker w celu indeksowania zawartości dysków.
Przejdź do Preferencji systemowych i otwórz Spotlight. Wybierz zakładkę Prywatność. Kliknij przycisk plusa na dole i dodaj każdy z dysków i partycji.
To mówi Spotlight nie indeksować żadnego z dysków lub partycji. Powoduje to, że mdworker przestaje wykonywać swoje zadania i odrzuca indeksowanie, które miało miejsce oraz indeks, który został już utworzony.
Sprawdź Monitor Aktywności
Teraz mdworker nie używa już ogromnej ilości pamięci, której wymagał wcześniej. Jest jeszcze proces mds, ale to już tylko 61,5 MB. Wykres ciśnienia pamięci zmienił kolor na zielony, wskazując, że nie ma już żadnych problemów z pamięcią, plik wymiany i wykorzystanie pamięci skompresowanej jest ułamkiem tego, co było.
Dodanie wszystkich dysków do zakładki Prywatność nie zatrzymuje całkowicie Spotlight, ponieważ istnieje wiele różnych komponentów, w tym wyszukiwania internetowe, definicje słowników i tak dalej. To, czego nie zobaczysz, to żadne pliki ani aplikacje w wynikach wyszukiwania. Gdy indeksowanie Spotlight jest zatrzymane, nie można wyszukiwać plików. Otwórz Findera i jeśli jest on ustawiony na domyślne pokazywanie wszystkich plików, będzie on pusty. Wygląda na to, że wyniki pochodzą ze Spotlighta, który jest wyłączony.
Gdy indeks plików Spotlighta już nie istnieje, może się okazać, że usunięcie dysków, a przynajmniej wewnętrznego dysku startowego, z zakładki Prywatność w Preferencjach systemowych Spotlighta spowoduje, że mdworker znów będzie działał normalnie.
Spotlight ponownie zindeksuje zawartość dysku i odbuduje zupełnie nowy indeks. Wpłynie to nieco na wydajność Maca, ale nigdy nie powinno być tak źle, aby nie można było z niego korzystać, jak to miało miejsce w przypadku mojego MacBooka. Po zakończeniu indeksowania dysku przez Spotlight, mdworker ucichnie i wyszukiwanie w Spotlight znów będzie działać.
Alternatywnie można pozostawić Spotlight wyłączony ze wszystkimi dyskami na karcie Prywatność i użyć innego narzędzia wyszukiwania.