Jak naprawić wolne Spotlight i Time Machine po aktualizacji do 10.7.5?

21

Od czasu aktualizacji do 10.7.5 zarówno Spotlight, jak i Wehikuł czasu są bardzo wolne.

  • Aby zindeksować normalny dysk systemowy, Spotlight oblicza, że ​​potrzebuje kilku dni .
  • W rezultacie Time Machine może zająć do godziny lub dłużej tworzenie przyrostowej kopii zapasowej ~ 100 Mib.

Jakie jest rozwiązanie dla tych powolnych kopii zapasowych Time Machine i indeksowania Spotlight?

bmike
źródło
Mogę potwierdzić oba spowolnienie od 10.7.5. Tam, gdzie naprawa spowolnienia wehikułu czasu jest najpilniejsza. Indeksowanie Spotlight zakończyło się w ciągu kilku dni, ale Time Machine działa przez kilka dni i ma jedynie 11,59 GB z 53,19 GB.
Pro Backup
Ale nawet indeks Spotlight, który zajmuje dni, jest niedopuszczalny.
Czy Spotlight kończy tworzenie indeksu, czy pokazuje tylko pozostały czas jako kilka dni?
Lri
@LauriRanta Nie czekałem :)
1
Rozwiązaniem, które według mnie zadziałało, było usunięcie / var / folderów, a następnie ponowne uruchomienie. Czas indeksu reflektorów skrócił się z 3 dni do 51 minut. Podobnie Timemachine, na nowo zainstalowanym / przywróconym Lwie, skrócił się z 30 dni do około 11 godzin.
Grant Sayer

Odpowiedzi:

5

OS X Lion 10.7.5 miejski Aktualizacja wydany 04 października 2012 obejmuje:

Rozwiązuje problem, który może powodować, że tworzenie kopii zapasowych Time Machine zajmuje bardzo dużo czasu

i po przetestowaniu wydaje się, że całkowicie rozwiązało to problem.

Zauważ, że dla mnie pierwsza kopia zapasowa po zainstalowaniu tej aktualizacji wciąż trwała nieoczekiwanie i zawierała wiele com.apple.backupd[423]: Waiting for index to be ready (100)wiadomości, więc być może Spotlight jeszcze nie zindeksował dysku poprawnie. Kilka godzin później małe kopie zapasowe są wykonywane w zwykłym szybkim tempie i wszystko jest w porządku.

blahdiblah
źródło
1
FYI. To mogło rozwiązać problem z 10.7.5, ale nie z 10.8.2.
jschmidt
@jschmidt Czy próbowałeś suplementu 10.8.2? Dodatkowa aktualizacja 10.7.5 obejmowała zmiany w lsboxd, xpchelper i kilka rzeczy audio. Wprowadzono także zmiany w pozwoleniach Sandpox na xpchelpera ocspd(nie wprowadzono żadnych zmian w mdworker). Jak /System/Library/Sandbox/Profiles/com.apple.xpchelper.sbwygląda post uzupełnienie?
Old Pro
Tak. Próbowałem dodatkowej aktualizacji 10.8.2, ale to nie pomogło. Jedyne, co zadziałało dla mnie, to całkowite wyczyszczenie systemu i ponowna instalacja systemu operacyjnego. Ręcznie skopiowałem moje dane z innej kopii zapasowej, ale nie przywróciłem żadnych aplikacji ani ustawień.
jschmidt
Minęło dużo czasu, odkąd zaktualizowałem, ale wciąż mam ten problem od czasu do czasu. jakieś pomysły?
DA Vincent
10

W tym temacie zamieściłem to obejście . Oto on (to nie jest rozwiązanie, tylko tymczasowe obejście pozwalające mojej kopii zapasowej i Spotlight działać do czasu wydania poprawki).

Za pomocą terminala:

  1. Wyłączyłem indeksowanie Spotlight:

    sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
    
  2. Usunąłem indeks Spotlight na wszystkich moich dyskach (w tym dyskach zapasowych):

    sudo rm -rf /.Spotlight-V100/Store-V1 /.Spotlight-V100/Store-V2  /.Spotlight-V100/VolumeConfiguration.plist
    
    sudo rm -rf /TimeMachineDrive/.Spotlight-V100/Store-V1 /TimeMachineDrive/.Spotlight-V100/Store-V2  /TimeMachineDrive/.Spotlight-V100/VolumeConfiguration.plist 
    

( rm -rf /.Spotlight-V100/*nie działało dla mnie.) (Można to również zrobić, wykluczając cały dysk za pomocą ustawienia prywatności Spotlight, a następnie włączając go ponownie).

  1. Usunąłem /var/folderstreść (zobacz ten temat, aby dowiedzieć się dlaczego ):

    sudo rm -rf /var/folders/*
    
  2. Usunąłem .inProgresspliki z moich Backups.backupdbpodfolderów (włóż do kosza, a następnie opróżnij kosz to jedyny sposób, aby to zrobić).

Może być konieczne sformatowanie dysku z kopią zapasową zamiast usuwania tylko .inProgressplików.

  1. Uruchomiłem ponownie, a następnie ponownie uruchomiłem Spotlight:

    sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
    
    sudo mdutil -i on -E /
    
  2. Czekałem, aż Spotlight zakończy proces indeksowania

  3. Uruchomiłem nową kopię zapasową za pomocą TimeMachine

  4. Otworzyłem raport o błędach dla Apple o tytule: „TimeMachine zawiesza się, gdy Spotlight jest używany w systemie Mac OS X 10.7”, modląc się, aby wiele innych osób zrobiło to samo, aby ten błąd był priorytetem.

Niektóre kroki mogą być bezużyteczne, ale wszystko, czego się nauczyłem, wziąłem, czytając inny temat dotyczący wolnej TM i Spotlight.

lauhub
źródło
Dziękuję Ci. sudo rm -rf /var/folders/*zrobiłem lewę w moim przypadku
maggix
Nie usuwaj zawartości /var/foldersEl Capitan, całkowicie przepuści on system: pasek postępu zatrzymałby się podczas logowania, musiałem ponownie zainstalować kopię zapasową TM. Dla przypomnienia , TM było niewiarygodnie wolne na moim komputerze z powodu MenuMeters .
Frank Pavageau,
7

Sprawdź plik dziennika konsoli i poszukaj takich linii (rzeczywiste linie dziennika będą miały identyfikatory procesu i daty):

sandboxd: mdworker deny mach-lookup com.apple.ls.boxd
mdworker: Unable to talk to lsboxd

Jeśli to widzisz, prawdopodobnie jest to przyczyną problemu. Coś, co Appple zrobił z tą najnowszą wersją (dotyczy również Mountain Lion 10.8.2).

Nie wiem, co tak naprawdę się dzieje, poza powiedzeniem mdworker(które skanuje i indeksuje pliki w poszukiwaniu Spotlight) wywołań, LSCopyLibraryItemURLs()które ostatecznie wysyłają wiadomość lsboxd. Zasady Sandbox na to nie pozwalają, więc pracownik zostaje zabity.

Może więc plik zasad jest nieprawidłowy, a może mdworkernie powinien wykonywać tego połączenia. Nie wiem Jednak naprawienie pliku zasad jest stosunkowo łatwe. POTENCJALNIE NIEBEZPIECZNE , ale łatwe.

Edytuj te pliki jako root:

/usr/share/sandbox/mdworker.sb
/usr/share/sandbox/mdworker-bundle.sb

W plikach znajdziesz linię:

(allow mach-lookup (global-name "com.apple.ocspd"))

Tuż poniżej dodaj linię:

(allow mach-lookup (global-name "com.apple.ls.boxd"))

To jest to!

Jeśli chcesz dodatkowego komfortu, może uruchom się ponownie. Może skasuj swój wskaźnik reflektorów i zacznij od nowa:

sudo mdutil -E /

W rzeczywistości nadal widzę mdworker: Unable to talk to lsboxdw moich plikach dziennika, ale przynajmniej teraz indeksowanie zakończy się, a Time Machine ponownie szybko się uruchomi.

Old Pro
źródło
Istnieją trzy pliki: mdworker-lsb.sb, mdworker-scan.sb, i mdworker.sb. Wszystkie zawierają tylko linię, (allow mach-lookup)ale nie (allow mach-lookup (global-name "com.apple.ocspd")).
@OldPro Próbowałem postępować zgodnie z twoimi instrukcjami i jestem w takiej samej sytuacji jak Tichodroma. Więc teraz mdworker.sbmam (allow mach-lookup) (allow mach-lookup (global-name "com.apple.ls.boxd"))i po dodaniu tej linii ponownie uruchomiłem. Jednak wehikuł czasu wciąż działa powoli. Czy możesz mi pomóc
rabbid
Potwierdziłem, że mam te wiadomości w dzienniku konsoli. Postępowałem również zgodnie z instrukcjami. Bez zmian dla mnie. Usunąłem cały pakiet TM dla mojego komputera i rozpocząłem nową kopię zapasową. Zrobił to około 200 GB dzięki kopii zapasowej 600 GB i zatrzymuje się. Używam TM na Macu Mini Server z Drobo podłączonym przez FW800. Moje urządzenie źródłowe to MacBook Pro Retina z systemem ML 10.8.2. Uruchomiłem ponownie serwer i MBP i ponownie spróbowałem kontynuować tworzenie kopii zapasowej. Tym razem udało mu się uzyskać tylko około 100 GB więcej, a potem przestaje. Jeszcze jedna próba zrobiła tylko 3 GB. Coś to powstrzymuje, ale nie wiem co.
jschmidt
1
@Tichodroma Przykro mi, że źle odczytałem twój komentarz. Jeśli mdworker.sbjuż (allow mach-lookup)to zrobiłeś (1), nigdy nie powinieneś widzieć sandboxd: mdworker deny mach-lookup com.apple.ls.boxddzienników i (2) edycja pliku nie pomoże. To samo dotyczy ciebie @ user15380
Old Pro
W porządku. Znalazłem inną podobieństwo (pozornie) do awarii tworzenia kopii zapasowych. Nie mam już w konsoli konsoli odmawiania wyszukiwania maszynowego com.apple.ls.boxd (chociaż nadal pojawia się komunikat „mdworker: Nie można rozmawiać z lxboxd”). Widzę jednak kilka komunikatów „sandboxd [1289]: ([1288]) mdworker32 (1288) odmawiających szukania mach com.apple.PowerManagement.control ...”. Czy muszę dodać kolejną linię dla com.apple.PowerManagement.control?
jschmidt
6

Możesz całkowicie naprawić wszystkie błędy piaskownicy związane z mdworker w Konsoli (w tym cannot talk to lsboxd), edytując system.sbprofil zamiast tych mdworker. Plik system.sb jest używany przez wszystkie procesy systemowe Apple, które działają pod piaskownicą, w tym mdworker. Jeśli zmodyfikujesz ten plik (który znajduje się w /System/Library/Sandbox/Profiles), aby uwzględnić:

(allow mach-lookup (global-name "com.apple.ls.boxd"))

(allow mach-lookup (local-name "com.apple.ls.boxd"))

To zatrzyma wszystkie problemy związane z mdworker związane z lsbox.

foboks
źródło
1
Ale komentarz w górnej części pliku system.sb mówi: „Zawartość tego pliku jest również generowana automatycznie i nie można go edytować przez użytkownika; można go w dowolnym momencie zastąpić”.
Jeff
5

Jeśli Spotlight nigdy nie zakończy tworzenia indeksu, może to być spowodowane tym, że indeksowanie zawsze zatrzymuje się na niektórych plikach. Kilka lat temu wykonałem czystą instalację z tego powodu, ale wróciła po przywróceniu moich starych plików. Skończyłem zawężanie plików, które to spowodowało, po prostu dodając foldery do karty prywatności w Preferencjach systemowych.

Ktoś z Super User uruchomił opensnoop, aby dowiedzieć się, na jakich plikach zatrzymał się mdworker:

sudo opensnoop -n mdworker

Z sugerowanej edycji przez użytkownika 37651:

Uruchomiłem powyższe polecenie opensnoop, które pokazało problem z plikami w ~ / Library / Developer, które zostały tam umieszczone po poprzednim przywróceniu Time Machine. (Obecnie nie mam zainstalowanego XCode.) Usunąłem folder, a indeksowanie Spotlight zakończyło się w zaledwie 30 minut. Wydaje się, że teraz działa kopia zapasowa My Time Machine.

Lri
źródło
1
Może spróbuję później. Dziwne jest to, że Spotlight działał dobrze w 10.7.4 i zwolnił dopiero po aktualizacji do 10.7.5. Pliki, które musi indeksować Spotlight, nie uległy zmianie.
Wypróbowałem twoje podejście, dodając wszystko na dysku systemowym do listy prywatności Spotlight. Ale nawet wtedy Spotlight zajęło tak dużo czasu, aby obliczyć, ile czasu zajmie indeksowanie plików (co?), Że przerwałam ten proces. Apple, gdzie jest poprawka ?!
1

Można usunąć indeks Spotlight, a następnie zmusić system Mac OS X do utworzenia nowego indeksu od zera. Zazwyczaj warto spróbować w sytuacji takiej jak Twoja.

Obawiam się, że nie znam poleceń Terminalu, aby to zrobić. Kiedy muszę to zrobić, korzystam z komercyjnego programu MacPilot od Koingo Software , który kosztuje 20 USD. Mają w pełni funkcjonalną wersję próbną, z której można korzystać przez 15 dni. Jeśli uznasz to za przydatne, możesz zdecydować się za to zapłacić.

Sądzę, że istnieją również inne narzędzia do robienia tego.

Oczywiście po usunięciu istniejącego indeksu Spotlight musisz poczekać, aż Spotlight utworzy nowy indeks. Powinieneś pozwolić, aby Twój Mac działał nieprzerwanie tak długo, jak potrzeba do całkowitego wygenerowania nowego.

wprowadź opis zdjęcia tutaj


źródło
Problem polega na tym, że Spotlight oblicza czas potrzebny na indeks do wielu dni . Tak więc używanie MacPilota lub mdutilnarzędzia wiersza poleceń pomaga złagodzić ból, ale nie rozwiązuje problemu.
Czy uważasz, że sam dysk może być uszkodzony lub fizycznie uszkodzony, i dlatego indeksowanie ma trwać tak długo? Być może powinieneś uruchomić diagnostykę uszkodzenia dysku. Klonuj system na zewnętrzny dysk kopii zapasowej, gdy jesteś na nim, aby być bezpiecznym.
Nie, dysk jest w porządku. Poza tym wielu innych użytkowników ma ten sam problem. Spójrz na dyskusje na stronie Apple. Mam zewnętrzną kopię zapasową za pomocą CCC :)
1

Cholerny! Mają też szybsze czasy uruchamiania

Piszę inną odpowiedź, aby podsumować konkretne kroki, które podjąłem (muszę wyjaśnić, że są one częścią tego, co JUŻ tutaj napisane, a nie mojego wkładu), ponieważ po wykonaniu tych kroków nie tylko Wehikuł Czasu działa szybciej, ale mój czas uruchamiania skrócił się z 1 minuty 10 sekund do 40 sekund! Mój czas uruchamiania zawsze mnie intrygował, ponieważ ciągle widziałem ludzi zgłaszających znacznie krótszy czas uruchamiania dla tych samych specyfikacji i, w jakiś sposób, te kroki skróciły o 30 sekund czas uruchamiania (Tak, testowałem więcej niż raz i tak, pamięci podręczne były w porządku, a ja zrobiłem wiele kroków przed wzięciem tych tutaj, w tym naprawę uprawnień, naprawę dysku, a nawet defragmentację za pomocą iDefrag2, wszystko bez rezultatów). Do tej pory: P

1

sudo mkdir ~/trash_backup
sudo mv /var/folders ~/trash_backup/ # backup just in case

2)

Następnie edytuj /usr/share/sandbox/mdworker.sbi /usr/share/sandbox/mdworker-bundle.sbdodawaj (allow mach-lookup (global-name "com.apple.ls.boxd"))poniżej linii (allow mach-lookup (global-name "com.apple.ocspd"))na obu plikach.

3)

Wreszcie,

sudo mdutil -i on -E /; sudo reboot

Dzięki lauhub i Old Pro. Czy ktoś może wyjaśnić skrócenie czasu rozruchu i co robi przegląd maszynowy na pudełku oraz możliwe problemy z bezpieczeństwem? Dziękuje wszystkim :)

FernandoH
źródło
1

Tak więc cierpiałem tak samo jak wszyscy inni, ale niestety nie przeczytałem wielu wątków we właściwej kolejności, więc zasadniczo straciłem moją oryginalną kopię zapasową TM, a następnie db db Spotlight nie udało się naprawić.

Wątek, którego nie mogę znaleźć ponownie (myślę, że chodziło raczej o wolny indeks Spotlight) miał post od faceta, który po prostu ponownie zainstalował 10.7.5 i wszystko wróciło do normy. Więc to zrobiłem i zadziałało.

Po zakończeniu ponownej instalacji zrezygnowałem z TM i zezwoliłem Spotlight na indeksowanie. Wyszedłem na przejażdżkę, a kiedy wróciłem, zrobiłem - 149 GB w mniej niż 90 minut. I to działa, szukałem rzeczy na moim HD.

Następnie włączyłem TM i zajęło mi to 2 godziny 9 minut.

Jeśli więc rozważasz poświęcenie czasu i obniżenie przepustowości do 10.7.4, możesz rozważyć ponowną instalację 10.7.5.

lan
źródło
1

Wszystko, miałem ten sam problem, TM oczekiwało dni, że nowa kopia zapasowa na nowym dysku zajmie kilka dni, a ukończenie około 200 MB zajęło godziny.

Wyłączyłem reflektor za pomocą polecenia wskazanego powyżej i - oto - 40 GB załadowano w ciągu 10 minut, a zaktualizowana TM działa tak płynnie, jak można by oczekiwać.

Jest to dość ważny błąd i rozczarowanie, że Apple wysyła „aktualizację”, która powoduje takie problemy.

Alex
źródło
0

Według https://discussions.apple.com/thread/4324046?start=60&tstart=0 wyłączenie Spotlight z $ sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plistpoprawą prędkości tworzenia kopii zapasowych wehikuł czasu.

Pro Backup
źródło
To może, ale nie musi działać. Ale ponieważ Time Machine polega na Spotlight, aby wiedzieć, które pliki należy wykonać kopię zapasową, nie jest to prawdziwe rozwiązanie. Poza tym Spotlight jest istotną częścią OS X.
1
Rzeczywiście jest to tylko obejście, a nie rozwiązanie. W moim przypadku nie przyspiesza to zbytnio.
Pro Backup
1
To mi nie zadziałało. W moim przypadku TM zawiesza się po pewnym czasie. Wyłączenie Spotlight wcale nie pomogło.
jschmidt
0

Proste zrestartowanie do SAFEMODE, a następnie ponowne uruchomienie do TRYBU NORMALNEGO wydaje mi się, że to dla mnie wystarczające. Poszedłem z 3 tygodni do 1 godziny na tworzenie kopii zapasowych.

użytkownik37373
źródło